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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xe4
mov eax, dword [0x4c74a4]
push ebx
push esi
inc eax
mov esi, ecx
mov dword [esp + 0x18], esi
mov dword [0x4c74a4], eax
push edi
cmp eax, 0x30
jge 0x44fc94
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.00413df7
mov edi, dword [ebp + 8]
lea ecx, [esp + 0xa8]
push 0x8000
push edi
call fcn.00413e47
test al, al
je 0x44fcae
lea ecx, [esp + 0x98]
call fcn.00411207
lea ecx, [esp + 0x98]
call fcn.00420ab6
lea ecx, [esp + 0x88]
call fcn.00411207
lea edx, [esp + 0x88]
mov ecx, edi
call fcn.004201af
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.00413ea1
push ebx
push esi
push edi
lea ecx, [esp + 0xb4]
call fcn.0041410a
cmp dword [esp + 0x70], 0x21335541
je 0x44fcc8
lea ecx, [esp + 0x50]
call fcn.00411207
lea ecx, [esp + 0x28]
call fcn.00411207
push ebx
lea eax, [esp + 0x2c]
push ebx
push eax
lea edx, [esp + 0x5c]
lea ecx, [esp + 0x94]
call fcn.00420044
add esp, 0xc
lea eax, [esp + 0x28]
lea ecx, [esp + 0x50]
push eax
call fcn.004117e0
push dword [esp + 0x50]
call dword [0x490208]
lea ecx, [esp + 0x28]
call fcn.00411cb6
lea ecx, [esp + 0x50]
call fcn.00411cb6
push 0x2000
call fcn.00420f16
pop ecx
push eax
lea ecx, [esp + 0x48]
call fcn.0041433f
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x1c]
cmp byte [esp + 0x22], 1
jne 0x412c19
push ecx
push esi
lea ecx, [esp + 0xb0]
call fcn.00413ebe
test al, al
je 0x412c19
mov eax, dword [esp + 0x14]
inc eax
push esi
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], eax
call fcn.00412e8f
push esi
call fcn.00412dfe
push esi
test al, al
je 0x450050
call fcn.00412edc
push esi
mov byte [esp + 0x27], bl
call fcn.00422d5c
mov dword [esp + 0x3c], eax
pop ecx
cmp eax, 2
jle 0x412b8d
mov ax, word [esi + eax*2 - 4]
push 0x7f
pop ecx
and ax, cx
movzx eax, ax
push eax
call fcn.0042379f
pop ecx
test eax, eax
jne 0x412c81
cmp byte [esp + 0x24], 1
je 0x450043
push dword [esp + 0x88]
lea ecx, [esp + 0x7c]
call fcn.00411a36
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.004127fc
lea ecx, [esp + 0x78]
mov dword [esp + 0x38], eax
call fcn.00411cb6
mov eax, dword [esp + 0x38]
test eax, eax
je 0x412cac
cmp eax, 1
jle 0x412c9f
cmp eax, 3
jg 0x412c96
push dword [ebp + 0xc]
mov eax, dword [esp + 0x20]
mov ecx, edi
push esi
push eax
mov dword [esp + 0x20], eax
call fcn.0041314d
cmp byte [esp + 0x23], 1
sete byte [esp + 0x24]
cmp byte [esp + 0x13], 1
je 0x412b14
lea ecx, [esp + 0xa8]
call fcn.004142cf
push dword [esp + 0x98]
call dword [0x490208]
mov eax, dword [esp + 0x48]
mov bl, byte [esp + 0x13]
dec dword [eax]
jne 0x412c4c
push eax
call fcn.00420f8c
pop ecx
push esi
call fcn.00420f8c
pop ecx
lea ecx, [esp + 0x88]
call fcn.00411cb6
lea ecx, [esp + 0x98]
call fcn.00411cb6
lea ecx, [esp + 0xa8]
call fcn.00413e25
dec dword [0x4c74a4]
mov al, bl
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14
mov eax, dword [esp + 0x38]
cmp word [esi + eax*2 - 2], 0x5f
jne 0x412b8d
jmp 0x450032
cmp eax, 4
jne 0x412c9f
mov byte [esp + 0x22], bl
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x14], eax
jmp 0x412c04
mov byte [esp + 0x13], bl
jmp 0x412c9f
add eax, 0x4c2394
add byte [eax], al
add byte [eax], al
add eax, 0x4c23a4
lodsb al, byte [esi]
sbb cl, byte [ecx]
jle 0x44fcb1
cmp eax, 0x8c
jle 0x419a36
cmp eax, 0x91
jg 0x419a36
jmp 0x419a3d
popfd
cld
inc dword [ebp + 0x7d840fd2]
popfd
cld
dec dword [edi]
mov bh, 0x41
add cl, byte [ebp - 0x7c99bef4]
cmp dword [edi + 0x74], esi
movzx eax, word [ecx]
test edx, edx
je 0x419a36
movzx eax, word [ecx + 2]
lea ecx, [ecx + eax*2]
cmp word [ecx], 0x77
je 0x44fcb9
movzx eax, word [ecx]
add ecx, ebp
outsd dx, dword [esi]
popfd
cld
dec dword [ebx - 0x2f74efbb]
cmp eax, dword [esi + 0x20]
jae 0x44fd02
jmp 0x419a3d
mov eax, dword [esi + 0x14]
lea edi, [ecx + 2]
mov dword [ebp - 8], edi
movzx edi, word [edx]
lea eax, [eax + edi*2]
cmp eax, dword [ebp - 8]
je 0x44fcf9
mov eax, dword [esi + 0x14]
add edx, 2
cmp edx, dword [esi + 0x20]
jb 0x44fce1
jmp 0x44fcff
lea eax, [ebx + edi]
mov word [edx], ax
mov edi, dword [ebp - 4]
cmp edx, dword [esi + 0x20]
jb 0x44fd1c
movzx edx, word [ecx + 2]
mov eax, dword [esi + 0x14]
lea eax, [eax + edx*2]
cmp eax, edi
jb 0x44fd1c
lea eax, [ebx + edx]
mov word [ecx + 2], ax
add ecx, 4
jmp 0x419a5b
jne 0x41a014
jmp 0x419f70
inc dword [ecx + 0x205ff9]
add byte [edi], cl
test byte [ecx], dh
lahf
cld
inc dword [ecx + 0x3000f9]
add cl, ch
xchg ecx, eax
invalid
add byte [eax], al
jmp 0x44fedb
lahf
cld
inc dword [ebx - 0x79f0f207]
mov eax, 0xb8fffc9f
test dword [eax], eax
add byte [eax], al
cmp ecx, eax
je 0x41a014
cmp ecx, 0x2027