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

Disassembly:
sub esp, 0x64
mov eax, dword [esp + 0x68]
push ebx
push ebp
push esi
mov esi, dword [0x45eccc]
mov dword [esp + 0x1c], eax
mov eax, dword [0x45ecd4]
push edi
cdq
mov edi, eax
push 0x13
mov ecx, edx
push 0x2c2da253
mov eax, esi
cdq
push ecx
push edi
mov dword [esp + 0x44], edi
mov dword [esp + 0x48], ecx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], edx
call fcn.00432020
mov ecx, dword [esp + 0x30]
mov ebp, dword [0x45ece8]
mov edx, dword [esp + 0x2c]
push 0x14
push 0x76aab896
push ecx
mov ebx, ebp
push edx
imul ebx, ebx, 0x471ee414
mov dword [esp + 0x24], eax
call fcn.00432020
mov ecx, dword [esp + 0x38]
push 0x14
push 0x76aab896
push ecx
push edi
mov dword [esp + 0x2c], eax
call fcn.00432020
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
push 0xf
push 0x3c2325f6
sub ecx, eax
mov eax, dword [esp + 0x34]
push edx
push eax
mov dword [esp + 0x2c], ecx
call fcn.00432020
imul esi, esi, 0x392bae29
mov edx, dword [0x45ecdc]
mov ecx, dword [esp + 0x1c]
imul edx, edx, 0x3dbf610d
sub ecx, eax
mov eax, dword [esp + 0x78]
add edx, ebx
add edx, ecx
mov ecx, dword [esp + 0x14]
add esi, edx
add esi, ecx
test eax, eax
mov dword [str._r_____r____], esi
je 0x40e755
mov eax, dword [esp + 0x38]
push 0xd
push 0x3dbf610d
push eax
mov ecx, edi
push ecx
call fcn.00432020
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
push 8
push 0x974b287b
push edx
push ecx
mov dword [esp + 0x2c], eax
call fcn.00432020
mov ecx, dword [esp + 0x1c]
mov edx, dword [0x45ece4]
mov edi, dword [0x45ece0]
imul edx, edx, 0x31b5823a
add ecx, eax
mov eax, edi
imul eax, eax, 0x392bae29
sub ecx, edx
mov edx, dword [esp + 0x14]
add ecx, eax
sub ecx, ebx
sub ecx, esi
lea eax, [ecx + edx - 0x1bcdabbc]
mov ecx, dword [esp + 0x7c]
mov dword [0x45eccc], eax
cmp byte [ecx], 0
je 0x40e755
mov esi, dword [0x45ecd8]
mov ecx, dword [str._r_____r____]
mov eax, dword [0x45ecdc]
add ecx, esi
imul ecx, ecx, 0x3dbf610d
cdq
push 0x13
push 0x2c2da253
push edx
push eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], edx
mov dword [esp + 0x2c], ecx
call fcn.00432020
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x48]
push 8
push 0x974b287b
add ecx, eax
mov eax, dword [esp + 0x4c]
push edx
push eax
mov dword [esp + 0x2c], ecx
call fcn.00432020
mov edx, dword [0x45ecdc]
mov ecx, dword [esp + 0x1c]
imul edx, edx, 0x392bae29
mov ebx, dword [str._r_____r____]
sub ecx, eax
mov eax, ebx
imul eax, eax, 0x2c2da253
add edx, edi
add edx, ecx
mov ecx, dword [esp + 0x78]
lea eax, [eax + edx + 0x31b5823a]
mov dword [0x45ecd4], eax
cmp byte [ecx], 0
je 0x40e6f8
push 0x14
cdq
push 0x76aab896
mov ebx, eax
push edx
push ebx
mov dword [esp + 0x44], ebx
mov dword [esp + 0x48], edx
call fcn.00432020
mov edx, dword [esp + 0x38]
push 0x13
push 0x2c2da253
push edx
push ebx
mov dword [esp + 0x38], eax
call fcn.00432020
mov ecx, dword [esp + 0x7c]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x78]
sub eax, ecx
mov ecx, dword [0x45eccc]
mov dword [esp + 0x1c], eax
nop
mov ebx, dword [0x45ecd0]
mov eax, ecx
cdq
mov dword [esp + 0x2c], eax
mov eax, dword [0x45ece4]
push 0x13
mov dword [esp + 0x34], edx
cdq
push 0x2c2da253
push edx
add ebx, ecx
push eax
imul ebx, ebx, 0x3c2325f6
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], edx
call fcn.00432020
mov ecx, dword [esp + 0x2c]
push 0xd
add ebx, eax
mov eax, dword [esp + 0x34]
push 0x3dbf610d
push eax
push ecx
call fcn.00432020
mov edx, dword [esp + 0x50]
push 0x14
push 0x76aab896
sub ebx, eax
mov eax, dword [esp + 0x54]
push edx
push eax
call fcn.00432020
mov edx, dword [0x45ecdc]
add ebx, eax
imul edx, edx, 0x31b5823a
mov eax, dword [esp + 0x7c]
mov ecx, edi
imul ecx, ecx, 0x42a7b17d
add ebx, ecx
mov ecx, dword [0x45ecc8]
mov dword [esp + 0x18], eax
mov eax, dword [str._r_____r____]
sub ebx, edx
cdq
mov dword [esp + 0x5c], eax
mov dword [esp + 0x60], edx
mov eax, esi
cdq
push 0xffffffffffffffeb
mov dword [esp + 0x5c], edx
mov edx, dword [0x45ecd4]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0x54]
push 0x8955476a
mov dword [0x45ecdc], ebx
lea ebx, [ecx + edx]
mov ecx, dword [esp + 0x54]
imul ebx, ebx, 0x68b4d785
push eax
push ecx
call fcn.00432020
mov edx, dword [esp + 0x60]
mov ecx, dword [esp + 0x5c]
push 0x10
push 0xe4325444
push edx
sub eax, ebx
push ecx
mov ebx, eax
call fcn.00432020
mov edx, dword [esp + 0x58]
push 0xf
push 0x3c2325f6
add ebx, eax
mov eax, dword [esp + 0x5c]
push edx
push eax
call fcn.00432020
sub ebx, eax
push 0x13
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x58]
push 0x2c2da253
push ecx
push edx
call fcn.00432020
sub ebx, eax
mov eax, dword [str._r_____r____]
imul eax, eax, 0x2c2da253
add ebx, eax
mov eax, dword [esp + 0x20]
mov dword [0x45ece4], ebx
cmp byte [eax], 0
je 0x40e5fd
lea ecx, [ecx]
mov ecx, dword [esp + 0x18]
cmp byte [ecx], 0
je 0x40e5fd
mov eax, dword [0x45ecd0]
cdq
mov ebx, eax
mov eax, dword [0x45ece4]
push 0xd
mov dword [esp + 0x44], edx
cdq
push 0x3dbf610d
push edx
push eax
mov dword [esp + 0x4c], ebx
call fcn.00432020
mov edx, dword [esp + 0x40]
push 8
push 0x42a7b17d
push edx
push ebx
mov dword [esp + 0x88], eax
call fcn.00432020
mov ecx, dword [esp + 0x3c]
mov ebx, eax
mov eax, dword [esp + 0x78]
push 3
sub ebx, eax
mov eax, dword [esp + 0x44]
push 0xce4a7dc6
push eax
push ecx
call fcn.00432020
mov edx, dword [esp + 0x40]
push 0x13
push 0x392bae29
add ebx, eax
mov eax, dword [esp + 0x44]
push edx
push eax
call fcn.00432020
mov edx, dword [0x45ecc8]
mov ecx, edi
imul edx, edx, 0x31b5823a
imul ecx, ecx, 0xafbbe1e
add ebx, eax
mov eax, dword [esp + 0x18]
add ebx, ecx
mov ecx, dword [esp + 0x1c]
sub ebx, edx
mov dword [0x45ecc8], ebx
mov dl, byte [ecx + eax]
mov al, byte [eax]
mov byte [esp + 0x78], al
mov eax, dword [0x45ecdc]
push 0x14
mov byte [esp + 0x17], dl
cdq
push 0x76aab896
push edx
push eax
call fcn.00432020
mov ebx, eax
push 3
mov eax, esi
cdq
push 0xce4a7dc6
push edx
push eax
call fcn.00432020
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
push 0x10
push 0xe4325444
push ecx
sub eax, ebx
push edx
mov ebx, eax
call fcn.00432020
sub ebx, eax
mov eax, dword [0x45ecc8]
imul eax, eax, 0x3dbf610d
add ebx, eax
imul esi, esi, 0x76aab896
mov al, byte [esp + 0x13]
mov ecx, ebp
imul ecx, ecx, 0x471ee414
add ebx, esi
mov esi, dword [0x45ece4]
add ebx, ecx
sub ebx, esi
add ebx, 0x31b5823a
cmp al, 0x41
mov dword [0x45ecd0], ebx
jl 0x40e46d
cmp al, 0x5a
jg 0x40e46d
add al, 0x20
mov byte [esp + 0x13], al
mov eax, ebp
cdq
mov ebx, eax
push 8
mov dword [esp + 0x6c], edx
mov eax, edi
cdq
push 0x974b287b
push edx
push eax
call fcn.00432020
mov edx, dword [esp + 0x68]
push 0x14
push 0x471ee414
push edx
push ebx
mov esi, eax
call fcn.00432020
push 0x13
add esi, eax
mov eax, dword [esp + 0x6c]
push 0x392bae29
push eax
push ebx
call fcn.00432020
imul edi, edi, 0x68b4d785
mov edx, dword [0x45ecc8]
mov ecx, ebp
imul edx, edx, 0x2c2da253
imul ecx, ecx, 0x31b5823a
sub esi, eax
mov al, byte [esp + 0x78]
sub esi, edi
add esi, ecx
add esi, edx
sub esi, dword [esp + 0x14]
cmp al, 0x41
mov dword [0x45ecd8], esi
jl 0x40e4ed
cmp al, 0x5a
jg 0x40e4ed
add al, 0x20
mov byte [esp + 0x78], al
mov eax, dword [0x45ecd0]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
add eax, ebp
imul eax, eax, 0x1bcdabbc
push 0xffffffffffffffef
push 0x1bcdabbc
push ecx
push edx
mov dword [esp + 0x34], eax
call fcn.00432020
mov edi, eax
mov eax, dword [esp + 0x24]
push 0xf
sub edi, eax
mov eax, dword [esp + 0x6c]
push 0x3c2325f6
push eax
push ebx
call fcn.00432020
mov edx, dword [0x45ecdc]
add edi, eax
imul edx, edx, 0x31b5823a
mov eax, dword [0x45ecd4]
mov ecx, esi
imul eax, eax, 0x471ee414
imul ecx, ecx, 0x42a7b17d
add edi, ecx
mov cl, byte [esp + 0x78]
add edi, edx
sub edi, eax
cmp byte [esp + 0x13], cl
mov dword [0x45ece0], edi
jne 0x40e5fd
mov eax, dword [0x45ecc8]
mov ecx, dword [esp + 0x5c]
cdq
push 8
mov ebx, eax
mov eax, dword [esp + 0x64]
push 0x42a7b17d
mov dword [esp + 0x78], edx
mov edx, dword [0x45ecd0]
push eax
lea ebp, [edx + esi]
push ecx
imul ebp, ebp, 0x392bae29
call fcn.00432020
mov edx, dword [esp + 0x70]
push 8
push 0x974b287b
push edx
push ebx
sub ebp, eax
call fcn.00432020
push 0x13
add ebp, eax
mov eax, dword [esp + 0x74]
push 0x2c2da253
push eax
push ebx
call fcn.00432020
mov ecx, dword [0x45ece4]
mov edx, dword [0x45ecd0]
imul ecx, ecx, 0x31b5823a
imul edx, edx, 0x2c2da253
add ebp, eax
mov eax, dword [esp + 0x18]
add ebp, ecx
mov ecx, dword [esp + 0x1c]
sub ebp, edx
inc eax
mov dword [0x45ece8], ebp
cmp byte [ecx + eax], 0
mov dword [esp + 0x18], eax
jne 0x40e330
mov edx, dword [esp + 0x30]
mov eax, ebp
imul eax, eax, 0x471ee414
push 0x14
push 0x76aab896
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0x34]
push edx
push eax
call fcn.00432020
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
push 0xf
push 0x3c2325f6
push ecx
push edx
mov ebx, eax
call fcn.00432020
sub ebx, eax
mov eax, dword [0x45ecdc]
imul eax, eax, 0x3dbf610d
mov edx, dword [esp + 0x78]
mov ecx, dword [esp + 0x14]
add ebx, eax
mov eax, dword [0x45eccc]
imul eax, eax, 0x392bae29
add ebx, eax
sub ebx, dword [esp + 0x28]
add ebx, edx
add ebx, ecx
mov ecx, dword [esp + 0x18]
mov dword [str._r_____r____], ebx
cmp byte [ecx], 0
je 0x40e75f
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x34]
push 0xd
push 0x3dbf610d
push edx
push eax
call fcn.00432020
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
push 8
push 0x974b287b
push ecx
push edx
mov dword [esp + 0x34], eax
call fcn.00432020
mov ecx, dword [esp + 0x24]
add ecx, eax
mov eax, dword [0x45ece4]
imul eax, eax, 0x31b5823a
mov edx, edi
imul edx, edx, 0x392bae29
sub ecx, eax
mov eax, dword [esp + 0x14]
add ecx, edx
sub ecx, dword [esp + 0x78]
mov edx, dword [esp + 0x1c]
sub ecx, ebx
lea ecx, [ecx + eax - 0x1bcdabbc]
mov eax, dword [esp + 0x20]
inc eax
inc edx
mov dword [0x45eccc], ecx
mov dword [esp + 0x1c], edx
cmp byte [eax], 0
mov dword [esp + 0x20], eax
jne 0x40e1f0
mov ebp, dword [0x45ecdc]
push 0x13
mov eax, ebp
cdq
push 0x2c2da253
push edx
add esi, ebx
push eax
imul esi, esi, 0x3dbf610d
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], edx
call fcn.00432020
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x44]
push 8
push 0x974b287b
push ecx
push edx
add esi, eax
call fcn.00432020
imul ebp, ebp, 0x392bae29
imul ebx, ebx, 0x2c2da253
sub esi, eax
add ebp, edi
add ebp, esi
lea eax, [ebx + ebp + 0x31b5823a]
mov dword [0x45ecd4], eax
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x64
ret
mov eax, dword [esp + 0x20]
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x64
ret