Function at 0x1007ebd0
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x100b5945
mov eax, dword fs:[0]
push eax
sub esp, 0x998
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x990], eax
push ebx
push esi
push edi
mov eax, dword [section..data]
xor eax, esp
push eax
lea eax, [esp + 0x9a8]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [esp + 0x1c], ebx
mov eax, dword [ebp + 8]
mov esi, dword [ebp + 0x10]
mov edi, dword [ebp + 0x14]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x20], esi
mov dword [esp + 0x34], edi
cmp eax, 0x410
jne 0x1007ece0
mov eax, dword [ebx + 0x3e18]
mov dword [esp + 0x98], eax
xor eax, eax
mov word [esp + 0x9c], ax
mov eax, dword [ebx + 0x3e04]
mov dword [esp + 0x94], 1
push dword [eax + 4]
call dword [sym.imp.USER32.dll_GetParent]
push 0x400
lea ecx, [esp + 0xa0]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
push dword [ebx + 0x422c]
lea eax, [esp + 0xa0]
push eax
push str.sync___MY_PROCESS_MSG_QUERY_SYNC_INFO__s_hwnd:_d
push 0x8bf
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
add esp, 0x14
mov dword [esp + 0x58], 0
xorps xmm0, xmm0
lea eax, [esp + 0x94]
movq qword [esp + 0x5c], xmm0
mov dword [esp + 0x60], eax
lea eax, [esp + 0x58]
push eax
push dword [ebx + 0x422c]
mov dword [esp + 0x64], 0x808
push 0x4a
push esi
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x1007f8b5
cmp eax, 0x4a
jne 0x1007fb3b
test edi, edi
je 0x1007f8b5
mov eax, dword [edi + 8]
mov dword [esp + 0x18], eax
mov eax, dword [eax]
cmp eax, 1
jne 0x1007ee42
lea eax, [ebx + 0x4240]
push eax
mov dword [esp + 0x5c], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
xor eax, eax
mov dword [esp + 0x4c], 7
mov dword [esp + 0x48], 0
mov word [esp + 0x38], ax
mov dword [esp + 0x9b0], eax
mov al, byte [ebx + 0x4225]
mov dword [esp + 0x50], esi
mov esi, dword [esp + 0x18]
mov dword [esp + 0x70], eax
mov byte [esp + 0x54], al
test al, al
jne 0x1007ed7f
mov ecx, dword [ebx + 0x4238]
mov eax, dword [ecx]
cmp eax, ecx
je 0x1007ed7f
mov ebx, dword [esp + 0x70]
mov edi, 1
mov edx, dword [eax + 8]
cmp edx, dword [esi + 4]
movzx ebx, bl
cmove ebx, edi
mov byte [esp + 0x54], bl
mov eax, dword [eax]
cmp eax, ecx
jne 0x1007ed61
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x34]
add esi, 8
cmp word [esi], 0
jne 0x1007ed8c
xor ecx, ecx
jmp 0x1007eda0
mov ecx, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x1007ed91
sub ecx, edx
sar ecx, 1
push ecx
push esi
lea ecx, [esp + 0x40]
call fcn.10005c80
mov eax, dword [esp + 0x18]
add ebx, 0x4230
add eax, 4
mov ecx, ebx
push eax
mov dword [esp + 0x74], eax
lea eax, [esp + 0x1c]
mov esi, dword [ebx]
push eax
call fcn.100257c0
cmp dword [eax], esi
mov esi, dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
jne 0x1007ee1f
mov edx, dword [esp + 0x70]
lea eax, [esp + 0x38]
push eax
lea ecx, [esp + 0x74]
call fcn.100846c0
add esp, 4
push eax
mov ecx, ebx
mov byte [esp + 0x9b4], 1
call fcn.10084f40
push eax
add eax, 0x10
push eax
push ecx
lea eax, [esp + 0x34]
mov ecx, ebx
push eax
call fcn.10084ff0
cmp dword [esp + 0x88], 8
jb 0x1007ee1f
push dword [esp + 0x74]
call esi
add esp, 4
push dword [esp + 0x58]
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [esp + 0x4c], 8
jb 0x1007f8b1
push dword [esp + 0x38]
call esi
add esp, 4
jmp 0x1007f8b1
cmp eax, 4
jne 0x1007f16b
push str.sync___eMsgMultiTouch
push 0x8e5
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
add esp, 0xc
mov dword [esp + 0x70], 0
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x9b0], 2
mov eax, dword [edi + 4]
mov esi, dword [edi + 8]
sub eax, 8
add esi, 8
test eax, 0xffffffe0
jbe 0x1007eebf
xor ebx, ebx
lea ebx, [ebx]
push esi
lea ecx, [esp + 0x74]
call fcn.100822a0
mov eax, dword [edi + 4]
inc ebx
sub eax, 8
add esi, 0x20
shr eax, 5
cmp ebx, eax
jb 0x1007eea0
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x28], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x30], 0
lea eax, [esp + 0x28]
mov byte [esp + 0x9b0], 3
mov ecx, dword [ebx + 0x3e04]
push eax
lea eax, [esp + 0x74]
add ecx, 0x18
push eax
call fcn.1001fd20
lea eax, [esp + 0x28]
push eax
lea ecx, [ebx + 0x10]
call fcn.10092fc0
mov eax, dword [esp + 0x2c]
cmp dword [esp + 0x28], eax
je 0x1007ef25
push 0
call dword [sym.imp.MSVCR120.dll__time64]
add esp, 4
mov dword [ebx + 0x4310], eax
mov dword [ebx + 0x4314], edx
mov eax, dword [ebx + 0x4354]
lea ecx, [ebx + 0x4354]
lea edx, [esp + 0x89c]
push edx
call dword [eax]
lea ecx, [esp + 0x8bc]
cmp dword [eax], 1
sete byte [esp + 0x27]
call fcn.10041b80
cmp dword [esp + 0x8b8], 8
jb 0x1007ef69
push dword [esp + 0x8a4]
call dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
add esp, 4
cmp byte [esp + 0x27], 0
je 0x1007efcd
mov dword [esp + 0x58], 0
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
lea eax, [esp + 0x58]
mov byte [esp + 0x9b0], 4
mov ecx, dword [ebx + 0x3e04]
push eax
lea eax, [esp + 0x2c]
add ecx, 0x18
push eax
call fcn.1001fc00
mov eax, dword [ebx + 0x4350]
lea ecx, [ebx + 0x4350]
lea edx, [esp + 0x58]
push edx
call dword [eax + 0x38]
lea ecx, [esp + 0x58]
mov byte [esp + 0x9b0], 3
call fcn.100116f0
mov esi, dword [esp + 0x20]
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esp + 0x5c]
mov dword [esp + 0x1c], esi
push ecx
lea ecx, [ebx + 0x433c]
mov dword [esp + 0x24], 0
call fcn.10031300
mov eax, dword [esp + 0x58]
cmp eax, dword [ebx + 0x433c]
jne 0x1007f127
xor eax, eax
push 0xfe
push eax
mov word [esp + 0x8a4], ax
lea eax, [esp + 0x8a6]
push eax
call sub.MSVCR120.dll_memset
add esp, 0xc
lea eax, [esp + 0x89c]
push 0x80
push eax
push esi
call dword [sym.imp.USER32.dll_GetClassNameW]
cmp word [esp + 0x89c], 0
je 0x1007f12c
push 7
lea eax, [esp + 0x8a0]
push str.leidian
push eax
call dword [sym.imp.MSVCR120.dll_wcsncmp]
add esp, 0xc
test eax, eax
lea eax, [esp + 0x89c]
jne 0x1007f0cd
push str._process_msg_wnd_class
push eax
call dword [sym.imp.MSVCR120.dll_wcsstr]
add esp, 8
test eax, eax
je 0x1007f088
mov dword [esp + 0x1c], 1
jmp 0x1007f10d
mov ecx, str.leidian_fb_msg_wnd_class_ui
lea eax, [esp + 0x89c]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x1007f0ba
test dx, dx
je 0x1007f0b6
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x1007f0ba
add eax, 4
add ecx, 4
test dx, dx
jne 0x1007f094
xor eax, eax
jmp 0x1007f0bf
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1007f10d
mov dword [esp + 0x1c], 2
jmp 0x1007f10d
mov ecx, str.wujie_fb_msg_wnd_class_ui
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x1007f0f8
test dx, dx
je 0x1007f0f4
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x1007f0f8
add eax, 4
add ecx, 4
test dx, dx
jne 0x1007f0d2
xor ecx, ecx
jmp 0x1007f0fd
sbb ecx, ecx
or ecx, 1
xor eax, eax
mov edx, 2
test ecx, ecx
cmove eax, edx
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x18]
push eax
lea ecx, [ebx + 0x433c]
call fcn.10050ef0
mov ecx, dword [esp + 0x1c]
mov dword [eax], ecx
mov eax, ecx
jmp 0x1007f12e
mov eax, dword [eax + 0x14]
jmp 0x1007f12e
xor eax, eax
mov ecx, dword [esp + 0x28]
cmp ecx, dword [esp + 0x2c]
je 0x1007f144
cmp eax, 2
sete al
mov byte [ebx + 0x3a35], al
mov ebx, dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete_void__]
test ecx, ecx
je 0x1007f154
push ecx
call ebx
add esp, 4
mov eax, dword [esp + 0x70]
test eax, eax
je 0x1007f8b5
push eax
call ebx
add esp, 4
jmp 0x1007f8b5
cmp eax, 0x75
jne 0x1007f1e2
push str.sync___eMsgMultiTouchTips
push 0x933
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
add esp, 0xc
xor eax, eax
mov word [esp + 0x94], ax
push 0x7fe
push eax
lea eax, [esp + 0x9e]
push eax
call sub.MSVCR120.dll_memset
mov eax, dword [edi + 8]
add esp, 0xc
add eax, 0xc
push 0x3ff
push eax
lea eax, [esp + 0x9c]
push eax
call dword [sym.imp.MSVCR120.dll_wcsncpy]
mov ecx, dword [ebx + 0x3e04]
lea eax, [esp + 0xa0]
add esp, 0xc
add ecx, 0xf4c
push eax
call fcn.1003e780
jmp 0x1007f8b5
cmp eax, 2
jne 0x1007f216
push str.sync___eMsgScancode
push 0x93b
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
mov ecx, dword [edi + 8]
add esp, 0xc
movzx eax, byte [ecx + 8]
push eax
push dword [ecx + 4]
lea ecx, [ebx + 0x10]
call fcn.10093b00
jmp 0x1007f8b5
cmp eax, 3
jne 0x1007f2cc
push str.sync___eMsgRawKey
push 0x941
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
mov eax, dword [edi + 8]
lea ecx, [ebx + 0x10]
add esp, 0xc
mov dword [esp + 0x58], eax
push dword [eax + 4]
call fcn.10093bb0
mov eax, dword [ebx + 0x4354]
lea ecx, [ebx + 0x4354]
lea edx, [esp + 0x89c]
push edx
call dword [eax]
lea ecx, [esp + 0x89c]
cmp dword [eax], 1
sete bl
call fcn.100440e0
test bl, bl
je 0x1007f8b5
mov edx, dword [esp + 0x58]
mov ecx, dword [esp + 0x1c]
add ecx, 0x4350
mov edx, dword [edx + 4]
mov eax, dword [ecx]
cmp edx, 0x7e
jne 0x1007f298
call dword [eax + 4]
jmp 0x1007f8b5
cmp edx, 0x9e
jne 0x1007f2a7
call dword [eax]
jmp 0x1007f8b5
cmp edx, 0x78
jne 0x1007f2b4
call dword [eax + 8]
jmp 0x1007f8b5
cmp edx, 0x7f
jne 0x1007f2c1
call dword [eax + 0xc]
jmp 0x1007f8b5
push 1
push edx
call dword [eax + 0x2c]
jmp 0x1007f8b5
cmp eax, 5
jne 0x1007f320
push str.sync___eMsgWheel
push 0x95f
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
mov esi, dword [edi + 8]
lea eax, [esp + 0x34]
mov ecx, dword [ebx + 0x3e04]
add esp, 0xc
add ecx, 0x18
movsd xmm3, qword [esi + 0x10]
movsd xmm2, qword [esi + 8]
push eax
call fcn.1001fe60
push dword [esi + 0x18]
lea ecx, [ebx + 0x10]
push dword [esp + 0x30]
push dword [esp + 0x30]
call fcn.10093800
jmp 0x1007f8b1
cmp eax, 6
jne 0x1007f3f5
push str.sync___eMsgImeString
push 0x967
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
mov ecx, dword [edi + 8]
sub esp, 0xc
mov eax, esp
mov dword [esp + 0x88], esp
mov dword [eax + 0x10], 0
sub esp, 0x18
mov dword [esp + 0x9e0], 5
lea eax, [ecx + 4]
mov ecx, esp
mov dword [esp + 0x88], eax
push eax
call fcn.10005760
push 2
lea ecx, [ebx + 0x3ac8]
mov dword [esp + 0x9e4], 0xffffffff
call fcn.10008570
mov eax, dword [ebx + 0x4354]
lea ecx, [ebx + 0x4354]
lea edx, [esp + 0x89c]
push edx
call dword [eax]
lea ecx, [esp + 0x89c]
cmp dword [eax], 1
sete bl
call fcn.100440e0
test bl, bl
je 0x1007f8b5
push dword [esp + 0x58]
lea ecx, [esp + 0x5c]
call fcn.10005760
mov dword [esp + 0x9b0], 6
lea edx, [esp + 0x58]
mov ecx, dword [esp + 0x1c]
add ecx, 0x4350
push edx
mov eax, dword [ecx]
call dword [eax + 0x44]
lea ecx, [esp + 0x58]
call fcn.10005870
jmp 0x1007f8b5
cmp eax, 0x74
jne 0x1007f4ca
push str.sync___eMsgImeComposing
push 0x971
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
mov ecx, dword [edi + 8]
sub esp, 0xc
mov eax, esp
mov dword [esp + 0x88], esp
mov dword [eax + 0x10], 0
sub esp, 0x18
mov dword [esp + 0x9e0], 7
lea eax, [ecx + 4]
mov ecx, esp
mov dword [esp + 0x88], eax
push eax
call fcn.10005760
push 1
lea ecx, [ebx + 0x3ac8]
mov dword [esp + 0x9e4], 0xffffffff
call fcn.10008570
mov eax, dword [ebx + 0x4354]
lea ecx, [ebx + 0x4354]
lea edx, [esp + 0x89c]
push edx
call dword [eax]
lea ecx, [esp + 0x89c]
cmp dword [eax], 1
sete bl
call fcn.100440e0
test bl, bl
je 0x1007f8b5
push dword [esp + 0x58]
lea ecx, [esp + 0x5c]
call fcn.10005760
mov dword [esp + 0x9b0], 8
lea edx, [esp + 0x58]
mov ecx, dword [esp + 0x1c]
add ecx, 0x4350
push edx
mov eax, dword [ecx]
call dword [eax + 0x40]
lea ecx, [esp + 0x58]
call fcn.10005870
jmp 0x1007f8b5
cmp eax, 0x76
jne 0x1007f52c
push str.sync___eMsgImeFinishComposing
push 0x97b
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
mov ecx, dword [edi + 8]
sub esp, 0xc
mov eax, esp
mov dword [esp + 0x70], esp
mov dword [eax + 0x10], 0
sub esp, 0x18
mov dword [esp + 0x9e0], 9
lea eax, [ecx + 4]
mov ecx, esp
push eax
call fcn.10005760
push 3
lea ecx, [ebx + 0x3ac8]
mov dword [esp + 0x9e4], 0xffffffff
call fcn.10008570
jmp 0x1007f8b5
cmp eax, 0x77
jne 0x1007f56b
push str.sync___eMsgImeComposingRegion
push 0x982
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
mov ecx, dword [edi + 8]
sub esp, 0xc
mov eax, esp
mov dword [eax + 0x10], 0
push dword [ecx + 8]
push dword [ecx + 4]
push ecx
lea ecx, [ebx + 0x3ac8]
call fcn.10008720
jmp 0x1007f8b5
cmp eax, 7
jne 0x1007f5cf
push str.sync___eMsgImeAction
push 0x989
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
mov esi, dword [edi + 8]
sub esp, 0xc
mov eax, esp
mov dword [esp + 0x70], esp
mov dword [eax + 0x10], 0
sub esp, 0x18
mov dword [esp + 0x9e0], 0xa
mov ecx, esp
push 0x100bd348
call fcn.10005760
push dword [esi + 4]
lea ecx, [ebx + 0x3ac8]
mov dword [esp + 0x9e4], 0xffffffff
call fcn.10008570
jmp 0x1007f8b1
cmp eax, 8
jne 0x1007f600
push str.sync___eMsgVolumeControl
push 0x98f
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
mov eax, dword [edi + 8]
lea ecx, [ebx + 0x10]
add esp, 0xc
movzx eax, byte [eax + 4]
push eax
call fcn.10093c60
jmp 0x1007f8b5
cmp eax, 9
jne 0x1007f660
push str.sync___eMsgImeClipboard
push 0x995
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
mov ecx, dword [edi + 8]
sub esp, 0xc
mov eax, esp
mov dword [esp + 0x70], esp
mov dword [eax + 0x10], 0
sub esp, 0x18
mov dword [esp + 0x9e0], 0xb
lea eax, [ecx + 4]
mov ecx, esp
push eax
call fcn.10005760
lea ecx, [ebx + 0x3ac8]
mov dword [esp + 0x9e0], 0xffffffff
call fcn.10008910
jmp 0x1007f8b5
cmp eax, 0xa
jne 0x1007f69b
push str.sync___eMsgGravity
push 0x99a
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
mov eax, dword [edi + 8]
lea ecx, [ebx + 0x10]
add esp, 0xc
movss xmm3, dword [eax + 0xc]
movss xmm2, dword [eax + 8]
movss xmm1, dword [eax + 4]
call fcn.100941d0
jmp 0x1007f8b5
cmp eax, 0x64
jne 0x1007f6f5
lea esi, [ebx + 0x4260]
push esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x58], eax
movzx eax, byte [0x100ef137]
push eax
lea eax, [esp + 0x5c]
push eax
push ecx
lea eax, [esp + 0x7c]
push eax
lea ecx, [ebx + 0x4258]
call fcn.100847d0
push esi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [edi + 8]
lea ecx, [ebx + 0x10]
mov esi, dword [esp + 0x20]
add eax, 4
push eax
push 0
push esi
call fcn.10095190
jmp 0x1007f8b5
cmp eax, 0x65
jne 0x1007f74f
lea esi, [ebx + 0x4260]
push esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x58], eax
movzx eax, byte [0x100ef137]
push eax
lea eax, [esp + 0x5c]
push eax
push ecx
lea eax, [esp + 0x7c]
push eax
lea ecx, [ebx + 0x4258]
call fcn.100847d0
push esi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [edi + 8]
lea ecx, [ebx + 0x10]
mov esi, dword [esp + 0x20]
add eax, 4
push eax
push 1
push esi
call fcn.10095190
jmp 0x1007f8b5
cmp eax, 0x67
jne 0x1007f792
lea esi, [ebx + 0x4260]
push esi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [esp + 0x20]
lea ecx, [ebx + 0x4258]
mov dword [esp + 0x58], eax
lea eax, [esp + 0x58]
push eax
call fcn.10082090
push esi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov esi, dword [esp + 0x20]
lea ecx, [ebx + 0x10]
push esi
call fcn.10095210
jmp 0x1007f8b5
cmp eax, 0x68
jne 0x1007f84c
lea edi, [ebx + 0x4280]
push edi
mov dword [esp + 0x20], edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea eax, [esp + 0x58]
mov dword [esp + 0x9b0], 0xc
push eax
lea eax, [esp + 0x74]
mov dword [esp + 0x5c], esi
add ebx, 0x4278
push eax
mov ecx, ebx
call fcn.10031300
mov esi, dword [esp + 0x70]
cmp esi, dword [ebx]
je 0x1007f7f0
push dword [esi + 0x14]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
lea eax, [esp + 0x5c]
mov ecx, ebx
push eax
call fcn.10025570
mov esi, dword [esp + 0x20]
lea eax, [esp + 0x18]
push eax
push esi
mov dword [esp + 0x20], 0
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
push dword [esp + 0x18]
mov dword [esp + 0x2c], esi
push 0
push 0x400
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [esp + 0x2c], eax
mov ecx, ebx
lea eax, [esp + 0x28]
push eax
call fcn.1006c660
push eax
add eax, 0x10
push eax
push ecx
lea eax, [esp + 0x34]
mov ecx, ebx
push eax
call fcn.10051190
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edi, dword [esp + 0x34]
jmp 0x1007f8b5
cmp eax, 0x69
jne 0x1007f8eb
lea edi, [ebx + 0x4280]
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea eax, [esp + 0x58]
mov dword [esp + 0x58], esi
push eax
lea eax, [esp + 0x74]
push eax
lea ecx, [ebx + 0x4278]
call fcn.10031300
mov esi, dword [esp + 0x70]
cmp esi, dword [ebx + 0x4278]
je 0x1007f8a6
mov eax, dword [esi + 0x14]
test eax, eax
je 0x1007f895
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
lea eax, [esp + 0x5c]
push eax
lea ecx, [ebx + 0x4278]
call fcn.10025570
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edi, dword [esp + 0x34]
mov esi, dword [esp + 0x20]
mov ebx, dword [esp + 0x14]
push edi
push esi
push dword [ebp + 0xc]
push ebx
call dword [sym.imp.USER32.dll_DefWindowProcW]
mov ecx, dword [esp + 0x9a8]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x990]
xor ecx, esp
call fcn.100ad688
mov esp, ebp
pop ebp
ret 0x10
cmp eax, 0x6d
jne 0x1007f8b5
push str.eMsgRemoteNotifyRegister
push 0x9dd
push str.vbox::VBoxClientImpl::_processMsgWndProc
call fcn.100989a0
add esp, 0xc
lea edi, [ebx + 0x42a0]
mov dword [esp + 0x28], edi
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea ecx, [esp + 0x58]
mov dword [esp + 0x9b0], 0xd
push ecx
lea ecx, [esp + 0x74]
mov dword [esp + 0x5c], esi
push ecx
lea ecx, [ebx + 0x4298]
call fcn.10031300
mov esi, dword [esp + 0x70]
lea eax, [ebx + 0x4298]
cmp esi, dword [eax]
je 0x1007f96b
mov ecx, dword [esi + 0x14]
test ecx, ecx
je 0x1007f95e
push ecx
call dword [sym.imp.KERNEL32.dll_CloseHandle]
lea eax, [ebx + 0x4298]
push esi
lea ecx, [esp + 0x5c]
push ecx
mov ecx, eax
call fcn.10025570
mov esi, dword [esp + 0x20]
lea eax, [esp + 0x1c]
push eax
push esi
mov dword [esp + 0x24], 0
call dword [sym.imp.USER32.dll_GetWindowThreadProcessId]
push dword [esp + 0x1c]
push 0
push 0x400
call dword [sym.imp.KERNEL32.dll_OpenProcess]
mov dword [esp + 0x5c], eax
lea ecx, [ebx + 0x4298]
lea eax, [esp + 0x58]
mov dword [esp + 0x58], esi
push eax
call fcn.1006c660
push eax
add eax, 0x10
push eax
push ecx
lea eax, [esp + 0x64]
push eax
lea ecx, [ebx + 0x4298]
call fcn.10051190
mov ecx, dword [ebx + 0x3e18]
mov dword [esp + 0x58], 0x78
call fcn.1003bae0
mov dword [esp + 0x5c], eax
mov ecx, ebx
mov eax, dword [ebx + 0xc]
mov dword [esp + 0x60], eax
lea eax, [esp + 0x58]
push 0xc
push eax
push esi
call fcn.1007fd00
mov ecx, dword [ebx + 0x3e18]
mov dword [esp + 0x58], 0x6f
call fcn.1003bae0
mov dword [esp + 0x5c], eax
mov ecx, ebx
mov eax, dword [ebx + 0x3e38]
mov dword [esp + 0x64], eax
mov eax, dword [ebx + 0x3e3c]
mov dword [esp + 0x68], eax
mov eax, dword [ebx + 0x3e04]
push 0x14
mov eax, dword [eax + 0xec8]
mov dword [esp + 0x64], eax
lea eax, [esp + 0x5c]
push eax
push esi
call fcn.1007fd00
mov eax, dword [ebx + 0x3e04]
lea ecx, [esp + 0x70]
add eax, 0xef4
push eax
call fcn.10009bd0
mov byte [esp + 0x9b0], 0xe
lea ecx, [esp + 0x70]
cmp dword [esp + 0x84], 0x10
cmovae ecx, dword [esp + 0x70]
lea edx, [ecx + 1]
lea ebx, [ebx]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1007fa70
sub ecx, edx
lea eax, [ecx + 9]
push eax
mov dword [esp + 0x5c], eax
call fcn.100ad5d6
add esp, 4
mov dword [esp + 0x18], eax
mov dword [eax], 0x71
mov ecx, dword [ebx + 0x3e18]
call fcn.1003bae0
mov edx, dword [esp + 0x18]
lea ecx, [esp + 0x70]
mov dword [edx + 4], eax
cmp dword [esp + 0x84], 0x10
cmovae ecx, dword [esp + 0x70]
add edx, 8
lea esp, [esp]
mov al, byte [ecx]
lea ecx, [ecx + 1]
mov byte [edx], al
lea edx, [edx + 1]
test al, al
jne 0x1007fac0
push dword [esp + 0x58]
mov ecx, ebx
push dword [esp + 0x1c]
push esi
call fcn.1007fd00
push dword [esp + 0x18]
call dword [sym.imp.MSVCR120.dll_void___cdecl_operator_delete___void__]
add esp, 4
mov byte [esp + 0x9b0], 0xd
lea ecx, [esp + 0x70]
call fcn.10003e50
cmp byte [ebx + 0x4338], 0
je 0x1007fb2b
mov ecx, dword [ebx + 0x3e18]
mov dword [esp + 0x58], 0x79
call fcn.1003bae0
mov dword [esp + 0x5c], eax
mov ecx, ebx
push 8
lea eax, [esp + 0x5c]
push eax
push esi
call fcn.1007fd00
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov edi, dword [esp + 0x34]
jmp 0x1007f8b5
cmp eax, 2
jne 0x1007fb52
mov ebx, dword [esp + 0x14]
push 0x10
push ebx
call dword [sym.imp.USER32.dll_KillTimer]
jmp 0x1007f8b9
cmp eax, 0x113
jne 0x1007fcde
cmp esi, 0x10
jne 0x1007f8b5
cmp byte [ebx + 0x4224], 0
je 0x1007fb74
call fcn.1007d680
lea eax, [ebx + 0x4260]
push eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [ebx + 0x4258]
mov esi, dword [eax]
mov dword [esp + 0x18], esi
cmp esi, eax
je 0x1007fbf2
push dword [esi + 0x10]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x1007fbdd
mov eax, dword [esi + 0x10]
lea ecx, [ebx + 0x10]
mov dword [esp + 0x60], eax
lea eax, [esp + 0x58]
push 0xc
push eax
mov dword [esp + 0x60], 0xb
mov dword [esp + 0x64], 0xc
call fcn.10004ad0
push esi
lea eax, [esp + 0x2c]
push eax
lea ecx, [ebx + 0x4258]
call fcn.10025570
mov esi, dword [eax]
mov dword [esp + 0x18], esi
jmp 0x1007fbea
lea ecx, [esp + 0x18]
call fcn.1000a810
mov esi, dword [esp + 0x18]
cmp esi, dword [ebx + 0x4258]
jne 0x1007fb91
lea eax, [ebx + 0x4260]
push eax
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea edi, [ebx + 0x4280]
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea eax, [ebx + 0x4278]
mov dword [esp + 0x58], eax
mov eax, dword [eax]
mov esi, dword [eax]
mov dword [esp + 0x18], esi
cmp esi, eax
je 0x1007fc66
mov ebx, dword [esp + 0x58]
push dword [esi + 0x10]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x1007fc51
push dword [esi + 0x14]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
lea eax, [esp + 0x2c]
mov ecx, ebx
push eax
call fcn.10025570
mov esi, dword [eax]
mov dword [esp + 0x18], esi
jmp 0x1007fc5e
lea ecx, [esp + 0x18]
call fcn.1000a810
mov esi, dword [esp + 0x18]
cmp esi, dword [ebx]
jne 0x1007fc26
mov ebx, dword [esp + 0x1c]
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
lea edi, [ebx + 0x42a0]
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [ebx + 0x4298]
mov esi, dword [eax]
mov dword [esp + 0x18], esi
cmp esi, eax
je 0x1007f8a6
mov edi, edi
push dword [esi + 0x10]
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
jne 0x1007fcc4
mov eax, dword [esi + 0x14]
test eax, eax
je 0x1007fcab
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push esi
lea eax, [esp + 0x2c]
push eax
lea ecx, [ebx + 0x4298]
call fcn.10025570
mov esi, dword [eax]
mov dword [esp + 0x18], esi
jmp 0x1007fcd1
lea ecx, [esp + 0x18]
call fcn.1000a810
mov esi, dword [esp + 0x18]
cmp esi, dword [ebx + 0x4298]
jne 0x1007fc90
jmp 0x1007f8a6
cmp eax, 0x411
jne 0x1007f8b5
mov eax, dword [ebx]
call dword [eax + 0x30]
jmp 0x1007f8b5