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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x58
mov eax, dword [0x478534]
mov esi, dword [esp + 0x6c]
xor ebx, ebx
xor eax, esp
mov dword [esp + 0x54], eax
mov eax, dword [esi + 0x3c]
mov eax, dword [eax + esi + 0x78]
add eax, esi
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x20]
add eax, esi
mov dword [esp + 8], eax
mov eax, dword [esp + 0x14]
mov dword [esp + 4], 0
mov eax, dword [eax + 0x18]
mov dword [esp + 0x18], eax
mov eax, 0xf3c1623e
cmp eax, 0xf5f4458c
jle 0x401c47
jmp 0x401cb0
mov ebx, dword [esp + 0x28]
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
inc ebx
mov eax, dword [esp + 0x30]
mov dword [esp + 8], eax
mov eax, 0xf3c1623e
cmp eax, 0xf5f4458c
jg 0x401cb0
cmp eax, 0xcb4b914d
jle 0x401d20
cmp eax, 0xcb4b914e
je 0x401d82
cmp eax, 0xdd8ce903
je 0x401df1
cmp eax, 0xf3c1623e
jne 0x401c40
mov eax, dword [esp + 8]
mov dword [esp + 0x28], ebx
mov edx, 0xcb4b914e
mov dword [esp + 0x24], eax
mov eax, dword [esp + 4]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x28]
cmp ecx, eax
mov eax, 0x4b39c3e6
cmovb eax, edx
cmp eax, 0xf5f4458c
jle 0x401c47
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp eax, 0x5c2d06ee
jle 0x401d50
cmp eax, 0x5c2d06ef
je 0x401e93
cmp eax, 0x5e140375
je 0x401c26
cmp eax, 0x6ddf80df
jne 0x401c40
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x24]
mov ecx, dword [esp + 0x28]
add eax, esi
movzx eax, word [eax + ecx*2]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x10], 2
mov ecx, dword [ecx + 0x1c]
add ecx, esi
mov eax, dword [ecx + eax*4]
mov dword [esp + 0xc], eax
mov eax, 0xc49d2492
mov ebp, dword [esp + 0x24]
cmp eax, 0xf5f4458c
jle 0x401c47
jmp 0x401cb0
cmp eax, 0x85ea03a4
je 0x401eb5
cmp eax, 0xc49d2492
je 0x401eec
cmp eax, 0xb5aed792
jne 0x401c40
jmp 0x4020ae
cmp eax, 0xf5f4458d
je 0x402055
cmp eax, 0x4b39c3e6
jne 0x401c40
mov ecx, dword [esp + 0x2c]
mov eax, 0xb5aed792
mov dword [esp], ecx
cmp eax, 0xf5f4458c
jle 0x401c47
jmp 0x401cb0
mov eax, dword [0x479030]
mov ecx, dword [0x479034]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 1
not eax
mov edi, eax
and edi, 0xfffffffe
or edx, edi
mov edi, 0xdd8ce903
xor eax, edx
test eax, edx
sete al
setne dl
cmp ecx, 0xa
setl ah
cmp ecx, 9
setg cl
and ah, dl
and al, cl
or cl, dl
or ah, al
mov edx, ecx
xor dl, ah
test ah, ah
mov eax, 0x85ea03a4
cmovne eax, edi
test cl, cl
mov ecx, 0x85ea03a4
cmovne eax, ecx
test dl, dl
cmove eax, edi
cmp eax, 0xf5f4458c
jle 0x401c47
jmp 0x401cb0
mov eax, dword [esp + 0x24]
lea edi, [esp + 0x3c]
mov eax, dword [eax]
mov dword [esp + 0x1c], edi
mov ecx, dword [esp + 0x1c]
mov ecx, edi
add eax, esi
push eax
call fcn.004020d0
push 0x235
push edi
call section..text
add esp, 8
cmp eax, dword [esp + 0x70]
mov eax, dword [0x479030]
mov edi, 0x5c2d06ef
lea ecx, [eax - 1]
sete byte [esp + 0x23]
imul ecx, eax
mov eax, ecx
and ecx, 0xe67d460
not eax
mov edx, eax
and edx, 0xf1982b9f
or ecx, edx
xor ecx, 0xf1982b9e
or ecx, eax
cmp ecx, 0xffffffff
setne al
cmp dword [0x479034], 9
setg cl
mov edx, ecx
xor cl, al
or dl, al
mov eax, edx
xor al, cl
mov eax, 0x85ea03a4
cmovne edi, eax
test cl, cl
mov ecx, 0x5c2d06ef
mov eax, edi
cmovne eax, ecx
test dl, dl
cmovne eax, edi
cmp eax, 0xf5f4458c
jle 0x401c47
jmp 0x401cb0
cmp byte [esp + 0x23], 0
mov eax, 0xf5f4458d
mov ecx, 0x6ddf80df
cmovne eax, ecx
cmp eax, 0xf5f4458c
jle 0x401c47
jmp 0x401cb0
mov eax, dword [esp + 0x24]
lea edi, [esp + 0x3c]
mov ecx, edi
mov eax, dword [eax]
add eax, esi
push eax
call fcn.004020d0
push 0x235
push edi
call section..text
add esp, 8
mov eax, 0xdd8ce903
cmp eax, 0xf5f4458c
jle 0x401c47
jmp 0x401cb0
mov eax, dword [esp + 0xc]
lea ecx, [esp + 0x3c]
mov dword [esp + 0x30], ebp
mov dword [esp + 0x34], eax
call fcn.00409970
mov eax, dword [0x479038]
mov ecx, dword [0x47903c]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 0xd89f6938
not eax
mov edi, eax
and edi, 0x276096c7
or edx, edi
xor edx, 0xd89f6939
xor eax, edx
test eax, edx
mov eax, 0xedc70068
sete byte [esp + 0x3a]
cmp ecx, 0xa
setl byte [esp + 0x3b]
nop word cs:[eax + eax]
nop dword [eax]
cmp eax, 0xedc70067
jg 0x402000
cmp eax, 0x810e1cc6
je 0x402081
cmp eax, 0x9d2cb283
jne 0x401f50
lea ecx, [esp + 0x3c]
call fcn.0040ab70
mov eax, dword [0x479038]
mov ecx, dword [0x47903c]
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
and edx, 1
not eax
mov edi, eax
and edi, 0xfffffffe
or edx, edi
mov edi, 0x810e1cc6
not edx
or edx, eax
cmp edx, 0xffffffff
sete al
setne dl
cmp ecx, 9
setg ah
cmp ecx, 0xa
setl cl
and ah, al
mov ch, cl
xor ch, dl
and ch, cl
and cl, dl
or cl, ah
mov dl, ch
mov eax, 0x475a27a5
xor dl, cl
test cl, cl
cmovne eax, edi
test ch, ch
mov ecx, 0x475a27a5
cmove eax, ecx
test dl, dl
jmp 0x402045
lea ecx, [esp + 0x3c]
call fcn.0040ab70
mov eax, 0x9d2cb283
cmp eax, 0xedc70067
jle 0x401f5b
nop word cs:[eax + eax]
nop
cmp eax, 0x475a27a5
je 0x401fdb
cmp eax, 0xedc70068
jne 0x401f50
mov al, byte [esp + 0x3a]
mov cl, byte [esp + 0x3b]
mov edi, 0x9d2cb283
xor cl, al
mov edx, ecx
xor dl, 1
and dl, al
mov eax, 0x475a27a5
mov ch, dl
xor ch, cl
test cl, 1
cmovne eax, edi
test dl, 1
mov edx, 0x475a27a5
cmove eax, edx
test ch, 1
cmovne eax, edi
cmp eax, 0xedc70067
jle 0x401f5b
jmp 0x402000
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x10], 0
mov eax, 0xc49d2492
mov ecx, dword [esp + 0x2c]
add ebp, 4
mov dword [esp + 0xc], ecx
cmp eax, 0xf5f4458c
jle 0x401c47
jmp 0x401cb0
mov eax, dword [esp + 0x1c]
cmp dword [esp + 0x10], 0
mov edx, dword [esp + 0x34]
mov eax, 0xb5aed792
mov ecx, 0x5e140375
cmove eax, ecx
mov dword [esp], edx
cmp eax, 0xf5f4458c
jle 0x401c47
jmp 0x401cb0
add esi, dword [esp]
mov ecx, dword [esp + 0x54]
xor ecx, esp
call fcn.0045f611
mov eax, esi
add esp, 0x58
pop esi
pop edi
pop ebx
pop ebp
ret