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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xe4
add byte [eax], al
mov eax, dword [0x4c64a4]
push ebx
push esi
inc eax
mov esi, ecx
mov dword [esp + 0x18], esi
mov dword [0x4c64a4], eax
push edi
cmp eax, 0x30
jge 0x43e41e
xor ebx, ebx
mov byte [esp + 0x13], 1
mov eax, ebx
mov byte [esp + 0x22], 1
lea ecx, [esp + 0xa8]
mov dword [esp + 0x14], eax
mov byte [esp + 0x24], bl
call fcn.004057a6
mov edi, dword [ebp + 8]
lea ecx, [esp + 0xa8]
push 0x8000
push edi
call fcn.004057f6
test al, al
je 0x43e438
lea ecx, [esp + 0x98]
call fcn.00407667
lea ecx, [esp + 0x98]
call fcn.00420957
lea ecx, [esp + 0x88]
call fcn.00407667
lea edx, [esp + 0x88]
mov ecx, edi
call fcn.00404750
mov edi, dword [esp + 0xb8]
lea eax, [esp + 0x44]
mov esi, dword [esp + 0xbc]
lea ecx, [esp + 0xa8]
push eax
lea eax, [esp + 0x64]
mov dword [esp + 0x48], 0x18
push eax
call fcn.00405850
push ebx
push esi
push edi
lea ecx, [esp + 0xb4]
call fcn.00405aee
cmp dword [esp + 0x70], 0x21335541
je 0x43e452
lea ecx, [esp + 0x50]
call fcn.00407667
lea ecx, [esp + 0x28]
call fcn.00407667
push ebx
lea eax, [esp + 0x2c]
push ebx
push eax
lea edx, [esp + 0x5c]
lea ecx, [esp + 0x94]
call fcn.0040459b
add esp, 0xc
lea eax, [esp + 0x28]
lea ecx, [esp + 0x50]
push eax
call fcn.00407b2e
push dword [esp + 0x50]
call dword [0x48f208]
lea ecx, [esp + 0x28]
call fcn.00405904
lea ecx, [esp + 0x50]
call fcn.00405904
push 0x2000
call fcn.00420db6
pop ecx
push eax
lea ecx, [esp + 0x48]
call fcn.0040522e
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x1c]
cmp byte [esp + 0x22], 1
jne 0x406ce7
push ecx
push esi
lea ecx, [esp + 0xb0]
call fcn.0040586d
test al, al
je 0x406ce7
mov eax, dword [esp + 0x14]
inc eax
push esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], eax
call fcn.00406f5d
push esi
call fcn.00406ecc
push esi
test al, al
je 0x43e7de
call fcn.00406faa
push esi
mov byte [esp + 0x27], bl
call fcn.00422bfc
mov dword [esp + 0x3c], eax
pop ecx
cmp eax, 2
jle 0x406c5b
mov ax, word [esi + eax*2 - 4]
push 0x7f
pop ecx
and ax, cx
movzx eax, ax
push eax
call fcn.0042363d
pop ecx
test eax, eax
jne 0x406d4f
cmp byte [esp + 0x24], 1
je 0x43e7d1
add bh, bh
mov ah, 0x24
mov byte [eax], al
add byte [eax], al
push dword [esp + 0x88]
lea ecx, [esp + 0x7c]
call fcn.00407de1
lea eax, [esp + 0xa8]
mov ecx, edi
push eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x80]
push eax
push esi
call fcn.004068dc
lea ecx, [esp + 0x78]
mov dword [esp + 0x38], eax
call fcn.00405904
mov eax, dword [esp + 0x38]
test eax, eax
je 0x406d7a
cmp eax, 1
jle 0x406d6d
cmp eax, 3
jg 0x406d64
push dword [ebp + 0xc]
mov eax, dword [esp + 0x20]
mov ecx, edi
push esi
push eax
mov dword [esp + 0x20], eax
call fcn.00407213
cmp byte [esp + 0x23], 1
sete byte [esp + 0x24]
cmp byte [esp + 0x13], 1
je 0x406be2
lea ecx, [esp + 0xa8]
call fcn.00405c6f
push dword [esp + 0x98]
call dword [0x48f208]
mov eax, dword [esp + 0x48]
mov bl, byte [esp + 0x13]
dec dword [eax]
jne 0x406d1a
push eax
call fcn.00420e2c
pop ecx
push esi
call fcn.00420e2c
pop ecx
lea ecx, [esp + 0x88]
call fcn.00405904
lea ecx, [esp + 0x98]
call fcn.00405904
lea ecx, [esp + 0xa8]
call fcn.004057d4
dec dword [0x4c64a4]
mov al, bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
invalid
mov eax, dword [esp + 0x38]
cmp word [esi + eax*2 - 2], 0x5f
jne 0x406c5b
jmp 0x43e7c0
cmp eax, 4
jne 0x406d6d
mov byte [esp + 0x22], bl
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x14], eax
jmp 0x406cd2
mov byte [esp + 0x13], bl
jmp 0x406d6d
fmul dword [ebx]
rcl dword [eax - 0x18], 0xa
sub eax, 0x87dfdfe
adc eax, dword [edx]
add byte [ebx], dh
fucomi st(1)
jmp 0x43e0ad
adc eax, dword [edx]
add byte [edx], dh
fucomi st(1)
push es
mov esp, edi
invalid
call 0x45f7ab
jmp 0x406d3c
je 0x43e7e6
adc al, 0xe8
xchg edi, eax
inc ebp
invalid
mov word [esi + eax*2 - 2], cx
jmp 0x406c65
call fcn.0045f601
jmp 0x406cdc
cld
dec dword [ebx - 0x74e7dbbc]
iretd