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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x4c
mov eax, dword [esp + 0x70]
test byte [eax + 0xc], 1
jne 0x447105
lea edx, [esp + 0x3c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x68]
mov edi, dword [esp + 0x74]
mov dword [esp + 0x3c], 0xffffffff
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x6c]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x60]
mov dword [esp + 0x14], edi
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x64]
mov dword [esp], eax
mov dword [esp + 4], edx
call method.std::istreambuf_iterator_char__std::char_traits_char____std::num_get_char__std::istreambuf_iterator_char__std::char_traits_char_____._M_extract_int_long__std::istreambuf_iterator_char__std::char_traits_char_____std::istreambuf_iterator_char__std::c
sub esp, 0x1c
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x64], edx
cmp eax, 1
jbe 0x4473e0
mov eax, dword [esp + 0x78]
lea ecx, [esp + 0x60]
mov byte [eax], 1
mov eax, dword [esp + 0x74]
mov dword [eax], 4
lea eax, [esp + 0x68]
mov dword [esp], eax
call method.std::istreambuf_iterator_char__std::char_traits_char___.equal_std::istreambuf_iterator_char__std::char_traits_char____const__const
sub esp, 4
test al, al
je 0x4473e9
mov eax, dword [esp + 0x74]
or dword [eax], 2
jmp 0x4473e9
add eax, 0x6c
lea ecx, [esp + 0x3c]
mov ebp, 1
mov dword [esp], eax
call method.std::__use_cache_std::__numpunct_cache_char___.operator___std::locale_const__const
mov edi, eax
mov eax, dword [eax + 0x20]
sub esp, 4
mov edx, dword [edi + 0x18]
mov byte [esp + 0x2d], 1
test eax, eax
sete bl
test edx, edx
sete byte [esp + 0x2c]
xor esi, esi
mov esi, esi
lea edi, [edi]
movzx edx, byte [esp + 0x2c]
and dl, bl
jne 0x447287
mov ecx, dword [esp + 0x60]
test ecx, ecx
je 0x447362
cmp dword [esp + 0x64], 0xffffffff
je 0x4471c0
mov ecx, dword [esp + 0x68]
test ecx, ecx
je 0x447479
cmp dword [esp + 0x6c], 0xffffffff
je 0x447310
mov ebx, ebp
mov eax, 1
test bl, bl
je 0x447433
cmp dword [edi + 0x20], esi
jne 0x447433
test esi, esi
je 0x447433
cmp byte [esp + 0x2d], 0
mov ebx, dword [esp + 0x78]
mov byte [ebx], 0
je 0x4471ae
cmp esi, dword [edi + 0x18]
je 0x447427
and eax, 1
add eax, eax
jmp 0x4472d4
mov eax, dword [ecx + 8]
cmp eax, dword [ecx + 0xc]
jae 0x447343
movzx eax, byte [eax]
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x64], eax
test ecx, ecx
jne 0x44716c
nop
lea esi, [esi]
mov ecx, dword [esp + 0x60]
test ecx, ecx
je 0x4473d6
mov eax, dword [esp + 0x64]
cmp eax, 0xffffffff
je 0x4472f3
test bl, bl
jne 0x4472a0
mov edx, dword [edi + 0x1c]
movzx edx, byte [edx + esi]
cmp dl, al
sete bl
mov ebp, ebx
je 0x447333
cmp byte [esp + 0x2c], 0
jne 0x447413
mov edx, dword [edi + 0x14]
cmp byte [edx + esi], al
sete byte [esp + 0x2d]
nop
lea esi, [esi]
mov edx, ebp
or dl, byte [esp + 0x2d]
je 0x447420
mov ecx, dword [esp + 0x60]
add esi, 1
test ecx, ecx
je 0x447261
mov eax, dword [ecx + 8]
cmp eax, dword [ecx + 0xc]
jae 0x447400
add eax, 1
mov dword [ecx + 8], eax
mov dword [esp + 0x64], 0xffffffff
mov eax, ebp
test al, al
je 0x4472e0
cmp esi, dword [edi + 0x20]
setae bl
cmp byte [esp + 0x2d], 0
jne 0x4472e2
mov eax, ebp
mov byte [esp + 0x2c], al
movzx edx, byte [esp + 0x2c]
and dl, bl
je 0x44714d
mov ebx, ebp
xor eax, eax
test bl, bl
jne 0x447186
jmp 0x447433
mov edx, dword [edi + 0x14]
movzx edx, byte [edx + esi]
cmp dl, al
sete byte [esp + 0x2d]
je 0x447230
mov eax, ebp
test al, al
je 0x447420
cmp dword [edi + 0x20], esi
jne 0x447420
test esi, esi
je 0x447420
mov eax, dword [esp + 0x78]
mov byte [eax], 0
xor eax, eax
mov edi, dword [esp + 0x74]
mov dword [edi], eax
jmp 0x4473e9
mov ebx, edx
cmp esi, dword [edi + 0x18]
mov byte [esp + 0x2d], dl
setae byte [esp + 0x2c]
jmp 0x447140
mov eax, dword [ecx + 8]
cmp eax, dword [ecx + 0xc]
jae 0x4473c0
movzx eax, byte [eax]
mov dword [esp + 0x64], eax
jmp 0x4471f9
mov eax, dword [ecx + 8]
cmp eax, dword [ecx + 0xc]
mov byte [esp + 0x2e], 0
jae 0x447390
movzx eax, byte [eax]
mov dword [esp + 0x6c], eax
cmp byte [esp + 0x2e], dl
jne 0x4471e0
jmp 0x447177
cmp byte [esp + 0x2c], 0
jne 0x447230
jmp 0x447220
mov eax, dword [ecx]
mov byte [esp + 0x2e], dl
call dword [eax + 0x24]
cmp eax, 0xffffffff
movzx edx, byte [esp + 0x2e]
jne 0x4471cf
mov dword [esp + 0x60], 0
mov ecx, dword [esp + 0x68]
test ecx, ecx
je 0x447177
cmp dword [esp + 0x6c], 0xffffffff
jne 0x4471e0
mov eax, dword [ecx + 8]
cmp eax, dword [ecx + 0xc]
mov byte [esp + 0x2e], 1
jb 0x44731d
lea esi, [esi]
lea edi, [edi]
mov eax, dword [ecx]
mov byte [esp + 0x2f], dl
call dword [eax + 0x24]
cmp eax, 0xffffffff
movzx edx, byte [esp + 0x2f]
jne 0x447320
mov dword [esp + 0x68], 0
mov edx, 1
jmp 0x447324
mov eax, dword [ecx]
call dword [eax + 0x24]
cmp eax, 0xffffffff
jne 0x447302
mov dword [esp + 0x60], 0
mov eax, 0xffffffff
jmp 0x4471f9
mov edi, dword [esp + 0x78]
mov byte [edi], al
and byte [edi], 1
mov eax, dword [esp + 0x60]
mov edx, dword [esp + 0x64]
add esp, 0x4c
pop ebx
pop esi
pop edi
pop ebp
ret 0x1c
mov eax, dword [ecx]
mov byte [esp + 0x2c], dl
call dword [eax + 0x28]
movzx edx, byte [esp + 0x2c]
jmp 0x447259
cmp byte [esp + 0x2d], 0
je 0x447420
cmp dword [edi + 0x18], esi
je 0x447467
nop
mov eax, dword [esp + 0x78]
mov byte [eax], 0
mov eax, dword [esp + 0x74]
mov dword [eax], 4
jmp 0x4473e9
cmp byte [esp + 0x2d], 0
je 0x447450
cmp dword [edi + 0x18], esi
jne 0x447450
test esi, esi
je 0x447450
mov edi, dword [esp + 0x78]
mov byte [edi], 1
jmp 0x4471ae
mov edi, dword [esp + 0x78]
test al, al
mov byte [edi], 0
je 0x447427
mov eax, dword [esp + 0x74]
mov dword [eax], 6
jmp 0x4473e9
test esi, esi
je 0x447420
mov eax, dword [esp + 0x78]
mov byte [eax], 1
xor eax, eax
jmp 0x4472d4
mov eax, dword [esp + 0x64]
jmp 0x4471f9