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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5c
mov eax, dword [esp + 0x80]
test byte [eax + 0xc], 1
jne 0x462a40
lea edx, [esp + 0x4c]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 0x18], edx
mov edx, dword [esp + 0x7c]
mov dword [esp + 8], eax
mov edi, dword [esp + 0x84]
mov dword [esp + 0xc], edx
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x74]
mov dword [esp + 0x14], edi
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 0x4c], 0xffffffff
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 + 0x70], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 0x74], edx
cmp eax, 1
ja 0x462ca0
mov edi, dword [esp + 0x88]
mov byte [edi], al
and byte [edi], 1
mov eax, dword [esp + 0x70]
mov edx, dword [esp + 0x74]
add esp, 0x5c
pop ebx
pop esi
pop edi
pop ebp
ret 0x1c
add eax, 0x6c
call method.std::__use_cache_std::__numpunct_cache_char___.operator___std::locale_const__const__clone_.isra.0_
mov edi, eax
mov eax, dword [eax + 0x20]
mov ecx, dword [edi + 0x18]
test eax, eax
sete dl
test ecx, ecx
sete byte [esp + 0x24]
or eax, ecx
je 0x462cf4
mov eax, dword [esp + 0x74]
mov byte [esp + 0x28], 1
mov esi, 1
mov ebx, dword [esp + 0x70]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x34], eax
cmp eax, 0xffffffff
sete byte [esp + 0x3f]
xor ebp, ebp
cmp dword [esp + 0x38], 0xffffffff
sete byte [esp + 0x2f]
test ebx, ebx
movzx ecx, byte [esp + 0x2f]
setne al
and al, cl
mov byte [esp + 0x3d], al
jne 0x462dd8
mov eax, dword [esp + 0x78]
movzx ecx, byte [esp + 0x3f]
test eax, eax
mov dword [esp + 0x30], eax
setne al
mov byte [esp + 0x3c], cl
and al, cl
mov byte [esp + 0x3e], al
jne 0x462d40
movzx ecx, byte [esp + 0x3c]
cmp byte [esp + 0x2f], cl
je 0x462e78
cmp byte [esp + 0x3d], 0
jne 0x462df0
movzx eax, byte [esp + 0x38]
test dl, dl
jne 0x462afc
mov ecx, dword [edi + 0x1c]
cmp byte [ecx + ebp], al
sete cl
mov esi, ecx
mov ecx, esi
test cl, cl
jne 0x462d90
cmp byte [esp + 0x24], 0
jne 0x462ea6
mov ecx, dword [edi + 0x14]
cmp byte [ecx + ebp], al
sete byte [esp + 0x28]
movzx eax, byte [esp + 0x28]
xor eax, 1
and al, dl
mov byte [esp + 0x30], al
jne 0x462cea
mov eax, esi
or al, byte [esp + 0x28]
mov byte [esp + 0x2f], al
je 0x462cf4
mov eax, dword [ebx + 8]
add ebp, 1
cmp eax, dword [ebx + 0xc]
jae 0x462e90
add eax, 1
mov dword [ebx + 8], eax
mov eax, esi
mov dword [esp + 0x74], 0xffffffff
test al, al
je 0x462da0
cmp ebp, dword [edi + 0x20]
setae dl
cmp byte [esp + 0x28], 0
jne 0x462fbb
mov ecx, esi
mov eax, edx
mov byte [esp + 0x24], cl
test al, al
jne 0x462c52
cmp byte [esp + 0x3e], 0
mov dword [esp + 0x38], 0xffffffff
jne 0x462a8c
mov ecx, ebx
mov ebx, esi
movzx esi, byte [esp + 0x28]
lea esi, [esi]
test ecx, ecx
jne 0x462d60
cmp dword [esp + 0x34], 0xffffffff
je 0x462e70
xor ecx, ecx
mov eax, 0xffffffff
lea esi, [esi]
test dl, dl
jne 0x462bd5
mov ebx, dword [edi + 0x1c]
cmp byte [ebx + ebp], al
sete bl
test bl, bl
jne 0x462d10
cmp byte [esp + 0x24], 0
jne 0x462ea0
mov esi, dword [edi + 0x14]
cmp byte [esi + ebp], al
sete al
mov esi, eax
mov eax, esi
cmp al, 1
je 0x462c01
test dl, dl
jne 0x462ce8
mov eax, esi
or al, bl
mov byte [esp + 0x28], al
je 0x462cf4
mov eax, dword [ecx + 8]
add ebp, 1
cmp eax, dword [ecx + 0xc]
jae 0x462dc0
add eax, 1
mov dword [ecx + 8], eax
test bl, bl
je 0x462d20
cmp ebp, dword [edi + 0x20]
mov eax, esi
setae dl
test al, al
jne 0x462fb1
mov byte [esp + 0x24], bl
mov eax, edx
test al, al
je 0x462ba8
mov eax, esi
mov esi, ebx
mov byte [esp + 0x28], al
xor eax, eax
mov edx, esi
test dl, dl
je 0x462c63
cmp ebp, dword [edi + 0x20]
je 0x462ee8
cmp byte [esp + 0x28], 0
je 0x462c77
cmp dword [edi + 0x18], ebp
jne 0x462c77
test ebp, ebp
jne 0x462f3e
mov eax, dword [esp + 0x88]
cmp byte [esp + 0x30], 0
mov byte [eax], 0
je 0x462cfe
mov eax, dword [esp + 0x84]
mov dword [eax], 6
jmp 0x462a2b
mov eax, dword [esp + 0x88]
lea ecx, [esp + 0x70]
mov byte [eax], 1
mov eax, dword [esp + 0x84]
mov dword [eax], 4
lea eax, [esp + 0x78]
mov dword [esp], eax
call dbg.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 0x462a2b
mov eax, dword [esp + 0x84]
or dword [eax], 2
jmp 0x462a2b
mov esi, ebx
mov eax, esi
test al, al
jne 0x462f10
mov eax, dword [esp + 0x88]
mov byte [eax], 0
mov eax, dword [esp + 0x84]
mov dword [eax], 4
jmp 0x462a2b
cmp byte [esp + 0x24], 0
jne 0x462bf3
jmp 0x462be8
movzx edx, byte [esp + 0x28]
mov esi, edx
cmp ebp, dword [edi + 0x18]
setae byte [esp + 0x24]
movzx eax, byte [esp + 0x24]
and eax, edx
jmp 0x462c42
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x30]
mov eax, dword [eax + 0xc]
cmp dword [ecx + 8], eax
jae 0x462e08
mov byte [esp + 0x3c], 0
jmp 0x462ace
mov eax, dword [ecx + 0xc]
cmp dword [ecx + 8], eax
jae 0x462e40
cmp dword [esp + 0x34], 0xffffffff
jne 0x462e70
mov eax, dword [ecx + 8]
cmp eax, dword [ecx + 0xc]
jae 0x462ec0
movzx eax, byte [eax]
jmp 0x462bc8
cmp byte [esp + 0x24], 0
jne 0x462b1c
jmp 0x462b11
movzx edx, byte [esp + 0x2f]
mov ecx, edx
cmp ebp, dword [edi + 0x18]
mov byte [esp + 0x28], cl
setae byte [esp + 0x24]
movzx eax, byte [esp + 0x24]
and eax, edx
jmp 0x462b80
mov eax, dword [ecx]
mov dword [esp + 0x24], ecx
call dword [eax + 0x28]
mov ecx, dword [esp + 0x24]
jmp 0x462c24
mov eax, dword [ebx + 0xc]
cmp dword [ebx + 8], eax
jae 0x462f4a
mov byte [esp + 0x2f], 0
jmp 0x462aac
mov eax, dword [ebx + 8]
cmp eax, dword [ebx + 0xc]
jae 0x462f80
movzx eax, byte [eax]
jmp 0x462aed
mov eax, dword [ecx]
mov ecx, dword [esp + 0x30]
mov byte [esp + 0x3c], dl
call dword [eax + 0x24]
movzx edx, byte [esp + 0x3c]
cmp eax, 0xffffffff
jne 0x462d54
movzx eax, byte [esp + 0x3e]
mov dword [esp + 0x78], 0
mov byte [esp + 0x3c], al
jmp 0x462ace
mov eax, dword [ecx]
mov byte [esp + 0x2f], dl
mov dword [esp + 0x28], ecx
call dword [eax + 0x24]
mov ecx, dword [esp + 0x28]
movzx edx, byte [esp + 0x2f]
cmp eax, 0xffffffff
jne 0x462d6c
xor ecx, ecx
cmp dword [esp + 0x34], 0xffffffff
mov dword [esp + 0x70], ecx
jne 0x462bbb
mov eax, esi
mov esi, ebx
mov byte [esp + 0x28], al
mov byte [esp + 0x30], 1
mov eax, 2
jmp 0x462c54
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x28]
jmp 0x462b55
mov eax, esi
mov byte [esp + 0x28], al
xor eax, eax
cmp byte [esp + 0x28], 0
mov byte [esp + 0x30], 0
jne 0x462c6a
jmp 0x462cf4
mov eax, dword [ecx]
mov byte [esp + 0x2f], dl
mov dword [esp + 0x28], ecx
call dword [eax + 0x24]
movzx edx, byte [esp + 0x2f]
cmp eax, 0xffffffff
je 0x462fa6
mov ecx, dword [esp + 0x28]
jmp 0x462bc8
test ebp, ebp
je 0x462c77
mov edx, dword [esp + 0x88]
cmp byte [esp + 0x28], 0
mov byte [edx], 0
je 0x462f30
cmp ebp, dword [edi + 0x18]
jne 0x462f30
jmp 0x462cfe
cmp ebp, dword [edi + 0x20]
jne 0x462cf4
test ebp, ebp
je 0x462cf4
mov eax, dword [esp + 0x88]
mov byte [eax], 0
xor eax, eax
lea esi, [esi]
mov edi, dword [esp + 0x84]
mov dword [edi], eax
jmp 0x462a2b
mov edi, dword [esp + 0x88]
mov byte [edi], 1
jmp 0x462f30
mov eax, dword [ebx]
mov byte [esp + 0x2f], dl
mov ecx, ebx
call dword [eax + 0x24]
movzx edx, byte [esp + 0x2f]
cmp eax, 0xffffffff
jne 0x462de4
xor eax, eax
xor ebx, ebx
mov dword [esp + 0x70], eax
movzx eax, byte [esp + 0x3d]
mov byte [esp + 0x3d], 0
mov byte [esp + 0x2f], al
jmp 0x462aac
mov eax, dword [ebx]
mov byte [esp + 0x2f], dl
mov ecx, ebx
call dword [eax + 0x24]
movzx edx, byte [esp + 0x2f]
cmp eax, 0xffffffff
jne 0x462aed
xor ebx, ebx
mov dword [esp + 0x70], ebx
xor ebx, ebx
jmp 0x462aed
xor eax, eax
mov dword [esp + 0x70], eax
jmp 0x462bbb
movzx esi, byte [esp + 0x28]
jmp 0x462d27
movzx ecx, byte [esp + 0x2f]
jmp 0x462da7