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

Disassembly:
push 0xffffffffffffffff
push 0x44b9c4
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x44
push ebx
push ebp
push esi
mov esi, ecx
lea eax, [esp + 0x20]
push edi
lea ecx, [esp + 0x10]
push eax
lea edx, [esp + 0x20]
push ecx
push edx
mov ecx, esi
mov dword [esp + 0x2c], esi
call fcn.00418740
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x10]
cmp eax, ecx
mov edi, eax
jg 0x41897b
mov ecx, dword [esi + 0x70]
mov ebp, dword [sym.imp.USER32.dll_GetWindowRect]
mov edx, dword [ecx + 0x80]
lea ebx, [edx + eax*4]
mov esi, dword [ebx]
mov eax, esi
shr eax, 0x10
je 0x41896b
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0xc8]
test eax, eax
je 0x41896b
mov edx, dword [0x471c40]
xor eax, eax
test edx, edx
jle 0x418937
mov ecx, dword [0x471c3c]
cmp dword [ecx], esi
je 0x418933
inc eax
add ecx, 4
cmp eax, edx
jl 0x418925
jmp 0x418937
test eax, eax
jge 0x41896b
mov ecx, dword [esi + 0x1c]
lea eax, [esp + 0x30]
push eax
push ecx
call ebp
mov eax, dword [esp + 0x68]
test eax, eax
je 0x418954
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x30]
jmp 0x41895c
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x64]
sub eax, edx
sub eax, 2
sub ecx, eax
mov dword [esp + 0x64], ecx
mov eax, dword [esp + 0x10]
inc edi
add ebx, 4
cmp edi, eax
jle 0x4188fc
mov esi, dword [esp + 0x20]
lea ecx, [esp + 0x40]
call fcn.0043d7c1
mov dword [esp + 0x40], 0x44e898
push 0xffffffffffffffff
push 0
lea ecx, [esp + 0x48]
mov dword [esp + 0x64], 0
call fcn.0043d821
lea edx, [esp + 0x2c]
lea eax, [esp + 0x14]
push edx
lea ecx, [esp + 0x2c]
push eax
push ecx
mov ecx, esi
call fcn.00418740
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
cmp eax, ecx
mov edi, eax
jg 0x418a22
mov edx, dword [esi + 0x70]
mov ecx, dword [edx + 0x80]
lea ebx, [ecx + eax*4]
mov esi, dword [ebx]
mov edx, esi
shr edx, 0x10
je 0x418a16
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0xc8]
test eax, eax
je 0x418a16
mov edx, dword [0x471c40]
xor eax, eax
test edx, edx
jle 0x418a16
mov ecx, dword [0x471c3c]
cmp dword [ecx], esi
je 0x418a08
inc eax
add ecx, 4
cmp eax, edx
jl 0x4189fa
jmp 0x418a16
test eax, eax
jl 0x418a16
push esi
lea ecx, [esp + 0x44]
call fcn.00419450
mov eax, dword [esp + 0x14]
inc edi
add ebx, 4
cmp edi, eax
jle 0x4189d1
mov ebx, dword [esp + 0x48]
xor ebp, ebp
xor edx, edx
mov edi, 2
test ebx, ebx
jle 0x418aa0
mov esi, dword [esp + 0x44]
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 0x68]
mov ecx, dword [esi]
test ebx, ebx
je 0x418a4a
mov eax, dword [ecx + 0x78]
jmp 0x418a50
mov eax, dword [ecx + 0x84]
sub eax, 2
add ebp, eax
test ebx, ebx
je 0x418a61
mov eax, dword [ecx + 0x98]
jmp 0x418a67
mov eax, dword [ecx + 0x9c]
sub eax, 2
add edi, eax
test ebx, ebx
je 0x418a75
mov eax, dword [ecx + 0x7c]
jmp 0x418a7b
mov eax, dword [ecx + 0x80]
cmp edx, eax
jg 0x418a8e
test ebx, ebx
je 0x418a88
mov edx, dword [ecx + 0x7c]
jmp 0x418a8e
mov edx, dword [ecx + 0x80]
mov eax, dword [esp + 0x18]
add esi, 4
dec eax
mov dword [esp + 0x18], eax
jne 0x418a3b
mov ebx, dword [esp + 0x48]
cmp edi, dword [esp + 0x64]
jle 0x418b0b
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x1c]
cmp eax, ecx
mov eax, dword [esp + 0x10]
jl 0x418aba
cmp ecx, eax
jge 0x418af3
mov esi, dword [esp + 0x20]
push 1
inc eax
push esi
mov ecx, dword [esi + 0x70]
push eax
add ecx, 0x7c
call fcn.0043d961
mov eax, dword [esi + 0x70]
mov ecx, dword [esp + 0x10]
push 1
inc ecx
lea esi, [eax + 0x7c]
push 0
push ecx
mov ecx, esi
call fcn.0043d961
mov edx, dword [esp + 0x24]
push 1
push edx
mov ecx, esi
call fcn.0043d9f3
lea ecx, [esp + 0x40]
mov dword [esp + 0x5c], 0xffffffff
call fcn.0043d7f4
xor eax, eax
jmp 0x418c06
xor eax, eax
test ebx, ebx
jle 0x418b34
mov ecx, dword [esp + 0x68]
mov esi, dword [esp + 0x44]
test ecx, ecx
mov esi, dword [esi + eax*4]
je 0x418b25
mov dword [esi + 0x7c], edx
jmp 0x418b2b
mov dword [esi + 0x80], edx
mov ebx, dword [esp + 0x48]
inc eax
cmp eax, ebx
jl 0x418b15
mov esi, dword [esp + 0x64]
cmp ebp, esi
je 0x418bf0
sub esi, ebp
je 0x418bf0
mov ebp, dword [esp + 0x68]
xor edi, edi
mov dword [esp + 0x64], esi
test ebx, ebx
jle 0x418bc9
mov eax, dword [esp + 0x44]
test ebp, ebp
mov eax, dword [eax + edi*4]
je 0x418b6c
mov edx, dword [eax + 0x98]
mov ecx, dword [eax + 0x78]
jmp 0x418b78
mov edx, dword [eax + 0x9c]
mov ecx, dword [eax + 0x84]
cmp ecx, edx
jne 0x418b80
test esi, esi
jl 0x418bba
mov ecx, dword [eax + 0xc4]
test ecx, ecx
jne 0x418bba
test esi, esi
jne 0x418b92
xor ecx, ecx
jmp 0x418b9e
xor ecx, ecx
test esi, esi
setge cl
dec ecx
and ecx, 0xfffffffe
inc ecx
test ebp, ebp
je 0x418ba7
add eax, 0x78
jmp 0x418bac
add eax, 0x84
mov edx, dword [eax]
add edx, ecx
sub esi, ecx
mov dword [eax], edx
mov ebx, dword [esp + 0x48]
je 0x418bbf
inc edi
cmp edi, ebx
jl 0x418b56
cmp dword [esp + 0x64], esi
je 0x418bc9
test esi, esi
jne 0x418b4c
xor eax, eax
test ebx, ebx
jle 0x418be8
xor ecx, ecx
mov edx, dword [esp + 0x44]
inc eax
mov edx, dword [edx + eax*4 - 4]
mov dword [edx + 0xc4], ecx
mov ebx, dword [esp + 0x48]
cmp eax, ebx
jl 0x418bd1
test esi, esi
jne 0x418b48
lea ecx, [esp + 0x40]
mov dword [esp + 0x5c], 0xffffffff
call fcn.0043d7f4
mov eax, 1
mov ecx, dword [esp + 0x54]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x50
ret 8