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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x70
mov ecx, dword [0x694c74]
push ebx
xor eax, eax
push ebp
mov dword [esp + 0x54], ecx
cmp dword [0x694c7c], eax
push esi
push edi
mov dword [esp + 0x58], eax
mov dword [esp + 0x1c], eax
mov dword [0x6950e8], eax
mov dword [0x6950e4], eax
je 0x55ebc6
cmp dword [0x61a9ec], eax
je 0x55ebc6
push eax
call fcn.00588760
mov dword [esp + 0x40], eax
mov eax, 1
add esp, 4
mov dword [esp + 0x54], eax
mov dword [esp + 0x28], eax
lea ecx, [ecx]
mov eax, dword [0x694c74]
xor edi, edi
cmp eax, edi
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
jl 0x55e468
cmp eax, 0xa
jl 0x55e46e
mov dword [0x694c74], edi
mov eax, dword [0x694c7c]
lea edx, [esp + 0x60]
push edx
push eax
call dword [sym.imp.USER32.dll_GetClientRect]
mov eax, dword [0x6950dc]
xor ebx, ebx
xor ebp, ebp
cmp eax, edi
jge 0x55e493
xor eax, eax
mov dword [0x6950dc], eax
mov esi, dword [0x6a0f38]
mov dword [esp + 0x18], eax
xor eax, eax
test esi, esi
mov dword [esp + 0x14], eax
je 0x55e528
jmp 0x55e4b0
push esi
mov dword [esi + 0x18f4], 0
call fcn.0055df90
add esp, 4
test eax, eax
je 0x55e51a
push esi
call fcn.0055dd00
add esp, 4
test eax, eax
je 0x55e51a
cmp dword [0x61aa08], 2
jl 0x55e4e3
dec dword [esp + 0x18]
jns 0x55e51a
mov eax, dword [esi + 0x18e0]
test eax, eax
je 0x55e4fb
mov eax, dword [esi + 0x1314]
cmp eax, ebp
je 0x55e516
mov ebp, eax
jmp 0x55e513
test edi, edi
jne 0x55e507
mov edi, dword [esi + 0x1e90]
jmp 0x55e516
mov eax, dword [esi + 0x1e90]
cmp edi, eax
je 0x55e516
mov edi, eax
add ebx, 0xa
inc dword [esp + 0x14]
mov esi, dword [esi + 0x21c0]
test esi, esi
jne 0x55e4b0
mov eax, dword [esp + 0x14]
cmp dword [0x61aa08], 2
mov ecx, dword [0x694c78]
jl 0x55e66a
test ecx, ecx
jne 0x55e547
mov dword [esp + 0x1c], 5
mov edx, dword [esp + 0x6c]
mov edi, dword [esp + 0x68]
mov ecx, 0xfffffff9
sub ecx, ebx
add edx, ecx
test edi, edi
mov dword [esp + 0x6c], edx
jg 0x55e565
mov edi, 0x73
test eax, eax
jle 0x55ebc6
mov eax, dword [esp + 0x6c]
cdq
idiv dword [esp + 0x14]
mov ecx, dword [0x61a9e8]
mov edx, eax
mov eax, dword [0x61aa10]
inc edx
test eax, eax
je 0x55e591
lea eax, [ecx - 1]
cmp edx, eax
jle 0x55e591
mov edx, eax
lea eax, [ecx - 1]
cmp edx, eax
jge 0x55e59a
mov edx, eax
mov eax, dword [0x61aa08]
mov ecx, 2
sub edx, ecx
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x1c]
add edx, 4
cmp eax, ecx
mov dword [esp + 0x20], edx
jne 0x55e614
lea eax, [edi - 5]
mov dword [esp + 0x68], eax
mov eax, dword [0x61af40]
test eax, eax
mov dword [esp + 0x60], 1
je 0x55e5e6
cmp dword [0x61af44], ecx
jne 0x55e5e6
mov dword [esp + 0x60], 0
jmp 0x55e867
mov eax, dword [0x61ab50]
test eax, eax
je 0x55e5fb
cmp dword [0x61ab54], ecx
je 0x55e867
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x55e867
mov dword [esp + 0x60], 4
jmp 0x55e867
lea ecx, [edi - 2]
mov dword [esp + 0x68], ecx
mov ecx, dword [0x61af40]
test ecx, ecx
mov dword [esp + 0x60], 4
je 0x55e63e
cmp dword [0x61af44], eax
jne 0x55e63e
inc dword [esp + 0x68]
jmp 0x55e867
mov ecx, dword [0x61ab50]
test ecx, ecx
je 0x55e654
cmp dword [0x61ab54], eax
je 0x55e867
mov eax, dword [esp + 0x3c]
test eax, eax
je 0x55e867
sub dword [esp + 0x68], 3
jmp 0x55e867
test ecx, ecx
jne 0x55e676
mov dword [esp + 0x1c], 8
mov esi, dword [esp + 0x68]
mov edx, 0xfffffff6
sub edx, ebx
add esi, edx
test eax, eax
mov dword [esp + 0x68], esi
jle 0x55ebc6
mov ecx, dword [0x694c74]
mov ebp, dword [0x61aa10]
xor ebx, ebx
mov dword [esp + 0x38], 0xffffd8f1
test ecx, ecx
je 0x55e7ae
fild dword [esp + 0x14]
inc ecx
mov dword [esp + 0x48], ecx
fstp qword [esp + 0x40]
fild dword [esp + 0x48]
fstp qword [esp + 0x48]
fld qword [esp + 0x40]
fdiv qword [esp + 0x48]
fstp qword [esp + 0x48]
fld qword [esp + 0x48]
fcomp qword [0x5f56a0]
fnstsw ax
test ah, 0x41
jp 0x55e6ef
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0x3ff00000
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
push eax
push ecx
call fcn.005d9be0
fstp qword [esp + 0x48]
fld qword [esp + 0x50]
add esp, 8
fcomp qword [esp + 0x40]
fnstsw ax
test ah, 0x41
jne 0x55e722
fld qword [esp + 0x40]
fadd qword [0x5f53e0]
fstp qword [esp + 0x48]
fild dword [esp + 0x68]
fstp qword [esp + 0x40]
fld qword [esp + 0x48]
fmul qword [0x5fe578]
fsubr qword [esp + 0x40]
fdiv qword [esp + 0x48]
call fcn.005d98b4
mov ebp, dword [0x61aa10]
mov edi, eax
dec edi
test ebp, ebp
je 0x55e7a2
cmp edi, 0x73
jle 0x55e7a2
mov edi, 0x73
mov ecx, dword [0x694c74]
mov edx, dword [0x61aa04]
xor eax, eax
cmp edx, eax
je 0x55e82b
cmp dword [esp + 0x28], eax
je 0x55e82b
cmp edi, 0x3a
jge 0x55e7f7
cmp ecx, 9
jge 0x55e7f7
cmp dword [esp + 0x38], edi
jne 0x55e7e2
dec ecx
mov dword [0x694c74], ecx
jns 0x55e799
xor ecx, ecx
mov dword [0x694c74], ecx
mov dword [esp + 0x28], eax
jmp 0x55e6a5
cmp edi, 0x10
jge 0x55e758
mov edi, 0x10
jmp 0x55e758
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x68]
mov edx, esi
imul edx, edx, 7
sub eax, edx
cdq
idiv esi
mov edi, eax
dec edi
test ebp, ebp
je 0x55e7d3
cmp edi, 0x73
jle 0x55e7d3
mov edi, 0x73
jmp 0x55e75e
cmp edi, 0x10
jge 0x55e75e
mov edi, 0x10
jmp 0x55e75e
inc ecx
mov dword [esp + 0x38], edi
mov dword [0x694c74], ecx
mov ebx, 1
jmp 0x55e6a5
cmp ebx, eax
je 0x55e800
cmp ebx, 2
jne 0x55e815
cmp ecx, eax
jle 0x55e815
dec ecx
mov dword [0x694c74], ecx
mov ebx, 2
jmp 0x55e6a5
cmp ebx, eax
je 0x55e82b
cmp ecx, dword [esp + 0x5c]
je 0x55e82b
mov dword [esp + 0x28], eax
mov dword [esp + 0x58], 1
mov ecx, dword [esp + 0x1c]
inc ecx
mov dword [esp + 0x14], ecx
cmp dword [0x61aa08], eax
jne 0x55e853
mov edx, dword [0x61a9e8]
add edx, 0xfffffffc
mov dword [esp + 0x64], 4
mov dword [esp + 0x6c], edx
jmp 0x55e867
mov eax, dword [0x61a9e8]
add eax, 0xfffffffa
mov dword [esp + 0x64], 2
mov dword [esp + 0x6c], eax
mov edx, dword [0x694c7c]
lea ecx, [esp + 0x70]
push ecx
push edx
call dword [sym.imp.USER32.dll_GetClientRect]
mov ecx, dword [esp + 0x78]
mov edx, dword [0x6950dc]
xor ebx, ebx
dec ecx
xor ebp, ebp
cmp edx, ebx
mov dword [esp + 0x78], ecx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x30], 1
mov dword [esp + 0x40], ebx
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], ebp
jge 0x55e8b4
xor edx, edx
mov dword [0x6950dc], edx
mov esi, dword [0x6a0f38]
cmp esi, ebx
mov dword [esp + 0x18], edx
je 0x55eade
mov ebx, dword [esp + 0x14]
mov ebp, dword [esp + 0x20]
mov edi, edi
xor eax, eax
push esi
mov dword [esi + 0x18f4], eax
mov dword [esi + 0x18dc], eax
call fcn.0055df90
add esp, 4
test eax, eax
je 0x55eaba
push esi
call fcn.0055dd00
add esp, 4
test eax, eax
je 0x55eaba
mov ecx, dword [esp + 0x38]
mov eax, dword [0x61aa08]
inc ecx
mov edx, 2
cmp eax, edx
mov dword [esp + 0x38], ecx
jl 0x55e957
dec dword [esp + 0x18]
js 0x55e957
mov eax, dword [esp + 0x74]
dec eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x60]
mov dword [esi + 0x18e4], eax
mov ecx, dword [esp + 0x64]
mov dword [esi + 0x18e8], ecx
mov edx, dword [esp + 0x68]
mov dword [esi + 0x18ec], edx
mov eax, dword [esp + 0x6c]
mov dword [esi + 0x18f0], eax
jmp 0x55eaba
mov eax, dword [esi + 0x18e0]
test eax, eax
je 0x55e973
mov eax, dword [esi + 0x1314]
cmp eax, dword [esp + 0x40]
je 0x55e9af
mov dword [esp + 0x40], eax
jmp 0x55e995
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jne 0x55e987
mov ecx, dword [esi + 0x1e90]
mov dword [esp + 0x2c], ecx
jmp 0x55e9af
mov eax, dword [esi + 0x1e90]
cmp ecx, eax
je 0x55e9af
mov dword [esp + 0x2c], eax
mov dword [esi + 0x18dc], 1
cmp dword [0x61aa08], edx
jl 0x55e9ac
add ebp, 8
jmp 0x55e9af
add ebx, 9
mov eax, dword [esp + 0x30]
mov dword [esi + 0x18f4], eax
cmp dword [0x61aa08], edx
jl 0x55ea23
mov ecx, dword [esp + 0x24]
lea eax, [ecx + ebp - 4]
mov ecx, dword [esp + 0x7c]
cmp ebp, ecx
mov dword [esp + 0x64], ebp
mov dword [esp + 0x6c], eax
jl 0x55e9e4
lea eax, [ecx + 1]
mov dword [esp + 0x64], eax
mov dword [esp + 0x6c], eax
add eax, 2
cmp eax, ecx
jg 0x55e9ef
inc dword [esp + 0x34]
mov edx, dword [esp + 0x60]
mov dword [esi + 0x18e4], edx
mov eax, dword [esp + 0x64]
mov dword [esi + 0x18e8], eax
mov ecx, dword [esp + 0x68]
mov dword [esi + 0x18ec], ecx
mov edx, dword [esp + 0x6c]
mov dword [esi + 0x18f0], edx
mov ebp, dword [esp + 0x6c]
add ebp, 4
jmp 0x55eab6
mov edx, dword [esp + 0x78]
lea ecx, [edi + ebx + 4]
add edx, 0xfffffffe
cmp ecx, edx
mov eax, ebx
mov dword [esp + 0x60], eax
mov dword [esp + 0x68], ecx
jl 0x55ea8d
mov edx, dword [esp + 0x1c]
inc edx
cmp ebx, edx
je 0x55ea8d
mov ecx, dword [0x61a9e8]
mov eax, dword [esp + 0x64]
lea eax, [eax + ecx - 2]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x6c]
lea eax, [eax + ecx - 2]
mov dword [esp + 0x6c], eax
mov eax, edx
lea edx, [eax + edi + 4]
mov dword [esp + 0x68], edx
mov edx, dword [esp + 0x48]
inc edx
cmp edx, 0xa
mov dword [esp + 0x60], eax
mov dword [esp + 0x48], edx
jl 0x55ea8d
mov edx, dword [esp + 0x7c]
add ecx, edx
mov dword [esp + 0x64], ecx
mov dword [esp + 0x6c], ecx
mov dword [esi + 0x18e4], eax
mov eax, dword [esp + 0x64]
mov dword [esi + 0x18e8], eax
mov ecx, dword [esp + 0x68]
mov dword [esi + 0x18ec], ecx
mov edx, dword [esp + 0x6c]
mov ebx, ecx
mov dword [esi + 0x18f0], edx
add ebx, 4
inc dword [esp + 0x30]
mov esi, dword [esi + 0x21c0]
test esi, esi
jne 0x55e8d0
mov edx, dword [0x6950dc]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x20], ebp
mov ebp, dword [esp + 0x38]
cmp dword [0x61aa08], 2
jl 0x55ebc6
mov ecx, dword [esp + 0x7c]
mov esi, dword [esp + 0x24]
mov eax, 1
mov dword [0x6950e8], eax
mov dword [0x6950e4], eax
mov eax, dword [esp + 0x20]
cmp eax, ecx
jge 0x55eb2f
lea ebx, [ebx]
mov dword [esp + 0x64], eax
lea eax, [esi + eax - 5]
lea edi, [eax + 2]
cmp edi, ecx
mov dword [esp + 0x6c], eax
jg 0x55eb2f
add eax, 4
inc ebx
cmp eax, ecx
mov dword [esp + 0x20], eax
jl 0x55eb10
mov eax, dword [esp + 0x54]
xor ecx, ecx
cmp eax, ecx
je 0x55eb7c
lea eax, [ebx + edx]
cmp eax, ebp
mov dword [esp + 0x54], ecx
jle 0x55eb59
mov eax, ebp
sub eax, ebx
sets cl
dec ecx
and ecx, eax
mov dword [0x6950dc], ecx
jmp 0x55e450
cmp edx, ebp
jl 0x55eb7c
lea eax, [ebp - 1]
cmp eax, ecx
mov dword [0x6950dc], eax
jge 0x55e450
mov dword [0x6950dc], 0
jmp 0x55e450
cmp ebx, ecx
jne 0x55eb8c
mov dword [0x6950e8], ecx
mov dword [0x6950e4], ecx
add ebx, edx
cmp ebx, ebp
jl 0x55ebba
cmp dword [0x61aa10], ecx
mov dword [0x6950e8], ecx
jne 0x55ebba
mov eax, dword [0x61a9e8]
dec eax
cmp esi, eax
jle 0x55ebba
cmp edx, ecx
jle 0x55ebc0
dec edx
mov dword [0x6950dc], edx
jmp 0x55e450
cmp edx, ecx
jg 0x55ebc6
xor ecx, ecx
mov dword [0x6950e4], ecx
call fcn.0055e070
mov eax, dword [esp + 0x58]
pop edi
pop esi
pop ebp
pop ebx
mov esp, ebp
pop ebp
ret