Function at 0x402880
Capabilities:
Parse pe header
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
push ebx
push esi
mov ecx, 0x3e
push edi
lea eax, [ecx + 0x63]
xor esi, esi
mov edx, 0x61a6
mov dword [ebp - 8], 0x6f
nop
cmp ecx, 0x6f
cmovl ecx, dword [ebp - 8]
dec edx
jne 0x4028a0
cmp dword [ebp + 0xc], esi
je 0x402baa
mov ecx, 0x5325
jmp 0x4028c0
mov eax, 0xae4c415d
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x4028c0
cmp dword [ebp + 0x10], esi
jne 0x4028e3
cmp dword [ebp + 0x18], esi
je 0x402bbd
xor esi, esi
inc esi
mov eax, 0x66666667
imul esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*4]
add ecx, ecx
mov eax, esi
sub eax, ecx
jne 0x402905
add esi, 2
cmp esi, 0x6a2e
jl 0x4028e5
xor esi, esi
mov ebx, 0x2549
mov eax, 0x1a6d01a7
imul ebx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
jne 0x402914
mov eax, dword [ebp + 0xc]
mov ecx, 0x3005
mov edx, dword [eax + 0x3c]
add edx, eax
mov dword [ebp - 4], edx
mov dword [ebp - 8], 0x2f
mov ebx, 0xd3
mov eax, 0x67
cmp eax, 0x2f
cmovl eax, dword [ebp - 8]
dec ecx
jne 0x402948
mov eax, dword [ebp + 0xc]
mov ecx, 0x5a4d
cmp word [eax], cx
jne 0x402bbd
cmp dword [edx], 0x4550
jne 0x402bbd
xor ecx, ecx
inc ecx
mov eax, ecx
and eax, 0x80000003
jns 0x402980
dec eax
or eax, 0xfffffffc
inc eax
jne 0x402984
add ecx, ecx
cmp ecx, 0x3776
jl 0x402971
mov eax, 0x1ce1
mov edx, 0xe9
mov ecx, 0x91
jmp 0x4029a0
cmp ecx, edx
cmovg ecx, edx
dec eax
jne 0x4029a0
mov ecx, 0x40bb
lea ecx, [ecx]
mov eax, 0x891ac73b
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x4029b0
mov eax, dword [ebp - 4]
mov ecx, 0x1d67
mov eax, dword [eax + 0x7c]
mov dword [ebp - 8], eax
mov eax, 0xb70fbb5b
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x4029d3
cmp dword [ebp - 8], esi
je 0x402bbd
xor edi, edi
inc edi
mov eax, 0x66666667
imul edi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, edi
lea eax, [eax + eax*4]
sub ecx, eax
jne 0x402a0e
inc edi
cmp edi, 0x6802
jl 0x4029f3
mov eax, dword [ebp - 4]
mov edi, 0x39a6
mov ecx, dword [eax + 0x78]
add ecx, dword [ebp + 0xc]
mov esi, 0x664d
mov dword [ebp - 4], ecx
lea esp, [esp]
mov eax, 0xb92143fb
imul esi
add edx, esi
sar edx, 7
mov esi, edx
shr esi, 0x1f
add esi, edx
jne 0x402a30
mov ecx, 0x4073
lea ebx, [ebx]
mov eax, 0x99d722db
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x402a50
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x24]
add eax, dword [ebp + 0xc]
mov edx, dword [ecx + 0x20]
add edx, dword [ebp + 0xc]
mov dword [ebp - 0x10], eax
mov eax, dword [ecx + 0x1c]
add eax, dword [ebp + 0xc]
mov dword [ebp - 0xc], edx
mov dword [ebp - 0x14], eax
mov eax, dword [ebp + 0x10]
shr eax, 0x10
test eax, eax
je 0x402abb
xor ebx, ebx
cmp dword [ecx + 0x18], ebx
jbe 0x402ab6
mov eax, dword [edx + ebx*4]
add eax, dword [ebp + 0xc]
push eax
push dword [ebp + 0x10]
call fcn.00403140
add esp, 8
test eax, eax
jne 0x402aee
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0xc]
inc ebx
cmp ebx, dword [eax + 0x18]
jb 0x402a94
mov ebx, 0xd3
mov eax, 0x3485
mov ecx, 0xfc
cmp ebx, ecx
cmovl ebx, ecx
dec eax
jne 0x402ac5
lea ecx, [ecx]
mov eax, 0x9c09c09d
imul edi
add edx, edi
sar edx, 7
mov edi, edx
shr edi, 0x1f
add edi, edx
jne 0x402ad0
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x10]
movzx edi, word [eax + ebx*2]
xor ebx, ebx
inc ebx
mov eax, 0x38e38e39
imul ebx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, ebx
lea eax, [eax + eax*8]
sub ecx, eax
jne 0x402b12
inc ebx
cmp ebx, 0x578e
jl 0x402af7
mov eax, 0x992
mov edx, 0x40
mov ecx, 0x6b
lea esp, [esp]
cmp ecx, edx
cmovg ecx, edx
dec eax
jne 0x402b30
mov eax, edi
mov edi, dword [ebp - 0x14]
mov ecx, 0x2c93
mov edi, dword [edi + eax*4]
add edi, dword [ebp + 0xc]
jmp 0x402b50
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x402b50
inc esi
mov eax, 0x92492493
imul esi
add edx, esi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax*8]
sub ecx, eax
mov eax, esi
sub eax, ecx
jne 0x402b8b
add esi, 5
cmp esi, 0x1086
jl 0x402b65
mov eax, dword [ebp - 4]
cmp edi, eax
jbe 0x402ba1
add eax, dword [ebp - 8]
cmp edi, eax
jb 0x402bbd
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x6a88
mov edx, 0x3a
cmp eax, 0x3a
cmovg eax, edx
dec ecx
jne 0x402bb4
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret