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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x84
mov eax, dword [0x456178]
xor eax, esp
mov dword [esp + 0x80], eax
mov edx, dword [ebp + 0xc]
mov eax, 0x467
push ebx
mov ebx, dword [ebp + 0x10]
push esi
push edi
mov edi, dword [ebp + 8]
mov esi, ecx
mov dword [esp + 0xc], edx
cmp edi, eax
ja 0x40b255
je 0x40b191
cmp edi, 0x100
jb 0x40b3e0
cmp edi, 0x101
jbe 0x40b45d
cmp edi, 0x110
je 0x40b174
cmp edi, 0x111
je 0x40b0f3
cmp edi, 0x138
je 0x40b0d2
cmp edi, 0x465
je 0x40b09e
cmp edi, 0x466
jne 0x40b3e0
and dword [esi + 0x2a4], 0
mov eax, edx
mov edx, dword [esi + 0x2a4]
mov cl, 0x20
call fcn.00441de0
mov dword [esi + 0x2a0], eax
mov ecx, esi
add dword [esi + 0x2a0], ebx
mov dword [esi + 0x2a4], edx
adc dword [esi + 0x2a4], 0
call fcn.0040af31
jmp 0x40b45d
and dword [esi + 0x29c], 0
mov eax, edx
mov edx, dword [esi + 0x29c]
mov cl, 0x20
call fcn.00441de0
mov dword [esi + 0x298], eax
add dword [esi + 0x298], ebx
mov dword [esi + 0x29c], edx
adc dword [esi + 0x29c], 0
jmp 0x40b45d
push 0x3eb
push dword [esi + 4]
call dword [0x44423c]
cmp ebx, eax
jne 0x40b3e0
mov eax, dword [esi + 0x2dc]
jmp 0x40b460
xor ebx, ebx
inc ebx
cmp dx, bx
je 0x40b160
push 2
pop ecx
cmp dx, cx
je 0x40b155
mov eax, 0x3e9
cmp dx, ax
jne 0x40b121
mov ecx, esi
call fcn.0040aef4
test al, al
je 0x40b16d
mov ecx, esi
call fcn.0040a11e
jmp 0x40b16d
mov eax, 0x3ea
cmp dx, ax
jne 0x40b13e
push 0
push ecx
push 0x111
push dword [esi + 4]
call dword [0x444260]
jmp 0x40b16d
mov eax, 0x3ed
cmp dx, ax
jne 0x40b3e0
mov ecx, esi
call fcn.00409d49
jmp 0x40b16d
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 4]
mov edx, dword [esp + 0xc]
movzx eax, dx
push eax
push dword [esi + 4]
call dword [0x444240]
mov eax, ebx
jmp 0x40b460
mov eax, dword [esi]
call dword [eax + 8]
test eax, eax
jne 0x40b45d
push 2
push dword [esi + 4]
call dword [0x444240]
jmp 0x40b45d
xor eax, eax
mov dword [esp + 0x24], 7
mov word [esp + 0x10], ax
xor edi, edi
lea eax, [esp + 0x44]
mov dword [esp + 0x20], edi
push 0x2800
push eax
call fcn.004033f1
mov ecx, eax
call fcn.004133d6
push 0xffffffffffffffff
push edi
lea eax, [esp + 0x4c]
push eax
lea ecx, [esp + 0x1c]
call fcn.00402149
xor ebx, ebx
lea ecx, [esp + 0x44]
push edi
inc ebx
push ebx
call fcn.00401751
mov ecx, dword [esp + 0xc]
push 0xffffffffffffffff
push edi
push ecx
lea ecx, [esp + 0x1c]
call fcn.00402149
push str.__..._r_n
call fcn.0043413b
pop ecx
push eax
push str.__..._r_n
lea ecx, [esp + 0x18]
call fcn.004021eb
push 0x3eb
push dword [esi + 4]
call dword [0x44423c]
mov esi, eax
test esi, esi
je 0x40b245
cmp dword [esp + 0x24], 8
lea ecx, [esp + 0x10]
cmovae ecx, dword [esp + 0x10]
push ecx
push edi
push 0xc2
push esi
call dword [0x444244]
push edi
push 7
push 0x115
push esi
call dword [0x444260]
push edi
push ebx
lea ecx, [esp + 0x18]
call fcn.00401751
jmp 0x40b16d
cmp edi, 0x468
je 0x40b455
cmp edi, 0x469
je 0x40b400
cmp edi, 0x46a
je 0x40b3f2
cmp edi, 0x46b
je 0x40b3e4
cmp edi, 0x46c
jbe 0x40b3e0
cmp edi, 0x474
jbe 0x40b2a5
cmp edi, 0x477
jne 0x40b3e0
xor ebx, ebx
inc ebx
cmp dword [esi + 4], 0
je 0x40b3d5
push dword [esi + 4]
call dword [0x444218]
test eax, eax
je 0x40b3d5
and dword [esp + 0x3c], 0
xor eax, eax
mov dword [esp + 0x40], 7
mov word [esp + 0x2c], ax
cmp edi, 0x477
jne 0x40b2fb
mov eax, dword [esp + 0xc]
test eax, eax
je 0x40b2fb
lea ecx, [esp + 0x2c]
cmp ecx, eax
je 0x40b356
push 0xffffffffffffffff
push 0
push eax
call fcn.004019ce
jmp 0x40b356
push edi
lea eax, [esp + 0x78]
push eax
call fcn.0040b477
push eax
lea ecx, [esp + 0x30]
call fcn.00401e84
push 0
push ebx
lea ecx, [esp + 0x7c]
call fcn.00401751
cmp dword [esp + 0xc], 0x80004004
jne 0x40b356
lea eax, [esp + 0x5c]
push 0x2801
push eax
call fcn.004033f1
mov ecx, eax
call fcn.004133d6
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0x30]
call fcn.00401e84
push 0
push ebx
lea ecx, [esp + 0x64]
call fcn.00401751
mov edi, 0x449810
push edi
call fcn.0043413b
pop ecx
push eax
push edi
lea ecx, [esp + 0x34]
call fcn.004021eb
push 0x3eb
push dword [esi + 4]
call dword [0x44423c]
mov edi, eax
test edi, edi
je 0x40b3b9
push edi
call dword [0x444218]
test eax, eax
je 0x40b3b9
cmp dword [esp + 0x40], 8
lea ecx, [esp + 0x2c]
cmovae ecx, dword [esp + 0x2c]
push ecx
push 0
push 0xc2
push edi
call dword [0x444244]
push 0
push 7
push 0x115
push edi
call dword [0x444260]
cmp byte [esi + 0x2c0], 0
je 0x40b3c9
mov ecx, esi
call fcn.0040bdf6
push 0
push ebx
lea ecx, [esp + 0x34]
call fcn.00401751
mov byte [esi + 0x2b9], bl
jmp 0x40b16d
xor eax, eax
jmp 0x40b460
mov dword [esi + 0x10], 3
call fcn.00409b2c
jmp 0x40b45d
xor ebx, ebx
inc ebx
mov byte [esi + 0x2ba], bl
jmp 0x40b16d
xor ebx, ebx
inc ebx
test edx, edx
je 0x40b16d
push dword [esi + 4]
lea ecx, [esp + 0x14]
call fcn.00408d3b
push edx
call fcn.00408d83
call fcn.004056ee
mov ecx, dword [esp + 0xc]
mov al, byte [esp + 0x20]
mov byte [ecx + 0x40], al
cmp al, 5
jne 0x40b447
cmp byte [esi + 0x2c0], 0
mov byte [esi + 0x2ba], bl
je 0x40b447
mov ecx, esi
call fcn.0040bdf6
lea ecx, [esp + 0x10]
call fcn.00408d63
jmp 0x40b16d
push edx
call fcn.0040a978
mov byte [ebx], al
xor eax, eax
inc eax
mov ecx, dword [esp + 0x8c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.004333fa
mov esp, ebp
pop ebp
ret 0xc