Function at 0x6344d0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, dword [ebp + 0x10]
mov ecx, dword [ebp + 0x18]
sub esp, 0xd4
cmp dword [0x736604], 0
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0xc]
mov dword [ebx + 0x86], esi
push edi
mov edi, dword [ebp + 0x14]
mov dword [ebx + 0x8a], eax
mov dword [ebx + 0x8e], edi
mov dword [ebx + 0x92], ecx
je 0x634a31
mov eax, dword [ebx + 0x72]
test eax, eax
je 0x634a31
lea ecx, [ebx + 0x76]
push ecx
push eax
call dword [sym.imp.USER32.dll_GetWindowRect]
mov eax, edi
sub eax, esi
je 0x634a26
mov esi, dword [ebp + 0x18]
sub esi, dword [ebp + 0x10]
je 0x634a26
mov edx, dword [ebx + 0xd]
mov ecx, dword [ebx + 9]
push edx
push ecx
push esi
push eax
lea esi, [esp + 0x5c]
lea edi, [esp + 0x58]
call fcn.004d3ba0
lea edx, [esp + 0x80]
push edx
lea eax, [ebp + 0xc]
push eax
lea ecx, [ebx + 0x76]
call fcn.00402510
mov esi, dword [esp + 0x4c]
mov edi, dword [esp + 0x48]
push esi
push edi
push 0
lea ecx, [esp + 0x8c]
push ecx
lea edx, [ebp + 0xc]
lea ecx, [esp + 0x80]
call fcn.005fc8d0
push esi
push edi
push 1
lea edx, [esp + 0x7c]
push edx
lea edx, [ebp + 0xc]
lea ecx, [esp + 0x48]
call fcn.005fc8d0
push 0x14
call fcn.004aefd0
add esp, 4
test eax, eax
je 0x6345d7
mov edx, dword [esp + 0x38]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edx
mov edx, dword [esp + 0x50]
mov dword [ecx + 8], edx
mov edx, dword [esp + 0x4c]
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x54]
mov dword [ecx + 0xc], edx
call fcn.005ff3c0
jmp 0x6345d9
xor eax, eax
mov edi, dword [sym.imp.USER32.dll_GetParent]
mov dword [eax], 0
mov esi, dword [ebx + 0x72]
push esi
mov dword [esp + 0x14], eax
call edi
test eax, eax
je 0x6345fc
push eax
mov esi, eax
call edi
test eax, eax
jne 0x6345f3
push 3
push esi
call dword [sym.imp.USER32.dll_GetWindow]
xor edi, edi
cmp eax, edi
mov dword [esp + 0x14], eax
je 0x6349be
mov esi, dword [esp + 0x14]
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
je 0x6349a5
lea eax, [esp + 0x28]
push eax
push esi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], edi
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], edi
call dword [sym.imp.USER32.dll_GetWindowRect]
lea edx, [esp + 0x28]
lea esi, [esp + 0x38]
call fcn.00402480
test al, al
je 0x6349a5
mov ecx, dword [esp + 0x30]
sub ecx, dword [esp + 0x28]
je 0x6349a5
mov edx, dword [esp + 0x14]
push 0xffffffffffffffec
push edx
call dword [sym.imp.USER32.dll_GetWindowLongW]
test eax, 0x80000
jne 0x6349a5
lea ebx, [esp + 0x10]
test ebx, ebx
je 0x6349a0
mov edi, dword [ebx]
test edi, edi
setne al
test al, al
je 0x6349a0
lea esi, [edi + 4]
lea edx, [esp + 0x28]
call fcn.00402480
test al, al
jne 0x6346b0
test edi, edi
je 0x634681
mov ebx, edi
jmp 0x634681
mov eax, edi
test eax, eax
mov edi, dword [eax + 4]
mov ecx, dword [eax + 0xc]
mov esi, dword [eax + 8]
mov edx, dword [eax + 0x10]
mov dword [esp + 0x18], edi
mov dword [esp + 0x20], ecx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x24], edx
je 0x6346df
mov ecx, dword [eax]
push eax
mov dword [ebx], ecx
call fcn.0069d0cc
add esp, 4
lea edx, [esp + 0x50]
push edx
lea eax, [esp + 0x2c]
push eax
lea ecx, [esp + 0x20]
call fcn.00402510
mov eax, dword [esp + 0x54]
cmp eax, esi
jle 0x634799
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0xa0]
mov dword [esp + 0xcc], eax
push edx
lea eax, [esp + 0xc4]
mov dword [esp + 0xcc], ecx
push eax
lea ecx, [esp + 0x40]
mov dword [esp + 0xc8], edi
mov dword [esp + 0xcc], esi
call fcn.00402510
mov esi, dword [esp + 0xa8]
mov ebx, dword [esp + 0xa0]
mov ecx, esi
sub ecx, ebx
test ecx, ecx
jle 0x634799
mov edi, dword [esp + 0xac]
mov edx, edi
sub edx, dword [esp + 0xa4]
test edx, edx
jle 0x634799
push 0x14
call fcn.004aefd0
add esp, 4
test eax, eax
je 0x63478d
mov edx, dword [esp + 0xa4]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], ebx
mov dword [ecx + 8], esi
mov dword [ecx + 4], edx
mov dword [ecx + 0xc], edi
call fcn.005ff3c0
jmp 0x63478f
xor eax, eax
mov ecx, dword [esp + 0x10]
mov dword [eax], ecx
mov dword [esp + 0x10], eax
mov edi, dword [esp + 0x5c]
mov eax, dword [esp + 0x24]
cmp edi, eax
jge 0x634838
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x20]
mov dword [esp + 0xd0], edx
lea edx, [esp + 0x60]
mov dword [esp + 0xdc], eax
push edx
lea eax, [esp + 0xd4]
mov dword [esp + 0xdc], ecx
push eax
lea ecx, [esp + 0x40]
mov dword [esp + 0xdc], edi
call fcn.00402510
mov esi, dword [esp + 0x68]
mov ebx, dword [esp + 0x60]
mov ecx, esi
sub ecx, ebx
test ecx, ecx
jle 0x634838
mov edx, dword [esp + 0x6c]
sub edx, dword [esp + 0x64]
test edx, edx
jle 0x634838
push 0x14
call fcn.004aefd0
add esp, 4
test eax, eax
je 0x63482c
mov edx, dword [esp + 0x64]
sub esp, 0x10
mov ecx, esp
mov dword [ecx + 4], edx
mov edx, dword [esp + 0x7c]
mov dword [ecx], ebx
mov dword [ecx + 8], esi
mov dword [ecx + 0xc], edx
call fcn.005ff3c0
jmp 0x63482e
xor eax, eax
mov ecx, dword [esp + 0x10]
mov dword [eax], ecx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x18]
cmp eax, ecx
jle 0x6348db
mov edx, dword [esp + 0x54]
mov dword [esp + 0x78], eax
mov dword [esp + 0x70], ecx
lea eax, [esp + 0xb0]
push eax
lea ecx, [esp + 0x74]
push ecx
lea ecx, [esp + 0x40]
mov dword [esp + 0x7c], edx
mov dword [esp + 0x84], edi
call fcn.00402510
mov esi, dword [esp + 0xb8]
mov ebx, dword [esp + 0xb0]
mov edx, esi
sub edx, ebx
test edx, edx
jle 0x6348db
mov edi, dword [esp + 0xbc]
mov eax, edi
sub eax, dword [esp + 0xb4]
test eax, eax
jle 0x6348d7
push 0x14
call fcn.004aefd0
add esp, 4
test eax, eax
je 0x6348cb
mov edx, dword [esp + 0xb4]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], ebx
mov dword [ecx + 8], esi
mov dword [ecx + 4], edx
mov dword [ecx + 0xc], edi
call fcn.005ff3c0
jmp 0x6348cd
xor eax, eax
mov ecx, dword [esp + 0x10]
mov dword [eax], ecx
mov dword [esp + 0x10], eax
mov edi, dword [esp + 0x5c]
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x20]
cmp eax, ecx
jge 0x63467d
mov edx, dword [esp + 0x54]
mov dword [esp + 0x80], eax
mov dword [esp + 0x88], ecx
lea eax, [esp + 0x90]
push eax
lea ecx, [esp + 0x84]
push ecx
lea ecx, [esp + 0x40]
mov dword [esp + 0x8c], edx
mov dword [esp + 0x94], edi
call fcn.00402510
mov esi, dword [esp + 0x98]
mov edi, dword [esp + 0x90]
mov edx, esi
sub edx, edi
test edx, edx
jle 0x63467d
mov ebx, dword [esp + 0x9c]
mov eax, ebx
sub eax, dword [esp + 0x94]
test eax, eax
jle 0x63467d
push 0x14
call fcn.004aefd0
add esp, 4
test eax, eax
je 0x63498f
mov edx, dword [esp + 0x94]
sub esp, 0x10
mov ecx, esp
mov dword [ecx], edi
mov dword [ecx + 8], esi
mov dword [ecx + 4], edx
mov dword [ecx + 0xc], ebx
call fcn.005ff3c0
mov ecx, dword [esp + 0x10]
mov dword [eax], ecx
mov dword [esp + 0x10], eax
jmp 0x63467d
mov ecx, dword [esp + 0x10]
xor eax, eax
mov dword [eax], ecx
mov dword [esp + 0x10], eax
jmp 0x63467d
mov ebx, dword [ebp + 8]
xor edi, edi
mov edx, dword [esp + 0x14]
push 3
push edx
call dword [sym.imp.USER32.dll_GetWindow]
cmp eax, edi
mov dword [esp + 0x14], eax
jne 0x634613
cmp dword [ebx + 0x96], edi
je 0x6349e9
mov eax, dword [ebx + 0x96]
cmp eax, edi
mov ecx, dword [eax]
mov dword [ebx + 0x96], ecx
je 0x6349e1
push eax
call fcn.0069d0cc
add esp, 4
cmp dword [ebx + 0x96], edi
jne 0x6349c6
lea edx, [ebp + 0xc]
push edx
lea eax, [esp + 0x4c]
push eax
push ebx
lea edx, [esp + 0x1c]
call fcn.00634330
mov eax, dword [esp + 0x10]
cmp eax, edi
je 0x634a31
jmp 0x634a0a
mov eax, dword [esp + 0x10]
mov esi, dword [eax]
push eax
mov dword [esp + 0x14], esi
call fcn.0069d0cc
add esp, 4
cmp esi, edi
jne 0x634a06
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
lea esi, [ebx + 0x96]
call fcn.0048bd10
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14