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

Disassembly:
push 0xffffffffffffffff
push 0x4c100c
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x138
push ebx
push ebp
push esi
push edi
mov edi, ecx
lea ecx, [esp + 0xdc]
mov dword [esp + 0x10], edi
call fcn.004714f0
mov ecx, dword [edi + 8]
lea eax, [esp + 0xdc]
xor ebx, ebx
push eax
mov dword [esp + 0x154], ebx
call fcn.00477850
test al, al
je 0x47231a
jmp 0x471ee0
mov eax, dword [esp + 0xdc]
cmp eax, 1
jne 0x4722c6
mov eax, str.String
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x471ef8
mov esi, dword [esp + 0x110]
sub eax, edx
cmp esi, esi
mov ebp, eax
mov eax, esi
jae 0x471f10
cmp eax, ebx
je 0x471f57
cmp eax, ebp
mov ecx, eax
jb 0x471f1c
mov ecx, ebp
cmp dword [esp + 0x114], 0x10
mov esi, dword [esp + 0x100]
jae 0x471f34
lea esi, [esp + 0x100]
mov edi, str.String
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
je 0x471f44
sbb edx, edx
sbb edx, 0xffffffff
cmp edx, ebx
mov esi, dword [esp + 0x110]
mov edi, dword [esp + 0x10]
jne 0x4720a9
cmp eax, ebp
jb 0x4720a9
xor edx, edx
cmp eax, ebp
setne dl
cmp edx, ebx
jne 0x4720a9
mov ebp, 0xf
mov dword [esp + 0x90], ebp
mov dword [esp + 0x8c], ebx
mov byte [esp + 0x7c], bl
lea ecx, [esp + 0x78]
push ecx
mov ecx, edi
mov byte [esp + 0x154], 1
call fcn.00471830
test al, al
je 0x472338
mov eax, 0x4ccfc4
mov dword [esp + 0x58], ebp
mov dword [esp + 0x54], ebx
mov byte [esp + 0x44], bl
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x471fb5
sub eax, esi
push eax
push 0x4ccfc4
lea ecx, [esp + 0x48]
call fcn.00406680
lea edx, [esp + 0x40]
push edx
lea ecx, [esp + 0x138]
mov byte [esp + 0x154], 2
call fcn.00471370
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0xcc]
mov dword [esp + 0xe4], ebp
mov dword [esp + 0xe0], ebx
mov byte [esp + 0xd0], bl
call fcn.004065c0
mov eax, dword [esp + 0x58]
mov esi, 0x10
cmp eax, esi
mov byte [esp + 0x150], 4
jb 0x47202d
mov eax, dword [esp + 0x44]
push eax
call fcn.0049f22c
add esp, 4
lea ecx, [esp + 0x78]
push ecx
mov ecx, dword [edi + 4]
lea edx, [esp + 0xc4]
push edx
mov dword [esp + 0x60], ebp
mov dword [esp + 0x5c], ebx
mov byte [esp + 0x4c], bl
call fcn.0044d500
cmp dword [esp + 0xd8], esi
jb 0x472067
mov eax, dword [esp + 0xc4]
push eax
call fcn.0049f22c
add esp, 4
cmp dword [esp + 0x90], esi
mov dword [esp + 0xd8], ebp
mov dword [esp + 0xd4], ebx
mov byte [esp + 0xc4], bl
jb 0x472092
mov ecx, dword [esp + 0x7c]
push ecx
call fcn.0049f22c
add esp, 4
mov dword [esp + 0x90], ebp
mov dword [esp + 0x8c], ebx
mov byte [esp + 0x7c], bl
jmp 0x4722d8
mov eax, str.StringArray
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x4720b1
sub eax, edx
push eax
push str.StringArray
push esi
push ebx
lea ecx, [esp + 0x10c]
call fcn.00408a60
test eax, eax
jne 0x47236e
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
lea edx, [esp + 0x14]
push edx
mov ecx, edi
mov byte [esp + 0x154], 5
call fcn.004719e0
test al, al
je 0x472363
mov ebp, 0xf
mov eax, 0x4ccfc4
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
lea esi, [eax + 1]
mov cl, byte [eax]
inc eax
cmp cl, bl
jne 0x472117
sub eax, esi
push eax
push 0x4ccfc4
lea ecx, [esp + 0x2c]
call fcn.00406680
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0x138]
mov byte [esp + 0x154], 6
call fcn.00471370
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0x68]
mov dword [esp + 0x80], ebp
mov dword [esp + 0x7c], ebx
mov byte [esp + 0x6c], bl
call fcn.004065c0
mov eax, dword [esp + 0x3c]
mov esi, 0x10
cmp eax, esi
mov byte [esp + 0x150], 8
jb 0x472186
mov ecx, dword [esp + 0x28]
push ecx
call fcn.0049f22c
add esp, 4
push 0xffffffffffffffff
push ebx
lea edx, [esp + 0x64]
push edx
lea ecx, [esp + 0xa0]
mov dword [esp + 0x48], ebp
mov dword [esp + 0x44], ebx
mov byte [esp + 0x34], bl
mov dword [esp + 0xb8], ebp
mov dword [esp + 0xb4], ebx
mov byte [esp + 0xa4], bl
call fcn.004065c0
lea eax, [esp + 0x14]
push eax
lea ecx, [esp + 0xb4]
mov byte [esp + 0x154], 9
call fcn.0044d5d0
lea ecx, [esp + 0x94]
push ecx
mov ecx, dword [edi + 4]
lea edx, [esp + 0x144]
push edx
add ecx, 0x45c
mov byte [esp + 0x158], 0xa
call fcn.00471d20
mov eax, dword [esp + 0xb4]
cmp eax, ebx
je 0x472230
mov ecx, dword [esp + 0x10]
push ecx
mov ecx, dword [esp + 0xbc]
lea edx, [esp + 0xb4]
push edx
push ecx
push eax
call fcn.00406790
mov edx, dword [esp + 0xc4]
push edx
call fcn.0049f22c
add esp, 0x14
cmp dword [esp + 0xac], esi
mov dword [esp + 0xb4], ebx
mov dword [esp + 0xb8], ebx
mov dword [esp + 0xbc], ebx
jb 0x47225e
mov eax, dword [esp + 0x98]
push eax
call fcn.0049f22c
add esp, 4
cmp dword [esp + 0x74], esi
mov dword [esp + 0xac], ebp
mov dword [esp + 0xa8], ebx
mov byte [esp + 0x98], bl
jb 0x472286
mov ecx, dword [esp + 0x60]
push ecx
call fcn.0049f22c
add esp, 4
mov esi, dword [esp + 0x18]
cmp esi, ebx
mov dword [esp + 0x74], ebp
mov dword [esp + 0x70], ebx
mov byte [esp + 0x60], bl
je 0x4722b8
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
push edx
lea eax, [esp + 0x18]
push eax
push ecx
push esi
call fcn.00406790
push esi
call fcn.0049f22c
add esp, 0x14
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], ebx
jmp 0x4722d8
cmp eax, 3
je 0x4723f6
cmp eax, 2
je 0x472487
lea ecx, [esp + 0xdc]
mov dword [esp + 0x150], 0xffffffff
call fcn.00471580
lea ecx, [esp + 0xdc]
call fcn.004714f0
mov ecx, dword [edi + 8]
lea edx, [esp + 0xdc]
push edx
mov dword [esp + 0x154], ebx
call fcn.00477850
test al, al
jne 0x471ee0
lea ecx, [esp + 0xdc]
mov dword [esp + 0x150], 0xffffffff
call fcn.00471580
xor al, al
jmp 0x4724a0
cmp dword [esp + 0x90], 0x10
jb 0x47234f
mov eax, dword [esp + 0x7c]
push eax
call fcn.0049f22c
add esp, 4
mov dword [esp + 0x90], ebp
mov dword [esp + 0x8c], ebx
mov byte [esp + 0x7c], bl
jmp 0x47231a
lea ecx, [esp + 0x14]
call fcn.00407800
jmp 0x47231a
lea ecx, [esp + 0xfc]
push ecx
lea edx, [esp + 0x28]
push str.Invalid_Section_
push edx
call fcn.00418ac0
push 0x4ccf50
push eax
lea eax, [esp + 0x70]
push eax
mov byte [esp + 0x168], 0xb
call fcn.00418a10
add esp, 0x18
push eax
mov ecx, edi
mov byte [esp + 0x154], 0xc
call fcn.004710d0
mov eax, dword [esp + 0x74]
mov esi, 0x10
cmp eax, esi
jb 0x4723ca
mov ecx, dword [esp + 0x60]
push ecx
call fcn.0049f22c
add esp, 4
cmp dword [esp + 0x3c], esi
mov dword [esp + 0x74], 0xf
mov dword [esp + 0x70], ebx
mov byte [esp + 0x60], bl
jb 0x47231a
mov edx, dword [esp + 0x28]
push edx
call fcn.0049f22c
add esp, 4
jmp 0x47231a
lea eax, [esp + 0xfc]
push eax
lea ecx, [esp + 0x44]
push str.Element_Not_Expected_
push ecx
call fcn.00418ac0
push 0x4ccf50
push eax
lea edx, [esp + 0x38]
push edx
mov byte [esp + 0x168], 0xd
call fcn.00418a10
add esp, 0x18
push eax
mov ecx, edi
mov byte [esp + 0x154], 0xe
call fcn.004710d0
mov eax, dword [esp + 0x3c]
mov esi, 0x10
cmp eax, esi
jb 0x472452
mov eax, dword [esp + 0x28]
push eax
call fcn.0049f22c
add esp, 4
cmp dword [esp + 0x58], esi
mov edi, 0xf
mov dword [esp + 0x3c], edi
mov dword [esp + 0x38], ebx
mov byte [esp + 0x28], bl
jb 0x472476
mov ecx, dword [esp + 0x44]
push ecx
call fcn.0049f22c
add esp, 4
mov dword [esp + 0x58], edi
mov dword [esp + 0x54], ebx
mov byte [esp + 0x44], bl
jmp 0x47231a
lea ecx, [esp + 0xdc]
mov dword [esp + 0x150], 0xffffffff
call fcn.00471580
mov al, 1
mov ecx, dword [esp + 0x148]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x144
ret