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

Disassembly:
sub esp, 0xb0
push ebx
mov ebx, dword [sym.imp.USER32.dll_SendMessageA]
push ebp
mov ebp, ecx
mov ecx, dword [0x6758f0]
xor eax, eax
cmp ecx, eax
mov dword [esp + 0x1c], 0x2f
mov dword [esp + 0x18], 0xffff0002
mov dword [esp + 0x24], eax
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x5c], eax
jle 0x48e6c3
push esi
push edi
mov edx, dword [0x6758ec]
mov esi, dword [edx + eax*4]
mov edx, dword [esp + 0xc4]
mov dword [esp + 0x5c], esi
cmp dword [esi + 8], edx
jne 0x48e6b4
mov eax, dword [esp + 0xc8]
mov edi, 0x10
mov dword [esp + 0x1c], eax
mov dword [esp + 0x40], edi
mov dword [esp + 0x3c], edi
mov ecx, dword [esi + 4]
or ecx, 0xf0000000
lea eax, [esp + 0x1c]
mov dword [esp + 0x48], ecx
mov ecx, dword [ebp + 0x610]
mov edx, dword [esi + 0xc]
push eax
push 0
push 0x1100
push ecx
mov dword [esp + 0x44], edx
call ebx
mov edx, dword [esp + 0xcc]
mov dword [esp + 0x18], eax
push edx
push eax
mov eax, dword [esi + 4]
mov ecx, ebp
push eax
call fcn.0048e0c0
mov ecx, edi
xor eax, eax
lea edi, [esp + 0x80]
mov dword [esp + 0x50], 0
rep stosd dword es:[edi], eax
mov eax, dword [esi + 0x20]
shr eax, 2
mov dword [esp + 0x7c], eax
xor ecx, ecx
test eax, eax
mov dword [esp + 0x54], ecx
jle 0x48e69a
mov edx, dword [esi + 0x18]
mov esi, dword [edx + ecx*4]
test esi, esi
je 0x48e681
push esi
call fcn.004f4060
mov edi, eax
mov eax, dword [esp + 0x54]
add esp, 4
test eax, eax
jne 0x48e1cf
xor eax, eax
cmp edi, 0x9000000
setne al
jmp 0x48e1da
xor eax, eax
cmp edi, 0x9000000
sete al
test eax, eax
jne 0x48e681
mov ecx, dword [esp + 0xcc]
push esi
call fcn.004916a0
mov dword [eax], 1
mov eax, edi
shr eax, 0x18
mov dword [esp + 0x14], eax
js 0x48e681
cmp eax, 0x10
jae 0x48e681
cmp edi, 0x5000000
ja 0x48e47f
je 0x48e39a
cmp edi, 0x1000000
je 0x48e2dc
cmp edi, 0x2000000
jne 0x48e681
lea eax, [esp + 0x10]
lea ecx, [esp + 0x58]
push eax
push ecx
push esi
mov ecx, 0x675a58
call fcn.004f4970
test eax, eax
je 0x48e681
mov edx, dword [esp + 0x58]
mov eax, dword [edx + 0xc]
mov ecx, dword [eax - 8]
test ecx, ecx
je 0x48e681
mov ecx, dword [esp + 0x14]
mov eax, 6
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], eax
mov eax, dword [esp + ecx*4 + 0x80]
lea edi, [esp + ecx*4 + 0x80]
test eax, eax
jne 0x48e2b8
mov ecx, dword [ebp + 0x610]
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], edx
push eax
push 0
push 0x1100
push ecx
mov dword [esp + 0x58], 0x50000000
mov dword [esp + 0x44], 0x66884c
call ebx
mov dword [edi], eax
mov eax, dword [esp + 0x10]
mov edx, dword [edi]
mov ecx, dword [esp + 0x58]
inc eax
or eax, 0x50000000
mov dword [esp + 0x1c], edx
mov dword [esp + 0x48], eax
mov edx, dword [ecx + 0xc]
mov dword [esp + 0x34], edx
jmp 0x48e465
lea edx, [esp + 0x10]
lea eax, [esp + 0x68]
push edx
push eax
push esi
mov ecx, 0x6759c8
call fcn.004f4970
test eax, eax
je 0x48e681
mov eax, dword [esp + 0x68]
test byte [eax + 8], 2
jne 0x48e681
mov ecx, dword [eax]
mov edx, dword [ecx - 8]
test edx, edx
je 0x48e681
mov edx, dword [esp + 0x14]
xor esi, esi
mov dword [esp + 0x40], esi
mov dword [esp + 0x3c], esi
mov ecx, dword [esp + edx*4 + 0x80]
lea edi, [esp + edx*4 + 0x80]
cmp ecx, esi
jne 0x48e366
mov edx, dword [ebp + 0x610]
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], eax
push ecx
push esi
push 0x1100
push edx
mov dword [esp + 0x58], 0x30000000
mov dword [esp + 0x44], 0x661084
call ebx
mov dword [edi], eax
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x10]
mov ecx, dword [edi]
inc edx
mov dword [esp + 0x1c], ecx
or edx, 0x30000000
lea ecx, [esp + 0x1c]
mov dword [esp + 0x48], edx
mov edx, dword [ebp + 0x610]
mov eax, dword [eax]
push ecx
push esi
push 0x1100
push edx
mov dword [esp + 0x44], eax
call ebx
jmp 0x48e681
push esi
call fcn.004f4040
add esp, 4
test eax, eax
jne 0x48e681
lea eax, [esp + 0x10]
mov ecx, 0x6759e4
push eax
push 0
push esi
call fcn.004f4200
mov esi, eax
test esi, esi
je 0x48e681
push esi
call fcn.004f3f80
add esp, 4
test eax, eax
jne 0x48e681
mov edx, dword [0x6759e4]
push esi
mov ecx, 0x6759e4
call dword [edx + 0x14]
mov esi, eax
push esi
call fcn.00492700
add esp, 4
test eax, eax
jne 0x48e681
mov eax, 1
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x14]
lea edi, [esp + eax*4 + 0x80]
mov eax, dword [esp + eax*4 + 0x80]
test eax, eax
jne 0x48e44c
mov eax, dword [ebp + 0x610]
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x1c]
mov dword [esp + 0x1c], ecx
push edx
push 0
push 0x1100
push eax
mov dword [esp + 0x58], 0x20000000
mov dword [esp + 0x44], 0x661094
call ebx
mov dword [edi], eax
mov edx, dword [esp + 0x10]
mov ecx, dword [edi]
inc edx
mov dword [esp + 0x1c], ecx
or edx, 0x20000000
mov dword [esp + 0x34], esi
mov dword [esp + 0x48], edx
mov ecx, dword [ebp + 0x610]
lea eax, [esp + 0x1c]
push eax
push 0
push 0x1100
push ecx
call ebx
jmp 0x48e681
cmp edi, 0x9000000
je 0x48e55a
cmp edi, 0xa000000
jne 0x48e681
lea edx, [esp + 0x10]
lea eax, [esp + 0x6c]
push edx
push eax
push esi
mov ecx, 0x675a3c
call fcn.004f4970
test eax, eax
je 0x48e681
mov eax, dword [esp + 0x6c]
test byte [eax + 8], 4
jne 0x48e681
mov ecx, dword [eax]
mov edx, dword [ecx - 8]
test edx, edx
je 0x48e681
mov edx, dword [esp + 0x14]
mov ecx, 4
mov dword [esp + 0x40], ecx
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + edx*4 + 0x80]
lea edi, [esp + edx*4 + 0x80]
test ecx, ecx
jne 0x48e525
mov edx, dword [ebp + 0x610]
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], eax
push ecx
push 0
push 0x1100
push edx
mov dword [esp + 0x58], 0x40000000
mov dword [esp + 0x44], 0x661078
call ebx
mov dword [edi], eax
mov eax, dword [esp + 0x6c]
mov edx, dword [esp + 0x10]
mov ecx, dword [edi]
inc edx
mov dword [esp + 0x1c], ecx
or edx, 0x40000000
lea ecx, [esp + 0x1c]
mov dword [esp + 0x48], edx
mov edx, dword [ebp + 0x610]
mov eax, dword [eax]
push ecx
push 0
push 0x1100
push edx
mov dword [esp + 0x44], eax
call ebx
jmp 0x48e681
lea eax, [esp + 0x10]
lea ecx, [esp + 0x60]
push eax
push ecx
push esi
mov ecx, 0x675a20
call fcn.004f4970
test eax, eax
je 0x48e681
mov ecx, dword [esp + 0x60]
test byte [ecx + 8], 2
jne 0x48e681
mov edx, dword [ecx]
mov eax, dword [edx - 8]
test eax, eax
je 0x48e681
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
mov dword [esp + 0x1c], edx
mov edx, dword [ebp + 0x610]
lea esi, [eax + 1]
mov eax, dword [ecx + 0x44]
shl esi, 0x10
and esi, 0xfff0000
or esi, 0x10000000
neg eax
sbb eax, eax
mov dword [esp + 0x48], esi
and al, 0xfd
add eax, 3
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], eax
mov eax, dword [ecx]
lea ecx, [esp + 0x1c]
push ecx
push 0
push 0x1100
push edx
mov dword [esp + 0x44], eax
call ebx
mov dword [esp + 0x1c], eax
mov eax, 2
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x60]
mov ecx, dword [eax + 0x3c]
test ecx, ecx
jne 0x48e603
xor ecx, ecx
jmp 0x48e606
mov ecx, dword [eax + 0x34]
mov eax, dword [eax + 0x3c]
xor edi, edi
shr eax, 2
test eax, eax
mov dword [esp + 0x78], eax
jle 0x48e681
mov dword [esp + 0x14], ecx
mov ecx, dword [esp + 0x14]
lea eax, [esp + 0x70]
push 0
push eax
mov edx, dword [ecx]
mov ecx, 0x675a04
push edx
call fcn.004f4970
test eax, eax
je 0x48e66d
mov eax, dword [esp + 0x70]
test byte [eax + 0x10], 0x80
jne 0x48e66d
mov ecx, dword [eax]
mov edx, dword [ecx - 8]
test edx, edx
je 0x48e66d
lea edx, [edi + 1]
lea ecx, [esp + 0x1c]
or edx, esi
push ecx
mov dword [esp + 0x4c], edx
mov edx, dword [ebp + 0x610]
mov eax, dword [eax]
push 0
push 0x1100
push edx
mov dword [esp + 0x44], eax
call ebx
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x78]
inc edi
add ecx, 4
cmp edi, eax
mov dword [esp + 0x14], ecx
jl 0x48e61a
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x7c]
mov esi, dword [esp + 0x5c]
inc ecx
cmp ecx, eax
mov dword [esp + 0x54], ecx
jl 0x48e1a1
mov ecx, dword [esp + 0x50]
inc ecx
cmp ecx, 2
mov dword [esp + 0x50], ecx
jl 0x48e193
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x74]
inc eax
cmp eax, ecx
mov dword [esp + 0x64], eax
jl 0x48e0fe
pop edi
pop esi
mov eax, dword [esp + 0xc0]
mov ecx, dword [ebp + 0x610]
push eax
push 0
push 0x1113
push ecx
call ebx
pop ebp
pop ebx
add esp, 0xb0
ret 0xc