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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xc
push ebx
push esi
push edi
xor ebx, ebx
xor edi, edi
mov esi, 0x4d9
cmp dword [ebp + 0xc], ebx
je 0x4030b5
mov ecx, 0x4ec9
lea esp, [esp]
mov eax, 0x84210843
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x40306c
mov ecx, 0xd0
cmp dword [ebp + 0x10], ebx
jne 0x4030be
cmp dword [ebp + 0x18], ebx
jne 0x4030be
mov eax, 0x10fef011
imul esi
sar edx, 4
mov esi, edx
shr esi, 0x1f
add esi, edx
jne 0x403090
mov eax, 0x1c7
mov edx, 0x6b
cmp ecx, edx
cmovg ecx, edx
dec eax
jne 0x4030ad
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, 0x1475
mov edx, 0xb7
mov eax, 0xc4
cmp eax, 0xb7
cmovl eax, edx
dec ecx
jne 0x4030cd
mov esi, dword [ebp + 0xc]
mov ecx, 0x6aa8
mov eax, dword [esi + 0x3c]
add eax, esi
mov dword [ebp - 4], eax
lea esp, [esp]
mov eax, 0xb21642c9
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x4030ec
mov eax, 0x5a4d
cmp word [esi], ax
jne 0x4030b5
mov eax, dword [ebp - 4]
cmp dword [eax], 0x4550
jne 0x4030b5
lea ebx, [ebx]
inc edi
mov eax, edi
and eax, 0x80000001
jns 0x40312b
dec eax
or eax, 0xfffffffe
inc eax
jne 0x40312e
inc edi
cmp edi, 0x6f59
jl 0x40311c
mov ebx, 0x52cf
nop
mov eax, 0x44d72045
imul ebx
sar edx, 5
mov ebx, edx
shr ebx, 0x1f
add ebx, edx
jne 0x40313c
mov ecx, 0x6c00
mov edx, 0x2e
mov eax, 0xfd
cmp eax, 0x2e
cmovl eax, edx
dec ecx
jne 0x40315e
mov ecx, 0x59b6
mov edx, 0x8f
mov eax, 0xa5
lea ebx, [ebx]
cmp eax, 0x8f
cmovl eax, edx
dec ecx
jne 0x40317c
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x7c]
mov dword [ebp - 0xc], ecx
test ecx, ecx
je 0x4030b5
mov edi, dword [eax + 0x78]
add edi, esi
mov dword [ebp - 4], edi
mov ecx, 0x23e3
lea esp, [esp]
mov eax, 0xae4c415d
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x4031ac
inc ebx
mov eax, 0x92492493
imul ebx
add edx, ebx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
lea ecx, [eax*8]
sub ecx, eax
mov eax, ebx
sub eax, ecx
jne 0x4031e5
inc ebx
cmp ebx, 0x6919
jl 0x4031c1
mov ebx, dword [edi + 0x20]
add ebx, esi
mov edi, 0xdb4
jmp 0x4031fc
mov eax, 0x151d07eb
imul edi
sar edx, 3
mov edi, edx
shr edi, 0x1f
add edi, edx
jne 0x4031fc
mov edi, dword [ebp - 4]
mov ecx, 0x1ac1
mov eax, dword [edi + 0x24]
add eax, esi
mov dword [ebp - 4], eax
mov eax, dword [edi + 0x1c]
add eax, esi
mov dword [ebp - 8], eax
jmp 0x40322c
mov eax, 0xbfa02fe9
imul ecx
add edx, ecx
sar edx, 7
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x40322c
mov ecx, dword [ebp + 0x10]
mov eax, ecx
shr eax, 0x10
test eax, eax
je 0x4030b5
xor esi, esi
cmp dword [edi + 0x18], esi
jbe 0x4030b5
mov eax, dword [ebx + esi*4]
add eax, dword [ebp + 0xc]
push eax
push ecx
call fcn.00403c5c
add esp, 8
test eax, eax
jne 0x403280
mov ecx, dword [ebp + 0x10]
inc esi
cmp esi, dword [edi + 0x18]
jb 0x40325c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 4]
mov ecx, 0x17eb
movzx eax, word [eax + esi*2]
mov esi, dword [ebp - 8]
mov esi, dword [esi + eax*4]
add esi, dword [ebp + 0xc]
lea esp, [esp]
mov eax, 0x88888889
imul ecx
add edx, ecx
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
jne 0x40329c
cmp esi, edi
jbe 0x4032c2
mov eax, dword [ebp - 0xc]
add eax, edi
cmp esi, eax
jb 0x4030b5
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret