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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
xor esi, esi
mov ebx, 0x786f
push edi
mov ecx, 0x7aec
lea eax, [esi + 0x65]
mov dword [ebp - 0x14], ebx
cmp dword [ebp + 0xc], esi
je 0x402660
cmp dword [ebp + 0x10], esi
jne 0x402372
cmp dword [ebp + 0x18], esi
je 0x40269a
mov ecx, 0x4776
mov edx, 0x53
lea esp, [esp]
cmp eax, 0x53
cmovl eax, edx
dec ecx
jne 0x402380
mov ebx, 0x4547
mov edi, edi
mov eax, 0x473c1ab7
imul ebx
sar edx, 5
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
jne 0x402390
mov ecx, 0x5e2a
mov edx, 0x73
mov eax, 0x1d
cmp eax, 0x73
cmovl eax, edx
dec ecx
jne 0x4023b2
mov eax, dword [ebp + 0xc]
mov ecx, 0x5a4d
mov esi, dword [eax + 0x3c]
add esi, eax
cmp word [eax], cx
jne 0x40269a
cmp dword [esi], 0x4550
jne 0x40269a
mov ecx, 0x1e4f
mov eax, 0x99d722db
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x4023e2
mov edx, dword [esi + 0x7c]
mov dword [ebp - 0x18], edx
mov eax, 0x75b0
mov dword [ebp - 4], 0x49
mov ecx, 8
mov edi, edi
cmp ecx, 0x49
cmovl ecx, dword [ebp - 4]
dec eax
jne 0x402410
test edx, edx
je 0x40269a
mov eax, 0x4b04
mov edx, 0xde
mov ecx, 0x47
cmp ecx, edx
cmovg ecx, edx
dec eax
jne 0x402431
mov ecx, 0x7498
mov edi, edi
mov eax, 0xb60b60b7
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x402440
mov edi, 0x302c
lea ebx, [ebx]
mov eax, 0x4ec4ec4f
imul edi
sar edx, 2
mov edi, edx
shr edi, 0x1f
add edi, edx
jne 0x402460
mov edi, 0x4ace
mov ebx, 0x608a
lea ecx, [ecx]
mov eax, 0x6bca1af3
imul ebx
sar edx, 4
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
jne 0x402480
mov eax, dword [esi + 0x78]
add eax, dword [ebp + 0xc]
mov dword [ebp - 4], eax
mov eax, dword [eax + 0x20]
add eax, dword [ebp + 0xc]
xor esi, esi
mov dword [ebp - 8], eax
inc esi
mov eax, 0x38e38e39
imul esi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, esi
lea eax, [eax + eax*8]
sub ecx, eax
jne 0x4024c2
inc esi
cmp esi, 0x6c52
jl 0x4024a7
mov ecx, 0x47d
nop
mov eax, 0xb21642c9
imul ecx
add edx, ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x4024d0
mov ebx, 0x7485
lea ebx, [ebx]
mov eax, 0x621b97c3
imul ebx
sar edx, 6
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
jne 0x4024f0
mov ecx, dword [ebp - 4]
mov esi, dword [ebp + 0xc]
mov eax, dword [ecx + 0x24]
add eax, esi
mov dword [ebp - 0xc], eax
mov ecx, 0x7439
mov eax, 0x2e8ba2e9
imul ecx
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x402516
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x1c]
add eax, esi
mov dword [ebp - 0x10], eax
xor ecx, ecx
inc ecx
mov eax, ecx
and eax, 0x80000007
jns 0x402545
dec eax
or eax, 0xfffffff8
inc eax
jne 0x40254a
add ecx, 2
cmp ecx, 0x435a
jl 0x402536
mov eax, dword [ebp + 0x10]
shr eax, 0x10
test eax, eax
je 0x40269a
xor esi, esi
inc esi
mov eax, 0x38e38e39
imul esi
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, esi
lea eax, [eax + eax*8]
sub ecx, eax
jne 0x40257f
add esi, 5
cmp esi, 0x2ade
jl 0x402562
mov eax, 0x6fde
mov edx, 7
mov ecx, 0x56
cmp ecx, edx
cmovg ecx, edx
dec eax
jne 0x402596
mov eax, dword [ebp - 4]
xor esi, esi
cmp dword [eax + 0x18], esi
jbe 0x4025d2
jmp 0x4025b0
mov eax, dword [ebp - 8]
mov eax, dword [eax + esi*4]
add eax, dword [ebp + 0xc]
push eax
push dword [ebp + 0x10]
call fcn.00402d20
add esp, 8
test eax, eax
jne 0x4025f0
mov eax, dword [ebp - 4]
inc esi
cmp esi, dword [eax + 0x18]
jb 0x4025b0
mov eax, 0xb21642c9
imul edi
add edx, edi
sar edx, 6
mov edi, edx
shr edi, 0x1f
add edi, edx
jne 0x4025d2
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xc]
mov edx, 0x15
movzx ecx, word [eax + esi*2]
mov eax, 0x624b
mov esi, 0x8b
cmp edx, esi
cmovl edx, esi
dec eax
jne 0x402606
mov ebx, 0x4b31
mov eax, 0x22b63cbf
imul ebx
sar edx, 3
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
jne 0x402613
mov ebx, dword [ebp - 0x14]
mov eax, ecx
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ecx + eax*4]
add ecx, dword [ebp + 0xc]
mov eax, 0x8dda5203
imul ebx
add edx, ebx
sar edx, 7
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
jne 0x402634
mov eax, dword [ebp - 4]
cmp ecx, eax
jbe 0x402657
add eax, dword [ebp - 0x18]
cmp ecx, eax
jb 0x40269a
pop edi
pop esi
mov eax, ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x402660
inc esi
mov eax, 0x2aaaaaab
imul esi
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
add ecx, ecx
mov eax, esi
sub eax, ecx
jne 0x402692
add esi, 2
cmp esi, 0x1c34
jl 0x402675
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret