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

Disassembly:
push 0xffffffffffffffff
push 0x49b191
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xd4
push ebx
push ebp
push esi
mov esi, dword [sym.imp.USER32.dll_SendMessageA]
mov ebx, ecx
xor ebp, ebp
push edi
push ebp
mov eax, dword [ebx + 0xf08]
push ebp
push 0x1004
push eax
mov dword [esp + 0x68], ebx
mov dword [esp + 0x28], ebp
call esi
mov dword [esp + 0x2c], eax
mov eax, dword [0x4be818]
mov dword [esp + 0x14], eax
mov dword [esp + 0xec], ebp
mov dword [esp + 0x60], eax
lea ecx, [ebx + 0x804]
mov byte [esp + 0xec], 1
mov dword [esp + 0x3c], ebp
call fcn.00440930
mov dword [esp + 0x5c], eax
mov eax, dword [0x4be818]
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], eax
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], eax
push fcn.00484433
push 0x40bdf0
push 6
lea ecx, [esp + 0xc0]
push 4
push ecx
mov byte [esp + 0x100], 5
call fcn.0046f834
push 0x4be078
lea ecx, [esp + 0x74]
mov byte [esp + 0xf0], 6
mov dword [esp + 0x6c], ebp
call fcn.004845bc
mov edi, dword [esp + 0xf4]
xor ecx, ecx
mov eax, dword [edi + 4]
mov edx, eax
cmp eax, ebp
je 0x460d4a
mov ebp, dword [edi + 8]
sub ebp, eax
sar ebp, 2
cmp ecx, ebp
jae 0x460d48
mov ebp, dword [edx]
cmp dword [ebp + 8], 0
je 0x460d40
inc dword [esp + 0x18]
inc ecx
add edx, 4
xor ebp, ebp
jmp 0x460d24
xor ebp, ebp
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x2c]
cmp eax, edx
je 0x460d82
mov eax, dword [ebx + 0xf08]
push ebp
push ebp
push 0x1004
push eax
call esi
cmp eax, ebp
je 0x460d7a
mov ecx, dword [ebx + 0xf08]
push ebp
push ebp
push 0x1009
push ecx
call esi
mov dword [esp + 0x3c], 1
mov ecx, dword [edi + 4]
cmp ecx, ebp
jne 0x460d8f
mov dword [esp + 0x30], ebp
jmp 0x460d9b
mov eax, dword [edi + 8]
sub eax, ecx
sar eax, 2
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x30]
xor eax, eax
cmp ecx, ebp
mov dword [esp + 0x2c], eax
jbe 0x46128d
mov ecx, dword [edi + 4]
mov esi, dword [ecx + eax*4]
mov dword [esp + 0x38], esi
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x46127c
mov edx, dword [esi + 0x24]
lea eax, [esp + 0x14]
push edx
push 0x4b8278
push eax
call fcn.004827a3
mov eax, dword [esp + 0x48]
add esp, 0xc
test eax, eax
lea edi, [ebx + 0xeec]
push 0
je 0x460dff
mov ecx, dword [esp + 0x18]
push 0
push 0
push 0
push ecx
push ebp
push 1
mov ecx, edi
call fcn.0048315f
jmp 0x460e43
lea edx, [esp + 0x68]
push ebp
push edx
mov ecx, edi
call fcn.0048324f
mov ecx, dword [esp + 0x14]
mov eax, dword [eax]
push ecx
push eax
call fcn.0046f2f7
add esp, 8
lea ecx, [esp + 0x64]
test eax, eax
setne byte [esp + 0x13]
call fcn.00484433
mov al, byte [esp + 0x13]
test al, al
je 0x460e43
mov edx, dword [esp + 0x14]
mov ecx, edi
push edx
push 0
push ebp
call fcn.00483224
mov eax, dword [esi]
lea ecx, [ebx + 0x804]
push eax
mov dword [esp + 0x38], ecx
call fcn.00441e20
mov ebx, eax
test ebx, ebx
mov dword [esp + 0x18], ebx
jne 0x460e69
lea ecx, [esp + 0x68]
mov dword [esp + 0x18], ecx
mov ebx, ecx
lea edx, [ebx + 8]
lea ecx, [esp + 0x14]
push edx
call fcn.0048456c
push 1
lea eax, [esp + 0x44]
push ebp
push eax
mov ecx, edi
call fcn.0048324f
mov ecx, dword [esp + 0x14]
mov eax, dword [eax]
push ecx
push eax
call fcn.0046f2f7
add esp, 8
lea ecx, [esp + 0x40]
test eax, eax
setne byte [esp + 0x13]
call fcn.00484433
mov al, byte [esp + 0x13]
test al, al
je 0x460ebc
mov edx, dword [esp + 0x14]
mov ecx, edi
push edx
push 1
push ebp
call fcn.00483224
cmp dword [ebx], 0
je 0x460ee6
mov eax, dword [esi + 0x28]
test eax, eax
je 0x460ee6
mov ecx, dword [esi + 0xc]
test ecx, ecx
je 0x460edf
lea eax, [ebx + eax*4 + 0x48]
lea ecx, [esp + 0x14]
push eax
call fcn.0048456c
jmp 0x460ef4
push 0x4ba5a0
jmp 0x460eeb
push 0x4be06c
lea ecx, [esp + 0x18]
call fcn.004845bc
push 2
lea ecx, [esp + 0x58]
push ebp
push ecx
mov ecx, edi
call fcn.0048324f
mov edx, dword [esp + 0x14]
mov eax, dword [eax]
push edx
push eax
call fcn.0046f2f7
add esp, 8
lea ecx, [esp + 0x54]
test eax, eax
setne byte [esp + 0x13]
call fcn.00484433
mov al, byte [esp + 0x13]
test al, al
je 0x460f3a
mov eax, dword [esp + 0x14]
mov ecx, edi
push eax
push 2
push ebp
call fcn.00483224
mov eax, dword [ebx]
mov dword [esp + 0x24], 0
test eax, eax
je 0x461020
mov ecx, dword [esi + 0x1c]
test ecx, ecx
jne 0x460f5d
mov ecx, dword [esp + 0xf4]
mov ecx, dword [ecx + 0x40]
mov eax, dword [esi + 0x18]
push esi
mov esi, dword [esp + 0x38]
add eax, ecx
mov ecx, esi
mov dword [esp + 0x24], eax
call fcn.00452b60
test eax, eax
je 0x460f9c
mov edx, dword [esp + 0xf4]
push ecx
mov ecx, esp
mov dword [esp + 0x2c], esp
mov eax, dword [edx + 0x40]
mov dword [ecx], eax
lea ecx, [esp + 0x24]
call fcn.00422ba0
mov dword [esp + 0x24], 1
jmp 0x460fb5
mov ecx, esi
call fcn.00440930
push ecx
mov ecx, esp
mov dword [esp + 0x2c], esp
mov dword [ecx], eax
lea ecx, [esp + 0x24]
call fcn.00422ba0
mov ecx, dword [esp + 0x20]
test ecx, ecx
jge 0x460fc3
xor ecx, ecx
mov dword [esp + 0x20], ecx
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
mov eax, 0x91a2b3c5
mov esi, edx
imul ecx
add edx, ecx
sar edx, 0xb
mov eax, edx
shr eax, 0x1f
add edx, eax
lea eax, [esi + esi*2]
lea eax, [eax + eax*4]
shl eax, 2
sub ecx, eax
lea eax, [edx + edx*2]
push ecx
lea ecx, [eax + eax*4]
shl ecx, 2
sub esi, ecx
push esi
push edx
lea edx, [esp + 0x20]
push 0x4bb640
push edx
call fcn.004827a3
mov esi, dword [esp + 0x4c]
mov ebx, dword [esp + 0x2c]
add esp, 0x14
jmp 0x46102e
push 0x4be06c
lea ecx, [esp + 0x18]
call fcn.004845bc
push 3
lea eax, [esp + 0x50]
push ebp
push eax
mov ecx, edi
call fcn.0048324f
mov ecx, dword [esp + 0x14]
mov eax, dword [eax]
push ecx
push eax
call fcn.0046f2f7
add esp, 8
lea ecx, [esp + 0x4c]
test eax, eax
setne byte [esp + 0x13]
call fcn.00484433
mov al, byte [esp + 0x13]
test al, al
je 0x461074
mov edx, dword [esp + 0x14]
mov ecx, edi
push edx
push 3
push ebp
call fcn.00483224
cmp dword [ebx], 0
je 0x461163
cmp dword [esi + 0x28], 6
je 0x461163
mov ecx, dword [esi + 0x1c]
test ecx, ecx
jne 0x461098
mov eax, dword [esp + 0xf4]
mov ecx, dword [eax + 0x40]
mov eax, dword [ebx + 0x1c]
mov ebx, dword [esi + 0x14]
sub eax, ebx
add eax, ecx
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x24]
test eax, eax
je 0x4610d0
mov ecx, dword [esp + 0xf4]
mov eax, dword [esp + 0x5c]
push ecx
mov edx, dword [ecx + 0x40]
mov ecx, esp
sub eax, edx
mov dword [esp + 0x2c], esp
mov dword [ecx], eax
lea ecx, [esp + 0x20]
call fcn.00461330
push 0
lea ecx, [esp + 0x20]
call fcn.00482ede
mov ebx, dword [eax]
push 0
lea ecx, [esp + 0x20]
call fcn.00482ede
mov edx, dword [eax + 4]
push 0
lea ecx, [esp + 0x20]
mov dword [esp + 0x38], edx
call fcn.00482ede
mov eax, dword [eax + 8]
push 0
lea ecx, [esp + 0x20]
mov dword [esp + 0x28], eax
call fcn.00482ede
mov ecx, dword [eax + 0xc]
push 0
mov dword [esp + 0x2c], ecx
lea ecx, [esp + 0x20]
call fcn.00482ede
mov esi, dword [eax + 0x10]
push 0
lea ecx, [esp + 0x20]
inc esi
call fcn.00482ede
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x24]
mov eax, dword [eax + 0x14]
push ebx
push edx
mov edx, dword [esp + 0x30]
push ecx
add eax, 0x76c
push edx
push esi
push eax
lea eax, [esp + 0x2c]
push str._d__02d__02d__02d:_02d:_02d
push eax
call fcn.004827a3
mov esi, dword [esp + 0x58]
mov ebx, dword [esp + 0x38]
add esp, 0x20
jmp 0x461171
push 0x4be06c
lea ecx, [esp + 0x18]
call fcn.004845bc
push 4
lea ecx, [esp + 0x48]
push ebp
push ecx
mov ecx, edi
call fcn.0048324f
mov edx, dword [esp + 0x14]
mov eax, dword [eax]
push edx
push eax
call fcn.0046f2f7
add esp, 8
lea ecx, [esp + 0x44]
test eax, eax
setne byte [esp + 0x13]
call fcn.00484433
mov al, byte [esp + 0x13]
test al, al
je 0x4611b7
mov eax, dword [esp + 0x14]
mov ecx, edi
push eax
push 4
push ebp
call fcn.00483224
mov ecx, dword [ebx + 0xc]
mov edx, dword [esi + 0x30]
push ecx
push edx
lea eax, [esp + 0x1c]
push str._d_s
push eax
call fcn.004827a3
add esp, 0x10
lea ecx, [esp + 0x48]
push 5
push ebp
push ecx
mov ecx, edi
call fcn.0048324f
mov edx, dword [esp + 0x14]
mov eax, dword [eax]
push edx
push eax
call fcn.0046f2f7
add esp, 8
lea ecx, [esp + 0x48]
test eax, eax
setne bl
call fcn.00484433
test bl, bl
je 0x461211
mov eax, dword [esp + 0x14]
mov ecx, edi
push eax
push 5
push ebp
call fcn.00483224
mov eax, dword [esi + 0x20]
test eax, eax
mov eax, 0x4bc830
jne 0x461222
mov eax, 0x4bc82c
push eax
lea ecx, [esp + 0x18]
call fcn.004845bc
push 6
lea ecx, [esp + 0x54]
push ebp
push ecx
mov ecx, edi
call fcn.0048324f
mov edx, dword [esp + 0x14]
mov eax, dword [eax]
push edx
push eax
call fcn.0046f2f7
add esp, 8
lea ecx, [esp + 0x50]
test eax, eax
setne bl
call fcn.00484433
test bl, bl
je 0x46126c
mov eax, dword [esp + 0x14]
mov ecx, edi
push eax
push 6
push ebp
call fcn.00483224
mov eax, dword [esp + 0x2c]
mov ebx, dword [esp + 0x58]
mov edi, dword [esp + 0xf4]
inc ebp
mov ecx, dword [esp + 0x30]
inc eax
cmp eax, ecx
mov dword [esp + 0x2c], eax
jb 0x460dad
push fcn.00484433
push 6
lea ecx, [esp + 0xbc]
push 4
push ecx
mov byte [esp + 0xfc], 0xa
call fcn.0046f8b6
lea ecx, [esp + 0x7c]
mov byte [esp + 0xec], 9
call fcn.00484433
lea ecx, [esp + 0x78]
mov byte [esp + 0xec], 8
call fcn.00484433
lea ecx, [esp + 0x74]
mov byte [esp + 0xec], 7
call fcn.00484433
lea ecx, [esp + 0x70]
mov byte [esp + 0xec], 1
call fcn.00484433
lea ecx, [esp + 0x60]
mov byte [esp + 0xec], 0
call fcn.00484433
lea ecx, [esp + 0x14]
mov dword [esp + 0xec], 0xffffffff
call fcn.00484433
mov ecx, dword [esp + 0xe4]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0xe0
ret 4