Skip to content

Instantly share code, notes, and snippets.

@gnachman
Created June 9, 2020 05:50
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save gnachman/dfdbfafcd6e18396fdde36cccb1fe596 to your computer and use it in GitHub Desktop.
Save gnachman/dfdbfafcd6e18396fdde36cccb1fe596 to your computer and use it in GitHub Desktop.
_NXShowKeyAndMain
0x7fff35b16cf3 <+0>: pushq %rbp
0x7fff35b16cf4 <+1>: movq %rsp, %rbp
0x7fff35b16cf7 <+4>: pushq %r15
0x7fff35b16cf9 <+6>: pushq %r14
0x7fff35b16cfb <+8>: pushq %r13
0x7fff35b16cfd <+10>: pushq %r12
0x7fff35b16cff <+12>: pushq %rbx
0x7fff35b16d00 <+13>: pushq %rax
0x7fff35b16d01 <+14>: leaq 0x5a1c6c90(%rip), %r15 ; NSApp
r15 = NSApp
0x7fff35b16d08 <+21>: movq (%r15), %rdi
0x7fff35b16d0b <+24>: movq 0x5a155e56(%rip), %rsi ; "_mainWindow"
0x7fff35b16d12 <+31>: movq 0x59e51b1f(%rip), %rbx ; (void *)0x00007fff71453800: objc_msgSend
0x7fff35b16d19 <+38>: callq *%rbx
0x7fff35b16d1b <+40>: movq 0x59e51b26(%rip), %r12 ; (void *)0x00007fff714536d0: objc_retain
0x7fff35b16d22 <+47>: movq %rax, %rdi
0x7fff35b16d25 <+50>: callq *%r12
0x7fff35b16d28 <+53>: movq %rax, %r14
r14 = NSApp._mainWindow
0x7fff35b16d2b <+56>: movq (%r15), %rdi
0x7fff35b16d2e <+59>: movq 0x5a1531e3(%rip), %rsi ; "_keyWindow"
0x7fff35b16d35 <+66>: callq *%rbx
0x7fff35b16d37 <+68>: movq %rax, %rdi
0x7fff35b16d3a <+71>: callq *%r12
0x7fff35b16d3d <+74>: movq %rax, %r13
r13 = NSApp._keyWindow
0x7fff35b16d40 <+77>: movq (%r15), %rdi
0x7fff35b16d43 <+80>: movq 0x5a15672e(%rip), %rsi ; "_mouseActivationInProgress"
0x7fff35b16d4a <+87>: callq *%rbx
0x7fff35b16d4c <+89>: movl %eax, %r12d
r12d = NSApp._mouseActivationInProgress
0x7fff35b16d4f <+92>: movq (%r15), %rdi
0x7fff35b16d52 <+95>: movq 0x5a156147(%rip), %rsi ; "_setMouseActivationInProgress:"
0x7fff35b16d59 <+102>: movl $0x1, %edx
0x7fff35b16d5e <+107>: callq *%rbx
[NSApp _setMouseActivationinProgress:YES]
0x7fff35b16d60 <+109>: movq 0x5a189d31(%rip), %rdi ; (void *)0x00007fff8fcbda20: NSWindow
0x7fff35b16d67 <+116>: movq 0x5a17bea2(%rip), %rsi ; "_disableKeyStateChangeNotifications"
0x7fff35b16d6e <+123>: callq *%rbx
[NSWindow _disableKeyStateChangeNotifications]
0x7fff35b16d70 <+125>: movq 0x5a15bc99(%rip), %rsi ; "becomeMainWindow"
0x7fff35b16d77 <+132>: movq %r14, %rdi
0x7fff35b16d7a <+135>: callq 0x7fff35b16ee0 ; _NXSendWindowNotification
_NXSendWindowNotification(NSApp._mainWindow, "becomeMainWindow")
0x7fff35b16d7f <+140>: movq 0x5a1564ea(%rip), %rsi ; "becomeKeyWindow"
0x7fff35b16d86 <+147>: movq %r13, %rdi
0x7fff35b16d89 <+150>: callq 0x7fff35b16ee0 ; _NXSendWindowNotification
_NXSendWindowNotification(NSApp._keyWindow, "becomeKeyWindow")
0x7fff35b16d8e <+155>: movq 0x5a189d03(%rip), %rdi ; (void *)0x00007fff8fcbda20: NSWindow
0x7fff35b16d95 <+162>: movq 0x5a17be84(%rip), %rsi ; "_enableKeyStateChangeNotifications"
0x7fff35b16d9c <+169>: callq *%rbx
[NSWindow _enableKeyStateChangeNotifications]
0x7fff35b16d9e <+171>: movq (%r15), %rdi
0x7fff35b16da1 <+174>: movsbl %r12b, %edx
0x7fff35b16da5 <+178>: movq 0x5a1560f4(%rip), %rsi ; "_setMouseActivationInProgress:"
0x7fff35b16dac <+185>: callq *%rbx
[NSApp _setMouseActivationInProgress:r12d]
0x7fff35b16dae <+187>: movq 0x59e51a8b(%rip), %rbx ; (void *)0x00007fff71455660: objc_release
0x7fff35b16db5 <+194>: movq %r13, %rdi
0x7fff35b16db8 <+197>: callq *%rbx
0x7fff35b16dba <+199>: movq %r14, %rdi
0x7fff35b16dbd <+202>: movq %rbx, %rax
0x7fff35b16dc0 <+205>: addq $0x8, %rsp
0x7fff35b16dc4 <+209>: popq %rbx
0x7fff35b16dc5 <+210>: popq %r12
0x7fff35b16dc7 <+212>: popq %r13
0x7fff35b16dc9 <+214>: popq %r14
0x7fff35b16dcb <+216>: popq %r15
0x7fff35b16dcd <+218>: popq %rbp
0x7fff35b16dce <+219>: jmpq *%rax
0x7fff35b16dd0 <+221>: nop
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment