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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x18
push ebx
push esi
push edi
mov esi, 0x5aee
mov ebx, 0x1547
mov dword [ebp - 4], 0x7f15
mov dword [ebp - 0xc], 0x47ca
xor edi, edi
inc edi
mov eax, 0x66666667
imul edi
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*4]
add ecx, ecx
mov eax, edi
sub eax, ecx
jne 0x4023d1
inc edi
cmp edi, 0x79ea
jl 0x4023b3
cmp dword [ebp + 0xc], 0
mov edi, 0x365c
je 0x402700
cmp dword [ebp + 0x10], 0
jne 0x40242c
cmp dword [ebp + 0x18], 0
jne 0x40242c
mov eax, 0x634c0635
imul ebx
sar edx, 6
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
jne 0x4023f4
jmp 0x402410
mov eax, 0x15390949
imul edi
sar edx, 4
mov edi, edx
shr edi, 0x1f
add edi, edx
jne 0x402410
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
xor ebx, ebx
mov edi, edi
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 0x40244d
add ebx, 2
cmp ebx, 0x24cc
jl 0x402430
xor ebx, ebx
inc ebx
mov eax, 0x55555556
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
mov ecx, ebx
lea eax, [eax + eax*2]
sub ecx, eax
jne 0x402470
inc ebx
cmp ebx, 0x7c8f
jl 0x402457
mov ecx, 0x2173
lea ecx, [ecx]
mov eax, 0x92492493
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x402480
mov esi, dword [ebp + 0xc]
mov eax, 0x5a4d
mov edi, dword [esi + 0x3c]
cmp word [esi], ax
jne 0x402715
cmp dword [edi + esi], 0x4550
jne 0x402715
mov ecx, 0x5868
jmp 0x4024c0
mov eax, 0xa0a0a0a1
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x4024c0
mov eax, dword [edi + esi + 0x7c]
mov dword [ebp - 8], eax
xor ebx, ebx
mov edi, edi
inc ebx
mov eax, 0x66666667
imul ebx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*4]
add ecx, ecx
mov eax, ebx
sub eax, ecx
jne 0x402500
add ebx, 2
cmp ebx, 0x25c1
jl 0x4024e0
xor ebx, ebx
lea ebx, [ebx]
inc ebx
mov eax, 0x2aaaaaab
imul ebx
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*2]
add ecx, ecx
mov eax, ebx
sub eax, ecx
jne 0x40252b
inc ebx
cmp ebx, 0x51d8
jl 0x402510
cmp dword [ebp - 8], 0
je 0x402715
mov ecx, 0x743a
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 3
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x402542
jmp 0x402560
mov eax, 0x2e8ba2e9
imul dword [ebp - 4]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 4], eax
jne 0x402560
mov edi, dword [edi + esi + 0x78]
add edi, esi
mov dword [ebp - 4], edi
mov edi, 0x5fd5
mov eax, 0x27932b49
imul edi
sar edx, 5
mov edi, edx
shr edi, 0x1f
add edi, edx
jne 0x402584
mov edi, dword [ebp - 4]
xor ebx, ebx
lea esp, [esp]
inc ebx
mov eax, 0x66666667
imul ebx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax + eax*4]
add ecx, ecx
mov eax, ebx
sub eax, ecx
jne 0x4025c1
add ebx, ebx
jmp 0x4025ca
mov eax, ebx
cdq
sub eax, edx
sar eax, 1
add ebx, eax
cmp ebx, 0x77d4
jl 0x4025a0
mov eax, 0x6695
mov edx, 0x47
mov ecx, 0x76
cmp ecx, edx
cmovl ecx, edx
dec eax
jne 0x4025e1
mov ebx, dword [edi + 0x20]
mov ecx, esi
add ebx, ecx
mov dword [ebp - 0x10], ebx
mov edi, 0x41e3
jmp 0x402600
mov eax, 0x30c30c31
imul edi
sar edx, 2
mov edi, edx
shr edi, 0x1f
add edi, edx
jne 0x402600
mov edi, dword [ebp - 4]
mov ebx, 0x148b
jmp 0x402620
mov eax, 0x4ec4ec4f
imul ebx
sar edx, 6
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
jne 0x402620
mov eax, dword [edi + 0x24]
mov ebx, dword [ebp - 0x10]
add eax, ecx
mov dword [ebp - 0x14], eax
mov eax, dword [edi + 0x1c]
add eax, ecx
mov dword [ebp - 0x18], eax
mov edi, 0x23ce
jmp 0x402650
mov eax, 0x51eb851f
imul edi
sar edx, 3
mov edi, edx
shr edi, 0x1f
add edi, edx
jne 0x402650
mov edx, dword [ebp + 0x10]
mov edi, dword [ebp - 4]
mov eax, edx
shr eax, 0x10
test eax, eax
je 0x402715
xor esi, esi
cmp dword [edi + 0x18], esi
jbe 0x4026a0
lea ecx, [ecx]
mov eax, dword [ebx + esi*4]
add eax, ecx
push eax
push edx
call fcn.00402ea0
add esp, 8
test eax, eax
jne 0x4026c0
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
inc esi
cmp esi, dword [edi + 0x18]
jb 0x402680
nop
mov eax, 0x4bda12f7
imul dword [ebp - 0xc]
sar edx, 3
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [ebp - 0xc], eax
jne 0x4026a0
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x14]
mov ecx, 0xeb
movzx edx, word [eax + esi*2]
mov eax, 0x5634
mov esi, 0xdd
cmp ecx, esi
cmovg ecx, esi
dec eax
jne 0x4026d6
mov ecx, dword [ebp - 0x18]
mov eax, edx
mov ecx, dword [ecx + eax*4]
add ecx, dword [ebp + 0xc]
cmp ecx, edi
jbe 0x4026f6
mov eax, dword [ebp - 8]
add eax, edi
cmp ecx, eax
jb 0x402715
pop edi
pop esi
mov eax, ecx
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, 0x84210843
imul esi
add edx, esi
sar edx, 5
mov esi, edx
shr esi, 0x1f
add esi, edx
jne 0x402700
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret