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

Disassembly:
sub esp, 0x50
push ebx
push ebp
push esi
mov esi, ecx
mov ecx, dword [esi + 0xa0]
cmp dword [ecx + 0x9c], 0
push edi
mov edi, dword [esi + 0x7c]
mov dword [esp + 0x18], esi
je 0x4924b7
mov eax, dword [ecx + 0x300]
jmp 0x4924d8
cmp dword [ecx + 0x78], 0
jne 0x4924d2
cmp dword [ecx + 0x84], 0
jne 0x4924d2
mov edx, dword [ecx + 0x2e8]
mov dword [esp + 0x1c], edx
jmp 0x4924dc
mov eax, dword [ecx + 0x184]
mov dword [esp + 0x1c], eax
mov eax, dword [esi + 0x168]
mov ebx, dword [0x5c3e74]
cdq
idiv ebx
mov ebp, edx
xor edx, edx
test ebp, ebp
setne dl
add edx, eax
mov eax, dword [esp + 0x1c]
add edx, edi
dec eax
cmp eax, edx
jge 0x492534
cmp dword [ecx + 0x9c], 0
je 0x492513
mov eax, dword [ecx + 0x300]
dec eax
jmp 0x49254a
cmp dword [ecx + 0x78], 0
jne 0x49252b
cmp dword [ecx + 0x84], 0
jne 0x49252b
mov eax, dword [ecx + 0x2e8]
dec eax
jmp 0x49254a
mov eax, dword [ecx + 0x184]
dec eax
jmp 0x49254a
mov eax, dword [esi + 0x168]
cdq
idiv ebx
mov ebp, eax
xor eax, eax
test edx, edx
setne al
add eax, ebp
add eax, edi
mov dword [esp + 0x24], eax
mov eax, dword [ecx + 0x158]
mov ecx, dword [esi + 0x20]
imul eax, eax, 0x190
add eax, 0x5bd258
push ecx
mov dword [esp + 0x14], eax
call dword [sym.imp.USER32.dll_GetParent]
push eax
call fcn.0050327e
mov edx, dword [eax]
push 0
mov ecx, eax
mov eax, dword [edx + 0x16c]
push 0
call eax
xor ecx, ecx
cmp eax, esi
sete cl
cmp edi, dword [esp + 0x24]
mov dword [esp + 0x14], edi
mov dword [esp + 0x1c], 0
mov dword [esp + 0x38], ecx
jg 0x4928f6
mov ebx, dword [esp + 0x68]
jmp 0x4925b4
mov edi, dword [esp + 0x14]
mov ecx, dword [esi + 0xa0]
push edi
call fcn.0048c200
mov ecx, dword [esi + 0xa0]
lea edx, [esp + 0x34]
push edx
mov ebp, eax
push edi
mov dword [esp + 0x28], ebp
call fcn.00470d60
mov eax, dword [0x5ed804]
mov ecx, dword [esp + 0x64]
push eax
push ebx
push ecx
push ebp
mov ebp, dword [esp + 0x44]
push 0
push ebp
call fcn.0046e540
mov edi, eax
add esp, 0x18
cmp edi, 0xffffffff
je 0x4928d9
mov edx, dword [esp + 0x14]
push 0
push edx
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x48]
push ecx
mov ecx, dword [esi + 0xa0]
call fcn.00473590
lea ebx, [ebx]
mov edx, dword [esp + 0x2c]
add edx, edi
je 0x49264e
movzx eax, word [ebp + edi*2 - 2]
mov ecx, dword [esp + 0x10]
push eax
call fcn.00422b10
test eax, eax
jne 0x49264e
movzx ecx, word [ebp + edi*2]
push ecx
mov ecx, dword [esp + 0x14]
call fcn.00422b10
test eax, eax
je 0x492687
lea edx, [edi + ebx]
lea eax, [ebp + edx*2]
mov dword [esp + 0x30], eax
movzx eax, word [eax]
xor ecx, ecx
cmp cx, ax
je 0x4926b5
mov ecx, dword [esp + 0x10]
push eax
call fcn.00422b10
test eax, eax
jne 0x4926b5
mov edx, dword [esp + 0x30]
movzx eax, word [edx - 2]
mov ecx, dword [esp + 0x10]
push eax
call fcn.00422b10
test eax, eax
jne 0x4926b5
mov ecx, dword [0x5ed804]
mov edx, dword [esp + 0x64]
mov eax, dword [esp + 0x20]
push ecx
push ebx
push edx
push eax
add edi, ebx
push edi
push ebp
call fcn.0046e540
mov edi, eax
add esp, 0x18
cmp edi, 0xffffffff
jne 0x492620
jmp 0x4928d9
cmp edi, 0xffffffff
je 0x4928d9
mov eax, dword [esi + 0x80]
imul eax, dword [0x5c3e88]
mov ecx, dword [esp + 0x14]
push 0
push 0
push 1
push 0
push edi
push ecx
mov ecx, dword [esi + 0xa0]
push 0
lea edx, [esp + 0x84]
push edx
push 0
mov dword [esp + 0x54], eax
mov dword [esp + 0x8c], 0
call fcn.00478750
mov eax, dword [esp + 0x68]
sub eax, dword [esp + 0x30]
cmp eax, dword [esi + 0x164]
mov dword [esp + 0x50], eax
jg 0x4928d9
mov edx, dword [0x5e3ebc]
lea eax, [esp + 0x48]
push eax
push ebx
lea ecx, [ebp + edi*2]
push ecx
push edx
call dword [sym.imp.GDI32.dll_GetTextExtentPoint32W]
mov edx, dword [esi + 0x80]
imul edx, dword [0x5c3e88]
mov ecx, dword [esp + 0x1c]
mov eax, dword [0x5c3e74]
add eax, ecx
cmp dword [esp + 0x38], 0
mov dword [esp + 0x5c], eax
mov eax, dword [esi + 0x164]
lea ecx, [edx + eax*2]
mov dword [esp + 0x44], ecx
lea eax, [edi + ebx]
je 0x492785
mov esi, dword [esi + 0xa0]
mov ecx, 1
cmp dword [esi + 0x100], ecx
jne 0x492785
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x28], ecx
cmp edx, dword [esi + 0x1a8]
je 0x49278d
mov dword [esp + 0x28], 0
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x20]
push 0
push ebx
push ecx
push edx
push eax
push ebp
call fcn.0046e540
mov esi, eax
add esp, 0x18
cmp esi, 0xffffffff
je 0x492868
nop
cmp dword [esp + 0x28], 0
mov eax, dword [esp + 0x2c]
je 0x4927d0
mov edx, dword [esp + 0x18]
mov edx, dword [edx + 0xa0]
lea ecx, [esi + eax]
cmp ecx, dword [edx + 0x1ac]
je 0x492835
add eax, esi
je 0x4927fa
movzx ecx, word [ebp + esi*2 - 2]
push ecx
mov ecx, dword [esp + 0x14]
call fcn.00422b10
test eax, eax
jne 0x4927fa
movzx edx, word [ebp + esi*2]
mov ecx, dword [esp + 0x10]
push edx
call fcn.00422b10
test eax, eax
je 0x492835
lea eax, [esi + ebx]
lea eax, [ebp + eax*2]
mov dword [esp + 0x40], eax
movzx eax, word [eax]
xor ecx, ecx
cmp cx, ax
je 0x492833
mov ecx, dword [esp + 0x10]
push eax
call fcn.00422b10
test eax, eax
jne 0x492833
mov edx, dword [esp + 0x40]
movzx eax, word [edx - 2]
mov ecx, dword [esp + 0x10]
push eax
call fcn.00422b10
test eax, eax
je 0x492835
mov edi, esi
mov ecx, dword [0x5c3e88]
add esi, ebx
imul ecx, esi
cmp ecx, dword [esp + 0x44]
jg 0x492868
mov edx, dword [esp + 0x64]
mov eax, dword [esp + 0x20]
push 0
push ebx
push edx
push eax
push esi
push ebp
call fcn.0046e540
mov esi, eax
add esp, 0x18
cmp esi, 0xffffffff
jne 0x4927b0
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
push 0
push 0
push 1
push 0
add edi, ebx
push edi
push ecx
mov ecx, dword [eax + 0xa0]
push 0
lea edx, [esp + 0x84]
push edx
push 0
mov dword [esp + 0x8c], 0
call fcn.00478750
mov eax, dword [esp + 0x68]
sub eax, dword [esp + 0x30]
mov esi, dword [esp + 0x50]
xor ecx, ecx
test esi, esi
setl cl
dec ecx
and esi, ecx
mov ecx, dword [esp + 0x18]
mov edx, dword [ecx + 0x164]
cmp edx, eax
jge 0x4928c4
mov eax, edx
mov edx, dword [esp + 0x5c]
push edx
push eax
mov eax, dword [esp + 0x24]
push eax
push esi
call fcn.00490750
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x14]
mov ecx, dword [0x5c3e74]
add dword [esp + 0x1c], ecx
inc eax
cmp eax, dword [esp + 0x24]
mov dword [esp + 0x14], eax
jle 0x4925b0
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x50
ret 8