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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x2c]
cmp eax, dword [ecx + 8]
jbe 0x428db9
sub esp, 0xac
mov eax, dword [esp + 0xb0]
test byte [eax], al
mov ebx, dword [0xe99128]
mov ebp, dword [0x808284]
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], ebp
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
lea ebx, [0x428dd0]
mov dword [esp + 0xa4], ebx
lea ebx, [esp + 0x88]
mov dword [esp + 0xa8], ebx
xor ecx, ecx
mov edx, 0xffffffff
xor ebx, ebx
xor ebp, ebp
xor esi, esi
jmp 0x42830d
mov edi, dword [esp + 0x4c]
lea ecx, [edi + 1]
mov edi, dword [esp + 0xb0]
mov esi, dword [esp + 0x60]
mov eax, edi
mov edx, esi
mov ebx, dword [esp + 0x7c]
cmp ecx, 4
jge 0x4283f5
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x44], ebp
lea edi, [0x808980]
mov edi, dword [edi + ecx*4]
cmp edi, 0x20
sbb ebp, ebp
lea ebx, [0x8089a0]
mov ebx, dword [ebx + ecx*4]
mov dword [esp + 0x84], ebx
cmp ebx, 0x20
sbb ebx, ebx
mov dword [esp + 0x80], ebx
mov ecx, edi
mov ebx, 1
shl ebx, cl
and ebx, ebp
mov dword [esp + 0x68], ebx
mov ebx, dword [esp + 0x4c]
lea eax, [0x808990]
mov eax, dword [eax + ebx*4]
shl esi, cl
and esi, ebp
mov dword [esp + 0x64], esi
lea ebp, [ebx + ebx*2]
mov edi, dword [esp + 0xb0]
mov ebx, dword [edi + ebp*4 + 8]
sub ebx, esi
neg ebx
shl esi, 3
sar ebx, 0x1f
and ebx, esi
add ebx, dword [edi + ebp*4]
mov ebp, dword [edi + 0x34]
mov esi, dword [esp + 0x68]
xchg esi, ebx
neg ebx
xchg esi, ebx
mov ecx, dword [esp + 0x84]
shr ebp, cl
mov ecx, edi
mov edi, dword [esp + 0x80]
and ebp, edi
and esi, ebp
mov edi, dword [esp + 0x64]
cmp esi, edi
jne 0x4283c3
mov esi, dword [esp + 0x68]
lea edi, [esi - 1]
and edi, ebp
jmp 0x4283c9
mov esi, dword [esp + 0x68]
xor edi, edi
mov dword [esp + 0x3c], eax
mov dword [esp + 0xa0], ebx
mov dword [esp + 0x50], edi
mov dword [esp + 0x40], edx
mov ebp, edi
xor ebp, ebp
mov dword [esp + 0x38], ebp
xor edi, edi
mov dword [esp + 0x6c], edi
mov ebp, dword [esp + 0x50]
mov edi, ebp
jmp 0x42867e
mov dword [esp + 0x64], esi
mov ecx, dword [eax + 0x30]
test byte [ecx], al
shl esi, 7
add ecx, esi
mov dword [esp], ecx
mov ecx, dword [esp + 0xb4]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0
call fcn.0042afc0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
cmp eax, 0xffffffff
je 0x4284a4
mov dword [esp + 0x54], eax
shl ecx, 0xd
mov eax, dword [esp + 0x64]
mov ebx, eax
shl eax, 0x16
mov dword [esp + 0x80], eax
add ecx, eax
mov ebp, dword [esp + 0xa4]
mov dword [esp], ecx
inc ebx
shl ebx, 0x16
sub ebx, ecx
mov dword [esp + 4], ebx
lea edx, [esp + 0xa4]
call ebp
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0xb0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004281e0
mov eax, dword [esp + 0x54]
shl eax, 0xd
mov ecx, dword [esp + 0x80]
add eax, ecx
mov ecx, dword [esp + 8]
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], ecx
add esp, 0xac
ret
mov eax, dword [esp + 0xb0]
mov eax, dword [eax + 0x24]
mov ecx, dword [esp + 0x64]
lea eax, [eax + ecx*8]
mov edx, dword [eax]
mov eax, dword [eax + 4]
test eax, 0x80000000
je 0x42865b
mov ebx, 0x40000
je 0x42863e
mov edx, 0x40000
mov dword [esp + 0x18], edx
mov dword [esp + 0x1c], ebx
je 0x428631
mov eax, 0x40000
mov dword [esp + 0x14], eax
call fcn.00435240
lea eax, [0x676c8b]
mov dword [esp], eax
mov dword [esp + 4], 0x11
call fcn.00435a90
mov dword [esp + 4], 0
mov dword [esp], 3
call fcn.004358d0
lea eax, [0x672c83]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435a90
mov eax, dword [esp + 0x64]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004358d0
lea eax, [0x6731c9]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0x1c]
mov dword [esp], eax
call fcn.00435780
lea eax, [0x672bf9]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0x18]
mov dword [esp], eax
call fcn.00435780
lea eax, [0x672bf9]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0x14]
mov dword [esp], eax
call fcn.00435780
lea eax, [0x672bf5]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435a90
call fcn.004352b0
call fcn.00435240
lea eax, [0x6772cc]
mov dword [esp], eax
mov dword [esp + 4], 0x12
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0xb4]
mov dword [esp], eax
call fcn.00435780
call fcn.00435440
call fcn.004352b0
lea eax, [0x676514]
mov dword [esp], eax
mov dword [esp + 4], 0x10
call fcn.00433ba0
shr eax, 4
and eax, 0x3ffff
jmp 0x4284e8
mov ebp, eax
shl eax, 0xe
shr edx, 0x12
or edx, eax
and edx, 0x3ffff
test ebp, 0x80000000
mov eax, ebp
jmp 0x4284d5
mov ebx, edx
and ebx, 0x3ffff
test eax, 0x80000000
jmp 0x4284ca
inc edi
mov dword [esp + 0x38], eax
mov dword [esp + 0x6c], ebp
mov eax, dword [esp + 0x3c]
mov ebp, dword [esp + 0x50]
cmp edi, esi
jge 0x428857
lea ebp, [ebx + edi*8]
mov eax, dword [ebp + 4]
mov dword [esp + 0x7c], eax
test eax, eax
sete al
mov ebp, dword [ebp]
mov dword [esp + 0x78], ebp
test ebp, ebp
xchg ebp, ebx
sete bl
xchg ebp, ebx
and eax, ebp
test al, al
je 0x4286b3
xor eax, eax
mov ebp, dword [esp + 0x6c]
jmp 0x42866d
mov dword [esp + 0x5c], edi
mov eax, dword [esp + 0x3c]
cmp eax, 0x20
sbb ebx, ebx
mov ebp, dword [esp + 0x4c]
lea esi, [0x8089a0]
mov ecx, dword [esi + ebp*4]
cmp ecx, 0x20
sbb esi, esi
mov ebp, dword [esp + 0xa4]
mov dword [esp + 0x80], ebp
mov ebp, dword [esp + 0x64]
add ebp, edi
mov dword [esp + 0x60], ebp
shl ebp, cl
and esi, ebp
mov dword [esp], esi
mov ecx, eax
mov ebp, 1
shl ebp, cl
and ebp, ebx
shl ebp, 0xd
mov dword [esp + 4], ebp
lea edx, [esp + 0xa4]
mov ebp, dword [esp + 0x80]
call ebp
mov eax, dword [esp + 0x7c]
test eax, 0x80000000
je 0x428729
mov ebp, dword [esp + 0x78]
mov ebx, 0x40000
jmp 0x428735
mov ebx, dword [esp + 0x78]
mov ebp, ebx
and ebx, 0x3ffff
mov esi, dword [esp + 0x38]
lea edi, [esi + ebx]
mov ecx, ebx
mov ebx, dword [esp + 0xb4]
cmp ebx, edi
jbe 0x42881e
test eax, 0x80000000
je 0x42875b
mov edx, 0x40000
jmp 0x428772
mov edi, eax
shl eax, 0xe
mov edx, ebp
shr ebp, 0x12
or eax, ebp
and eax, 0x3ffff
mov ebp, edx
mov edx, eax
mov eax, edi
cmp ebx, edx
jbe 0x4282f3
test esi, esi
jne 0x428785
test eax, 0x80000000
jmp 0x4287ab
mov ebp, dword [esp + 0x3c]
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 0x4287f8
test eax, 0x80000000
mov ebx, dword [esp + 0xb4]
je 0x4287bb
mov ecx, dword [esp + 0x3c]
cmp ecx, 0x20
mov eax, 0x40000
jmp 0x4287ca
shr eax, 4
and eax, 0x3ffff
mov ecx, dword [esp + 0x3c]
cmp ecx, 0x20
sbb ebp, ebp
mov esi, dword [esp + 0x5c]
lea edi, [esi + 1]
shl edi, cl
and edi, ebp
sub edi, eax
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0xa0]
mov ebp, edi
mov edi, esi
mov esi, dword [esp + 0x68]
jmp 0x42866d
lea eax, [esi + ebx]
mov ecx, dword [esp + 0xb0]
mov edx, dword [esp + 0x40]
mov ebx, dword [esp + 0xa0]
mov esi, dword [esp + 0x68]
mov edi, dword [esp + 0x5c]
mov ebp, dword [esp + 0x6c]
jmp 0x42866d
test esi, esi
jne 0x428835
mov ecx, dword [esp + 0x3c]
cmp ecx, 0x20
sbb eax, eax
mov edx, dword [esp + 0x5c]
shl edx, cl
and edx, eax
jmp 0x428839
mov edx, dword [esp + 0x6c]
mov ecx, dword [esp + 0xb0]
mov ebx, dword [esp + 0xa0]
mov ebp, dword [esp + 0x50]
mov esi, dword [esp + 0x68]
mov eax, edx
mov edx, dword [esp + 0x40]
jmp 0x42885f
mov edi, dword [esp + 0x38]
mov eax, dword [esp + 0x6c]
mov ebx, dword [esp + 0xb4]
cmp ebx, edi
jbe 0x428bad
mov eax, dword [esp + 0x4c]
test eax, eax
je 0x428b8e
mov edi, dword [esp + 0x48]
test edi, 0x80000000
je 0x42889f
mov dword [esp + 0x98], eax
mov eax, 0x40000
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x98]
jmp 0x4288b7
mov esi, dword [esp + 0x44]
and esi, 0x3ffff
test edi, 0x80000000
mov dword [esp + 0x34], esi
mov esi, dword [esp + 0x68]
je 0x4288d2
mov dword [esp + 0x90], eax
mov eax, 0x40000
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x90]
jmp 0x4288f6
shl edi, 0xe
mov esi, dword [esp + 0x44]
shr esi, 0x12
or esi, edi
and esi, 0x3ffff
mov edi, dword [esp + 0x48]
test edi, 0x80000000
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0x68]
je 0x4288ff
mov edi, 0x40000
jmp 0x428908
shr edi, 4
and edi, 0x3ffff
mov dword [esp + 0x2c], edi
call fcn.00435240
lea eax, [0x676c8b]
mov dword [esp], eax
mov dword [esp + 4], 0x11
call fcn.00435a90
mov eax, dword [esp + 0x4c]
lea ecx, [eax - 1]
mov edx, ecx
sar ecx, 0x1f
mov dword [esp + 4], ecx
mov dword [esp], edx
call fcn.004358d0
lea eax, [0x672c83]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435a90
mov eax, dword [esp + 0x40]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004358d0
lea eax, [0x672f8a]
mov dword [esp], eax
mov dword [esp + 4], 4
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0x34]
mov dword [esp], eax
call fcn.00435780
lea eax, [0x672bf9]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0x30]
mov dword [esp], eax
call fcn.00435780
lea eax, [0x672bf9]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
call fcn.00435780
call fcn.00435440
call fcn.004352b0
call fcn.00435240
lea eax, [0x676c58]
mov dword [esp], eax
mov dword [esp + 4], 0x11
call fcn.00435a90
mov eax, dword [esp + 0x4c]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 0x74], eax
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004358d0
lea eax, [0x67470c]
mov dword [esp], eax
mov dword [esp + 4], 0xb
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0xb4]
mov dword [esp], eax
call fcn.00435780
lea eax, [0x67361a]
mov dword [esp], eax
mov dword [esp + 4], 7
call fcn.00435a90
mov eax, dword [esp + 0x50]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004358d0
call fcn.00435440
call fcn.004352b0
mov eax, dword [esp + 0xb0]
mov eax, dword [eax + 0x34]
mov dword [esp + 0x80], eax
call fcn.00435240
lea eax, [0x67a03f]
mov dword [esp], eax
mov dword [esp + 4], 0x18
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.00435950
lea eax, [0x67333c]
mov dword [esp], eax
mov dword [esp + 4], 6
call fcn.00435a90
mov eax, dword [esp + 0x64]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.004358d0
call fcn.00435440
call fcn.004352b0
mov eax, dword [esp + 0x4c]
lea ecx, [0x8089a0]
mov ecx, dword [ecx + eax*4]
mov dword [esp + 0x84], ecx
lea edx, [0x808980]
mov edx, dword [edx + eax*4]
mov dword [esp + 0x70], edx
call fcn.00435240
lea eax, [0x67c4dd]
mov dword [esp], eax
mov dword [esp + 4], 0x1d
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0x84]
mov dword [esp], eax
call fcn.00435780
lea eax, [0x6783b8]
mov dword [esp], eax
mov dword [esp + 4], 0x15
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call fcn.00435780
call fcn.00435440
call fcn.004352b0
xor eax, eax
jmp 0x428d21
mov eax, dword [0x808284]
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], eax
add esp, 0xac
ret
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x4c]
lea edx, [0x8089a0]
mov eax, dword [edx + eax*4]
mov dword [esp + 0x84], eax
cmp eax, 0x20
sbb edx, edx
mov dword [esp + 0x80], edx
mov ebx, dword [esp + 0x88]
mov dword [esp], ecx
mov dword [esp + 4], ebx
call fcn.004281e0
mov eax, dword [esp + 0x6c]
shl eax, 0xd
mov ecx, dword [esp + 8]
mov edx, ecx
mov ecx, dword [esp + 0x84]
mov ebx, dword [esp + 0x64]
shl ebx, cl
mov ecx, dword [esp + 0x80]
and ebx, ecx
add eax, ebx
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], edx
add esp, 0xac
ret
mov dword [esp + 0x20], ebp
call fcn.00435240
lea eax, [0x676c8b]
mov dword [esp], eax
mov dword [esp + 4], 0x11
call fcn.00435a90
mov eax, dword [esp + 0x74]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x4c]
mov dword [esp], ecx
call fcn.004358d0
lea eax, [0x672c83]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435a90
mov eax, dword [esp + 0x64]
mov ecx, dword [esp + 0x58]
lea edx, [ecx + eax]
mov ebx, edx
sar edx, 0x1f
mov dword [esp + 4], edx
mov dword [esp], ebx
call fcn.004358d0
lea eax, [0x6731c9]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0x28]
mov dword [esp], eax
call fcn.00435780
lea eax, [0x672bf9]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0x24]
mov dword [esp], eax
call fcn.00435780
lea eax, [0x672bf9]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435a90
mov dword [esp + 4], 0
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00435780
lea eax, [0x672bf5]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.00435a90
call fcn.004352b0
mov eax, dword [esp + 0x58]
inc eax
mov ecx, dword [esp + 0x68]
cmp eax, ecx
jge 0x428da2
mov edx, dword [esp + 0xa0]
lea ebx, [edx + eax*8]
mov ebp, dword [ebx + 4]
mov ebx, dword [ebx]
test ebp, 0x80000000
je 0x428d47
mov esi, 0x40000
jmp 0x428d5b
mov esi, ebx
and ebx, 0x3ffff
test ebp, 0x80000000
mov edi, ebx
mov ebx, esi
mov esi, edi
je 0x428d64
mov ebx, 0x40000
jmp 0x428d7c
mov edi, ebp
shl ebp, 0xe
shr ebx, 0x12
or ebx, ebp
and ebx, 0x3ffff
test edi, 0x80000000
mov ebp, edi
mov dword [esp + 0x58], eax
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], esi
je 0x428d94
mov ebp, 0x40000
jmp 0x428c1e
shr ebp, 4
and ebp, 0x3ffff
jmp 0x428c1e
lea eax, [0x676514]
mov dword [esp], eax
mov dword [esp + 4], 0x10
call fcn.00433ba0
nop
call fcn.0045dbb0
jmp fcn.00428270