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

Disassembly:
mov ecx, dword [0x85d738]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x42577d
sub esp, 0x68
mov ebx, dword [esp + 0x6c]
test byte [ebx], al
mov ebp, dword [0x85d690]
mov esi, dword [0x491078]
mov dword [esp + 0x54], ebp
mov dword [esp + 0x58], esi
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
lea ebp, [0x425790]
mov dword [esp + 0x60], ebp
lea ebp, [esp + 0x54]
mov dword [esp + 0x64], ebp
xor eax, eax
xor ecx, ecx
xor edx, edx
jmp 0x425350
mov ebp, dword [esp + 0x20]
inc ebp
mov esi, dword [esp + 0x6c]
mov ecx, dword [esp + 0x28]
mov ebx, esi
mov eax, ebp
mov edx, dword [esp + 0x44]
cmp eax, 4
jge 0x42541c
mov dword [esp + 0x1c], edx
lea ebp, [0x491230]
mov esi, dword [ebp + eax*4]
mov edi, ecx
mov ecx, esi
mov ebp, 1
shl ebp, cl
shl edi, cl
mov dword [esp + 0x50], edi
lea edx, [eax + eax*2]
mov edi, dword [ebx + edx*4 + 8]
mov dword [esp + 0x4c], edi
lea edi, [0x491250]
mov edi, dword [edi + eax*4]
mov edx, dword [ebx + edx*4]
cmp ecx, 0x20
sbb esi, esi
and ebp, esi
mov dword [esp + 0x30], ebp
mov ecx, edi
mov edi, dword [esp + 0x50]
and edi, esi
lea esi, [edi + ebp]
mov ebp, dword [esp + 0x4c]
cmp ebp, esi
jb 0x425773
cmp edi, esi
ja 0x42576a
mov dword [esp + 0x20], eax
mov dword [esp + 0x48], ecx
mov dword [esp + 0x2c], edi
sub ebp, edi
xchg ebp, ebx
neg ebx
xchg ebp, ebx
shl edi, 3
sar ebp, 0x1f
and ebp, edi
mov edi, dword [ebx + 0x34]
mov ebx, dword [esp + 0x30]
neg ebx
lea esi, [0x491240]
mov eax, dword [esi + eax*4]
mov ecx, eax
shr edi, cl
add ebp, edx
cmp eax, 0x20
sbb eax, eax
and edi, eax
and ebx, edi
mov esi, dword [esp + 0x2c]
cmp ebx, esi
jne 0x425409
mov ecx, dword [esp + 0x30]
lea ebx, [ecx - 1]
and ebx, edi
jmp 0x42540f
mov ecx, dword [esp + 0x30]
xor ebx, ebx
mov dword [esp + 0x5c], ebp
xor eax, eax
xor edx, edx
jmp 0x4254ff
mov edx, dword [ebx + 0x30]
test byte [edx], al
cmp ecx, 0x400
jae 0x4254f2
mov dword [esp + 0x2c], ecx
shl ecx, 7
add ecx, edx
mov dword [esp], ecx
mov ecx, dword [esp + 0x70]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
call fcn.00427c30
mov eax, dword [esp + 0xc]
cmp eax, 0xffffffff
je 0x4254b1
mov ecx, dword [esp + 0x10]
shl eax, 0xd
shl ecx, 0xd
mov ebx, dword [esp + 0x60]
mov ebp, dword [esp + 0x2c]
lea esi, [ebp + 1]
shl ebp, 0x16
add eax, ebp
mov dword [esp + 0x3c], eax
add ecx, ebp
shl esi, 0x16
sub esi, ecx
mov dword [esp], ecx
mov dword [esp + 4], esi
lea edx, [esp + 0x60]
call ebx
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x6c]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00425250
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x74], ecx
mov dword [esp + 0x78], eax
add esp, 0x68
ret
mov edx, dword [esp + 0x6c]
mov ecx, dword [edx + 0x28]
mov eax, dword [esp + 0x2c]
cmp eax, ecx
jae 0x4254ed
mov ecx, dword [edx + 0x24]
lea eax, [ecx + eax*8]
mov eax, dword [eax + 4]
nop
test eax, 0x80000000
je 0x4254d1
nop
je 0x4254d4
nop
je 0x4254d7
lea eax, [0x7bf23a]
mov dword [esp], eax
mov dword [esp + 4], 0x10
call fcn.00430110
call fcn.00452b60
mov eax, ecx
mov ecx, 0x400
call fcn.00452b70
inc ebx
cmp ebx, ecx
jge 0x42569f
jae 0x425763
mov dword [esp + 0x14], eax
lea edi, [ebp + ebx*8]
mov eax, dword [edi + 4]
mov dword [esp + 0x44], eax
mov edi, dword [edi]
mov dword [esp + 0x18], edi
test eax, eax
sete al
test edi, edi
xchg edi, ebx
sete bl
xchg edi, ebx
and eax, edi
test al, al
je 0x42553a
xor eax, eax
jmp 0x4254fe
mov dword [esp + 0x24], ebx
mov dword [esp + 0x38], edx
mov eax, dword [esp + 0x60]
lea ebp, [ebx + esi]
mov dword [esp + 0x28], ebp
mov ecx, dword [esp + 0x48]
mov edi, 1
shl edi, cl
mov esi, dword [esp + 0x20]
lea ebx, [0x491240]
mov edx, dword [ebx + esi*4]
mov ecx, edx
shl ebp, cl
mov ebx, dword [esp + 0x48]
cmp ebx, 0x20
sbb esi, esi
and esi, edi
shl esi, 0xd
cmp ecx, 0x20
sbb edi, edi
and edi, ebp
mov dword [esp], edi
mov dword [esp + 4], esi
lea edx, [esp + 0x60]
call eax
mov eax, dword [esp + 0x44]
test eax, 0x80000000
je 0x4255a1
mov ebp, dword [esp + 0x18]
mov ebx, 0x40000
jmp 0x4255ad
mov ebx, dword [esp + 0x18]
mov ebp, ebx
and ebx, 0x3ffff
mov esi, dword [esp + 0x14]
lea edi, [esi + ebx]
mov ecx, ebx
mov ebx, dword [esp + 0x70]
cmp ebx, edi
jbe 0x425676
test eax, 0x80000000
je 0x4255d0
mov edx, 0x40000
jmp 0x4255e3
mov edi, eax
shl eax, 0xe
shr ebp, 0x12
or eax, ebp
and eax, 0x3ffff
mov edx, eax
mov eax, edi
cmp ebx, edx
jbe 0x42533b
test esi, esi
jne 0x4255f6
test eax, 0x80000000
jmp 0x425619
mov ebp, dword [esp + 0x48]
cmp ebp, 0x20
sbb edi, edi
mov edx, ecx
mov ecx, ebp
mov ebx, 1
shl ebx, cl
and ebx, edi
cmp edx, ebx
jae 0x42565a
test eax, 0x80000000
mov ebx, dword [esp + 0x70]
je 0x425629
mov ecx, dword [esp + 0x48]
cmp ecx, 0x20
mov eax, 0x40000
jmp 0x425638
shr eax, 4
and eax, 0x3ffff
mov ecx, dword [esp + 0x48]
cmp ecx, 0x20
sbb edx, edx
mov ebp, dword [esp + 0x24]
lea esi, [ebp + 1]
shl esi, cl
and edx, esi
sub edx, eax
mov ecx, dword [esp + 0x30]
mov ebx, ebp
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0x2c]
jmp 0x4254fe
lea eax, [esi + ebx]
mov ecx, dword [esp + 0x30]
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0x2c]
mov edx, dword [esp + 0x38]
jmp 0x4254fe
test esi, esi
jne 0x42568d
mov ecx, dword [esp + 0x48]
cmp ecx, 0x20
sbb edx, edx
mov eax, dword [esp + 0x24]
shl eax, cl
and edx, eax
jmp 0x425691
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x30]
mov ebp, dword [esp + 0x5c]
mov esi, dword [esp + 0x2c]
mov eax, edi
mov ebx, dword [esp + 0x70]
cmp ebx, eax
jbe 0x4256d8
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4256c2
mov eax, dword [esp + 0x1c]
test eax, 0x80000000
je 0x4256ba
je 0x4256bc
je 0x4256be
xor eax, eax
jmp 0x425731
mov eax, dword [0x491078]
mov dword [esp + 0x74], 0
mov dword [esp + 0x78], eax
add esp, 0x68
ret
shl edx, 0xd
mov dword [esp + 0x34], edx
mov eax, dword [esp + 0x54]
mov ebx, dword [esp + 0x20]
lea ebp, [0x491240]
mov ecx, dword [ebp + ebx*4]
mov dword [esp + 0x48], ecx
shl esi, cl
mov dword [esp + 0x40], esi
mov ebx, dword [esp + 0x6c]
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.00425250
mov eax, dword [esp + 8]
mov edx, dword [esp + 0x48]
cmp edx, 0x20
sbb edx, edx
mov ebx, dword [esp + 0x40]
and ebx, edx
mov edx, dword [esp + 0x34]
add edx, ebx
mov dword [esp + 0x74], edx
mov dword [esp + 0x78], eax
add esp, 0x68
ret
inc eax
cmp eax, ecx
jge 0x42574d
lea edx, [ebp + eax*8]
mov edx, dword [edx + 4]
nop
test edx, 0x80000000
je 0x425745
nop
je 0x425748
nop
jne 0x425730
jmp 0x425730
lea eax, [0x7bf23a]
mov dword [esp], eax
mov dword [esp + 4], 0x10
call fcn.00430110
mov eax, ebx
call fcn.00452b60
mov eax, edi
mov ecx, esi
call fcn.00452bc0
mov ecx, esi
mov edx, ebp
call fcn.00452ba0
nop
call fcn.004516e0
jmp fcn.004252e0