Function at 0x471d70
Capabilities:
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x4a621d
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xe4
push ebx
xor ebx, ebx
push ebp
push esi
mov dword [esp + 0x24], ebx
mov dword [esp + 0xf8], ebx
mov dword [esp + 0x54], ebx
mov dword [esp + 0x30], ebx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x20], ebx
lea eax, [esp + 0x28]
lea ecx, [esp + 0x58]
push eax
mov byte [esp + 0xfc], 5
call fcn.0040f9a0
lea ecx, [esp + 0x20]
push ecx
lea ecx, [esp + 0x78]
call fcn.0040f9a0
mov dword [esp + 0x18], ebx
lea edx, [esp + 0x18]
lea ecx, [esp + 0x34]
push edx
mov byte [esp + 0xfc], 6
call fcn.0040f9a0
mov ebp, dword [esp + 0x100]
lea ecx, [esp + 0xcc]
lea eax, [ebp + 0x4c]
push eax
call fcn.0040f9a0
lea ecx, [ebp + 0x70]
push ecx
lea ecx, [esp + 0xb4]
call fcn.0040f9a0
lea esi, [ebp + 0x50]
lea ecx, [esp + 0x94]
push esi
call fcn.0040f9a0
mov al, byte [0x4dcb50]
test al, al
je 0x471e44
mov eax, dword [0x4dc33c]
cmp eax, ebx
je 0x471e44
push esi
push ebx
push ebp
push 2
push eax
call fcn.0046fd80
add esp, 0x14
mov edx, dword [esp + 0xcc]
mov byte [esp + 0x10], 0
mov dword [esp + 0x90], 0xffff8001
mov byte [esp + 0xf], 1
cmp dword [edx], ebx
jne 0x471e6e
mov dword [esp + 0x1c], 0x7fff
jmp 0x471e89
mov ecx, dword [esp + 0xd4]
lea eax, [esp + 0xe8]
push eax
call fcn.0043d1f0
mov ax, word [eax]
mov dword [esp + 0x1c], eax
mov ecx, dword [esp + 0xb0]
cmp dword [ecx], ebx
je 0x472871
mov edx, dword [esp + 0x94]
cmp dword [edx], ebx
je 0x472840
mov eax, dword [esi]
cmp eax, ebx
je 0x471ebe
mov edx, dword [eax]
xor ecx, ecx
cmp eax, edx
sete cl
test cl, cl
jne 0x472840
mov eax, dword [esi]
cmp eax, ebx
je 0x471ef0
mov edx, dword [eax]
xor ecx, ecx
cmp eax, edx
sete cl
test cl, cl
je 0x471ef0
push 0x6b
push 0x4c453c
push 0x4b1640
push ebx
push 0x4c4508
push 0x4dc4e4
call fcn.00441210
add esp, 0x18
mov eax, dword [esp + 0x9c]
push edi
xor edi, edi
mov cx, word [eax + 4]
mov dword [esp + 0x30], ecx
mov cx, word [esp + 0x20]
cmp cx, word [eax + 4]
jge 0x471f49
mov eax, dword [ebp + 0x14]
lea edx, [esp + 0x38]
push edx
lea ecx, [esp + 0x18]
push eax
lea edx, [esp + 0x38]
push ecx
lea eax, [esp + 0x2c]
push edx
lea ecx, [esp + 0xe0]
push eax
push ecx
call fcn.00472930
mov edi, eax
mov eax, dword [esp + 0xb8]
add esp, 0x18
mov cx, word [eax + 4]
cmp word [esp + 0x20], cx
jl 0x471f0d
cmp eax, ebx
je 0x471f56
mov dword [esp + 0xac], eax
jmp 0x471f5e
mov byte [esp + 0xa9], 1
mov dx, word [esp + 0x30]
mov byte [esp + 0xb0], 0
cmp dx, word [eax + 4]
jl 0x471f84
lea ecx, [esp + 0x98]
call fcn.004403e0
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0x98]
cmp dword [ecx], ebx
je 0x472516
cmp eax, dword [esp + 0xac]
jne 0x471fab
mov cl, byte [esp + 0xb0]
test cl, cl
jne 0x472516
mov edx, dword [esp + 0xb4]
mov bp, word [eax + 4]
cmp dword [edx], ebx
je 0x4720b9
mov eax, dword [esp + 0xbc]
mov ebx, dword [esp + 0x94]
cmp word [eax + 8], bp
jg 0x4720b9
mov ax, word [eax + 0xc]
movsx ecx, ax
cmp ecx, ebx
jle 0x471feb
movsx ebx, ax
mov dword [esp + 0x94], ebx
lea ecx, [esp + 0xb4]
call fcn.00402070
fild dword [0x4dc498]
lea edx, [esp + 0x54]
lea ecx, [esp + 0x58]
push edx
push ecx
fadd dword [0x4a8208]
lea edx, [esp + 0x3c]
lea ecx, [esp + 0x30]
push edx
push ecx
push ecx
fstp dword [esp]
push ebp
push eax
call fcn.00472a50
add esp, 0x1c
lea ecx, [esp + 0xb4]
call fcn.004403e0
mov ecx, dword [esp + 0xb4]
cmp dword [ecx], 0
je 0x4720a9
mov eax, dword [esp + 0xbc]
mov edx, dword [eax + 0x18]
test edx, edx
jne 0x4720b0
mov edx, dword [eax + 0x1c]
test edx, edx
jne 0x4720b0
lea ecx, [esp + 0xb4]
call fcn.00402070
mov esi, eax
test esi, esi
mov dword [esp + 0x18], esi
je 0x472091
lea ecx, [esi + 0x10]
mov byte [esp + 0xfc], 7
call fcn.004331c0
lea ecx, [esi + 8]
mov byte [esp + 0xfc], 6
call fcn.004331c0
push esi
call sub.MFC42.DLL_operatordelete
add esp, 4
lea ecx, [esp + 0xb4]
call fcn.004403e0
mov ecx, dword [esp + 0xb4]
cmp dword [ecx], 0
jne 0x47203d
mov eax, dword [esp + 0xbc]
cmp dword [ecx], 0
jne 0x471fcc
mov eax, dword [esp + 0x58]
xor esi, esi
cmp eax, esi
jne 0x4720c9
cmp dword [esp + 0x54], esi
je 0x472107
cmp dword [esp + 0x28], esi
jne 0x472111
cmp dword [esp + 0x34], esi
jne 0x4721c2
fild dword [0x4dc498]
lea edx, [esp + 0x54]
lea eax, [esp + 0x58]
push edx
lea ecx, [esp + 0x38]
fadd dword [0x4a8208]
push eax
lea edx, [esp + 0x30]
push ecx
push edx
push ecx
fstp dword [esp]
push ebp
push esi
call fcn.00472a50
add esp, 0x1c
cmp dword [esp + 0x28], esi
je 0x4721b8
push 8
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov byte [esp + 0xfc], 8
je 0x472139
lea ecx, [esp + 0x28]
push ecx
mov ecx, eax
call fcn.00434ed0
jmp 0x47213b
xor eax, eax
mov edx, dword [esp + 0x5c]
mov byte [esp + 0xfc], 6
cmp dword [edx], esi
jne 0x472164
mov dword [eax], eax
mov ecx, dword [esp + 0x5c]
mov dword [ecx], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], eax
jmp 0x4724ea
mov edx, dword [esp + 0x68]
mov dword [eax], edx
mov ecx, dword [esp + 0x64]
cmp ecx, esi
je 0x47218f
mov dword [ecx], eax
mov ecx, dword [esp + 0x64]
mov edx, dword [esp + 0x5c]
mov dword [esp + 0x60], ecx
cmp ecx, dword [edx]
jne 0x4721af
mov dword [edx], eax
mov dword [esp + 0x64], eax
jmp 0x4724ea
mov ecx, dword [esp + 0x60]
mov dword [ecx], eax
mov cl, byte [esp + 0x6c]
test cl, cl
je 0x4721a3
mov edx, dword [esp + 0x5c]
mov dword [edx], eax
mov cl, byte [esp + 0x6d]
test cl, cl
je 0x4721af
mov dword [esp + 0x70], eax
mov dword [esp + 0x64], eax
jmp 0x4724ea
cmp dword [esp + 0x34], esi
je 0x472287
push 8
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov byte [esp + 0xfc], 9
je 0x4721ea
lea ecx, [esp + 0x34]
push ecx
mov ecx, eax
call fcn.0043b4a0
jmp 0x4721ec
xor eax, eax
mov edx, dword [esp + 0x78]
mov byte [esp + 0xfc], 6
cmp dword [edx], esi
jne 0x47221b
mov dword [eax], eax
mov ecx, dword [esp + 0x78]
mov dword [ecx], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
jmp 0x4724ea
mov edx, dword [esp + 0x84]
mov dword [eax], edx
mov ecx, dword [esp + 0x80]
cmp ecx, esi
je 0x472252
mov dword [ecx], eax
mov ecx, dword [esp + 0x80]
mov edx, dword [esp + 0x78]
mov dword [esp + 0x7c], ecx
cmp ecx, dword [edx]
jne 0x47227b
mov dword [edx], eax
mov dword [esp + 0x80], eax
jmp 0x4724ea
mov ecx, dword [esp + 0x7c]
mov dword [ecx], eax
mov cl, byte [esp + 0x88]
test cl, cl
je 0x472269
mov edx, dword [esp + 0x78]
mov dword [edx], eax
mov cl, byte [esp + 0x89]
test cl, cl
je 0x47227b
mov dword [esp + 0x8c], eax
mov dword [esp + 0x80], eax
jmp 0x4724ea
mov eax, dword [esp + 0x20]
cmp ax, bp
jge 0x4722ab
mov ecx, dword [esp + 0x30]
cmp ax, cx
jle 0x4722ec
movsx ecx, cx
movsx edx, ax
sub edx, ecx
mov dword [esp + 0x18], edx
fild dword [esp + 0x18]
jmp 0x4722c4
mov eax, dword [esp + 0x30]
cmp bp, ax
jle 0x4722ec
movsx ecx, bp
movsx edx, ax
sub ecx, edx
mov dword [esp + 0x18], ecx
fild dword [esp + 0x18]
mov eax, dword [esp + 0x104]
sub esp, 8
fdiv dword [eax + 0x14]
fadd qword [0x4a8220]
fstp qword [esp]
call dword [sym.imp.MSVCRT.dll_floor]
add esp, 8
call sub.MSVCRT.dll__ftol
mov bl, al
jmp 0x4722ee
xor bl, bl
mov eax, dword [esp + 0x5c]
cmp dword [eax], esi
jne 0x472307
mov ecx, dword [esp + 0x78]
cmp dword [ecx], esi
jne 0x472307
add byte [esp + 0x14], bl
jmp 0x4724ab
cmp byte [esp + 0x14], 1
jae 0x472323
cmp edi, esi
je 0x472323
mov dx, word [edi + 6]
shr edx, 9
test dl, 1
jne 0x472323
mov byte [esp + 0x14], 1
mov ecx, dword [eax]
push 0x18
cmp ecx, esi
je 0x4723a7
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov byte [esp + 0xfc], 0xa
je 0x472357
mov ecx, dword [esp + 0x14]
push esi
lea edx, [esp + 0x30]
push ecx
push edx
mov ecx, eax
call fcn.0043cab0
jmp 0x472359
xor eax, eax
mov edi, eax
lea eax, [esp + 0x2c]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x2c]
cmp eax, esi
mov byte [esp + 0xfc], 6
mov dword [esp + 0x60], eax
je 0x47237b
mov eax, dword [eax]
jmp 0x47237d
xor eax, eax
cmp eax, esi
mov dword [esp + 0x64], eax
je 0x472389
mov eax, dword [eax]
jmp 0x47238b
xor eax, eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x70], esi
mov byte [esp + 0x74], 0
mov byte [esp + 0x6c], 0
mov byte [esp + 0x6d], 0
jmp 0x472430
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, esi
mov byte [esp + 0xfc], 0xb
je 0x4723d3
mov ecx, dword [esp + 0x14]
push esi
lea edx, [esp + 0x28]
push ecx
push edx
mov ecx, eax
call fcn.0043c6c0
jmp 0x4723d5
xor eax, eax
mov edi, eax
lea eax, [esp + 0x24]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x24]
cmp eax, esi
mov byte [esp + 0xfc], 6
mov dword [esp + 0x7c], eax
je 0x4723f7
mov eax, dword [eax]
jmp 0x4723f9
xor eax, eax
cmp eax, esi
mov dword [esp + 0x80], eax
je 0x472408
mov eax, dword [eax]
jmp 0x47240a
xor eax, eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x8c], esi
mov byte [esp + 0x90], 0
mov byte [esp + 0x88], 0
mov byte [esp + 0x89], 0
or byte [edi + 7], 1
mov ecx, dword [esp + 0x38]
cmp dword [ecx], esi
jne 0x47244e
mov dword [edi], edi
mov edx, dword [esp + 0x38]
mov dword [edx], edi
mov dword [esp + 0x44], edi
mov dword [esp + 0x3c], edi
jmp 0x472492
mov eax, dword [esp + 0x44]
mov dword [edi], eax
mov eax, dword [esp + 0x40]
cmp eax, esi
je 0x472472
mov dword [eax], edi
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x3c], eax
cmp eax, dword [ecx]
jne 0x472492
mov dword [ecx], edi
jmp 0x472492
mov ecx, dword [esp + 0x3c]
mov dword [ecx], edi
mov al, byte [esp + 0x48]
test al, al
je 0x472486
mov edx, dword [esp + 0x38]
mov dword [edx], edi
mov al, byte [esp + 0x49]
test al, al
je 0x472492
mov dword [esp + 0x4c], edi
mov al, byte [esp + 0x13]
mov dword [esp + 0x40], edi
test al, al
je 0x4724a7
or byte [edi + 6], 8
mov byte [esp + 0x13], 0
mov byte [esp + 0x14], bl
cmp word [esp + 0x20], bp
jge 0x4724ea
mov esi, dword [esp + 0x104]
mov ecx, dword [esi + 0x14]
lea eax, [esp + 0x38]
push eax
lea edx, [esp + 0x18]
push ecx
lea eax, [esp + 0x38]
push edx
lea ecx, [esp + 0x2c]
push eax
lea edx, [esp + 0xe0]
push ecx
push edx
call fcn.00472930
add esp, 0x18
cmp word [esp + 0x20], bp
mov edi, eax
jl 0x4724b9
cmp word [esp + 0x30], bp
jge 0x4724f5
mov dword [esp + 0x30], ebp
lea ecx, [esp + 0x98]
call fcn.004403e0
mov eax, dword [esp + 0xa0]
mov ebp, dword [esp + 0x104]
xor ebx, ebx
jmp 0x471f84
mov eax, dword [esp + 0x5c]
mov eax, dword [eax]
cmp eax, ebx
jne 0x472530
mov ecx, dword [esp + 0x78]
cmp dword [ecx], ebx
je 0x47260a
cmp eax, ebx
je 0x47255e
push 0x18
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, ebx
mov byte [esp + 0xfc], 0xc
je 0x47258c
mov edx, dword [esp + 0x14]
push ebx
lea ecx, [esp + 0x30]
push edx
push ecx
mov ecx, eax
call fcn.0043cab0
jmp 0x47258e
push 0x18
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [esp + 0x18], eax
cmp eax, ebx
mov byte [esp + 0xfc], 0xd
je 0x47258c
mov edx, dword [esp + 0x14]
push ebx
lea ecx, [esp + 0x28]
push edx
push ecx
mov ecx, eax
call fcn.0043c6c0
jmp 0x47258e
xor eax, eax
mov edi, eax
mov byte [esp + 0xfc], 6
or byte [edi + 7], 1
mov edx, dword [esp + 0x38]
cmp dword [edx], ebx
jne 0x4725b6
mov dword [edi], edi
mov eax, dword [esp + 0x38]
mov dword [eax], edi
mov dword [esp + 0x44], edi
mov dword [esp + 0x3c], edi
jmp 0x4725fa
mov ecx, dword [esp + 0x44]
mov dword [edi], ecx
mov eax, dword [esp + 0x40]
cmp eax, ebx
je 0x4725da
mov dword [eax], edi
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x3c], eax
cmp eax, dword [ecx]
jne 0x4725fa
mov dword [ecx], edi
jmp 0x4725fa
mov edx, dword [esp + 0x3c]
mov dword [edx], edi
mov al, byte [esp + 0x48]
test al, al
je 0x4725ee
mov eax, dword [esp + 0x38]
mov dword [eax], edi
mov al, byte [esp + 0x49]
test al, al
je 0x4725fa
mov dword [esp + 0x4c], edi
mov al, byte [esp + 0x13]
mov dword [esp + 0x40], edi
test al, al
je 0x47260a
or byte [edi + 6], 8
cmp edi, ebx
jne 0x472630
push 0xc9
push 0x4c453c
push 0x4b1640
push ebx
push 0x4c44f8
push 0x4dc4e4
call fcn.00441210
add esp, 0x18
mov ecx, dword [esp + 0xd0]
cmp dword [ecx], ebx
je 0x47266e
mov eax, dword [ebp + 0x14]
lea edx, [esp + 0x38]
push edx
lea ecx, [esp + 0x18]
push eax
lea edx, [esp + 0x38]
push ecx
lea eax, [esp + 0x2c]
push edx
lea ecx, [esp + 0xe0]
push eax
push ecx
call fcn.00472930
mov edx, dword [esp + 0xe8]
add esp, 0x18
cmp dword [edx], ebx
jne 0x47263b
mov eax, dword [esp + 0x40]
push 0x30
or byte [eax + 6], 0x10
call sub.MFC42.DLL_operatornew
mov esi, eax
add esp, 4
mov dword [esp + 0x18], esi
cmp esi, ebx
mov byte [esp + 0xfc], 0xe
je 0x4726b0
fld dword [ebp + 0x48]
call sub.MSVCRT.dll__ftol
fld dword [ebp + 0x44]
push eax
call sub.MSVCRT.dll__ftol
push eax
push ebp
mov ecx, esi
call fcn.00430610
mov esi, eax
jmp 0x4726b2
xor esi, esi
lea eax, [esi + 0x20]
mov byte [esp + 0xfc], 6
mov dword [esp + 0x38], eax
mov edi, dword [eax]
mov dword [esp + 0x3c], edi
mov ecx, dword [eax]
cmp ecx, ebx
je 0x4726d1
mov ecx, dword [ecx]
jmp 0x4726d3
xor ecx, ecx
mov edx, ecx
cmp edx, ebx
mov dword [esp + 0x40], edx
je 0x4726e1
mov ecx, dword [edx]
jmp 0x4726e3
xor ecx, ecx
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x1c]
cmp ecx, ebx
mov dword [esp + 0x4c], ebx
mov byte [esp + 0x50], 0
mov byte [esp + 0x48], 0
mov byte [esp + 0x49], 0
je 0x472794
cmp dword [eax], ebx
jne 0x472731
mov dword [eax], ecx
mov eax, dword [esp + 0x38]
mov ecx, dword [eax]
mov dword [esp + 0x3c], ecx
mov eax, dword [eax]
cmp eax, ebx
je 0x472720
mov eax, dword [eax]
jmp 0x472722
xor eax, eax
mov dword [esp + 0x44], eax
mov byte [esp + 0x48], 1
mov dword [esp + 0x40], ebx
jmp 0x472790
cmp edx, ebx
je 0x472761
mov eax, dword [ecx]
mov dword [edx], eax
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x40]
cmp ecx, dword [eax]
jne 0x47274b
mov edx, dword [esp + 0x1c]
mov dword [eax], edx
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x44]
mov dword [ecx], eax
mov edx, dword [esp + 0x40]
mov eax, dword [edx]
mov dword [esp + 0x44], eax
jmp 0x472790
mov ecx, dword [ecx]
mov dword [edi], ecx
mov al, byte [esp + 0x48]
test al, al
je 0x47277c
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x1c]
mov dword [eax], edx
mov byte [esp + 0x48], 0
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x44]
mov dword [edx], ecx
mov eax, dword [esp + 0x3c]
mov ecx, dword [eax]
mov dword [esp + 0x44], ecx
mov dword [esp + 0x1c], ebx
mov ecx, esi
call fcn.004306b0
push 0x43c510
lea ecx, [esp + 0x20]
mov byte [esp + 0x100], 5
call fcn.0043fe20
push 0x43b350
lea ecx, [esp + 0x28]
mov byte [esp + 0x100], 4
call fcn.0043fe20
push 0x434d80
lea ecx, [esp + 0x30]
mov byte [esp + 0x100], 3
call fcn.0043fe20
push 0x42be60
lea ecx, [esp + 0x58]
mov byte [esp + 0x100], 2
call fcn.0043fe20
push 0x42be60
lea ecx, [esp + 0x38]
mov byte [esp + 0x100], 1
call fcn.0043fe20
push 0x435f80
lea ecx, [esp + 0x5c]
mov byte [esp + 0x100], 0
call fcn.0043fe20
push 0x435f80
lea ecx, [esp + 0x2c]
mov dword [esp + 0x100], 0xffffffff
call fcn.0043fe20
mov eax, esi
pop edi
jmp 0x472910
push 0x4c44d8
call fcn.00443600
mov eax, dword [esp + 0xbc]
add esp, 4
mov cx, word [eax + 0xa]
mov ax, word [eax + 8]
movsx edx, cx
movsx eax, ax
push edx
push eax
push 0x4c44b8
call fcn.00443600
add esp, 0xc
push 0x43c510
lea ecx, [esp + 0x1c]
mov byte [esp + 0xfc], 5
call fcn.0043fe20
push 0x43b350
lea ecx, [esp + 0x24]
mov byte [esp + 0xfc], 4
call fcn.0043fe20
push 0x434d80
lea ecx, [esp + 0x2c]
mov byte [esp + 0xfc], 3
call fcn.0043fe20
push 0x42be60
lea ecx, [esp + 0x54]
mov byte [esp + 0xfc], 2
call fcn.0043fe20
push 0x42be60
lea ecx, [esp + 0x34]
mov byte [esp + 0xfc], 1
call fcn.0043fe20
push 0x435f80
lea ecx, [esp + 0x58]
mov byte [esp + 0xfc], 0
call fcn.0043fe20
push 0x435f80
lea ecx, [esp + 0x28]
mov dword [esp + 0xfc], 0xffffffff
call fcn.0043fe20
xor eax, eax
mov ecx, dword [esp + 0xf0]
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0xf0
ret