Function at 0x10060bf0
Capabilities:
Access peb ldr_data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10099838
mov eax, dword fs:[0]
push eax
sub esp, 0x88
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword [ebp + 8]
lea ebx, [edi + 4]
mov ecx, dword [ebp + 0xc]
mov dword [edi], eax
mov dword [ebp - 0x48], edi
mov dword [ebx], 0
mov dword [ebp - 4], 0
xor eax, eax
push 0xffffffffffffffff
lea esi, [edi + 0x34]
mov dword [edi + 8], 2
mov byte [edi + 0xc], 0
mov byte [edi + 0x14], 0
mov byte [edi + 0x18], 0
mov dword [edi + 0x20], 0
mov dword [edi + 0x24], 0
mov dword [edi + 0x28], 0
mov dword [edi + 0x2c], 0
mov byte [edi + 0x30], 0
push eax
push ecx
mov dword [esi + 0x14], 7
mov ecx, esi
mov dword [esi + 0x10], 0
mov word [esi], ax
call fcn.10057620
mov byte [ebp - 4], 1
lea eax, [edi + 0x4c]
push 0
push 0
mov dword [ebp - 0x40], eax
mov dword [eax], 0
mov dword [eax + 4], 0
call fcn.1005bc80
mov dword [edi + 0x4c], eax
mov byte [ebp - 4], 4
mov dword [edi + 0x54], 0
mov dword [edi + 0x58], 0
mov dword [edi + 0x5c], 0
mov byte [ebp - 4], 5
mov eax, dword [ebp + 0x10]
mov dword [edi + 0x60], eax
xor eax, eax
push ecx
mov ecx, dword [edi]
mov word [edi + 0x16], ax
lea eax, [ebp - 0x34]
push esi
push eax
mov dword [edi + 0x10], 0
call fcn.10055d90
mov ecx, eax
mov byte [ebp - 4], 6
cmp ebx, ecx
je 0x10060d16
mov eax, dword [ecx]
mov dword [ecx], 0
mov ecx, dword [ebx]
mov dword [ebx], eax
test ecx, ecx
je 0x10060d16
mov eax, dword [ecx]
push 1
mov eax, dword [eax + 4]
add ecx, eax
mov eax, dword [ecx]
call dword [eax]
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x34]
test eax, eax
je 0x10060d2e
mov ecx, dword [eax]
push 1
mov ecx, dword [ecx + 4]
add ecx, eax
mov eax, dword [ecx]
call dword [eax]
mov ecx, dword [ebx]
test ecx, ecx
je 0x10061058
push 0
push 4
lea eax, [ebp - 0x2c]
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::read_char___long_long___int64__]
mov ecx, dword [ebx]
cmp dword [ecx + 8], 4
jne 0x10061058
cmp dword [ecx + 0xc], 0
jne 0x10061058
mov eax, 0x809
cmp word [ebp - 0x2c], ax
jne 0x10061058
movzx eax, word [ebp - 0x2a]
cdq
push edx
push eax
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::read_char___long_long___int64__]
mov ecx, dword [ebx]
movzx eax, word [ebp - 0x2a]
cdq
cmp eax, dword [ecx + 8]
jne 0x10061058
cmp edx, dword [ecx + 0xc]
jne 0x10061058
mov dx, word [ebp - 0x24]
mov esi, 0x500
cmp dx, si
je 0x10060db1
mov eax, 0x600
cmp dx, ax
jne 0x10061058
cmp word [ebp - 0x22], 5
jne 0x10061058
xor eax, eax
mov byte [ebp - 0x25], 0
cmp dx, si
push 0
setne al
mov dword [edi + 8], eax
lea eax, [ebp - 0x2c]
push 4
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::read_char___long_long___int64__]
mov ecx, dword [ebx]
cmp dword [ecx + 8], 4
jne 0x10061058
cmp dword [ecx + 0xc], 0
jne 0x10061058
mov eax, dword [ebp - 0x2c]
mov byte [ebp - 0x2d], 0
cmp ax, 0xa
je 0x10061018
movzx eax, ax
cmp eax, 0xd3
jg 0x10060f4c
je 0x10060f46
sub eax, 0x18
je 0x10060f0e
sub eax, 0x17
je 0x10060ee1
sub eax, 0x56
jne 0x10060f5b
lea eax, [ebp - 0x7c]
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::fpos_int____thiscall_std::basic_istream_char__struct_std::char_traits_char__::tellg_void_]
push 0x80
mov esi, dword [eax + 8]
add esi, dword [eax]
mov ecx, dword [eax + 0xc]
adc ecx, dword [eax + 4]
mov dword [ebp - 0x40], ecx
call dword [sym.imp.MSVCR120.dll_void____cdecl_operator_new_unsigned_int_]
add esp, 4
mov dword [ebp - 0x44], eax
mov byte [ebp - 4], 7
test eax, eax
je 0x10060e7c
mov cl, byte [ebp - 0x2d]
inc cl
mov byte [ebp - 0x34], cl
push dword [ebp - 0x34]
mov byte [ebp - 0x2d], cl
mov ecx, eax
push edi
push dword [ebx]
push dword [edi]
call fcn.10066dc0
jmp 0x10060e7e
xor eax, eax
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x3c]
push eax
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
call fcn.1006a910
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x3c]
mov al, byte [ecx + 0x70]
test al, al
je 0x10060eba
mov al, byte [ecx + 0x38]
test al, al
je 0x10060eba
lea eax, [ebp - 0x3c]
push eax
lea ecx, [edi + 0x4c]
call fcn.100646a0
movzx eax, word [ebp - 0x2a]
mov ecx, dword [ebx]
cdq
add eax, esi
push 0
adc edx, dword [ebp - 0x40]
push edx
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::seekg_long_long___int64___int_]
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x3c]
call fcn.10055740
jmp 0x10060fed
push 0
push 4
lea eax, [edi + 0x10]
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::read_char___long_long___int64__]
mov eax, dword [ebx]
cmp dword [eax + 8], 4
jne 0x10061058
cmp dword [eax + 0xc], 0
jne 0x10061058
mov byte [edi + 0xc], 1
jmp 0x10060fed
cmp byte [ebp - 0x25], 0
jne 0x10060fdc
lea eax, [ebp - 0x64]
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::fpos_int____thiscall_std::basic_istream_char__struct_std::char_traits_char__::tellg_void_]
mov ecx, eax
mov byte [ebp - 0x25], 1
mov edx, dword [ecx + 8]
add edx, dword [ecx]
mov eax, dword [ecx + 0xc]
adc eax, dword [ecx + 4]
mov dword [edi + 0x20], edx
add dword [edi + 0x20], 0xfffffffc
mov dword [edi + 0x24], eax
adc dword [edi + 0x24], 0xffffffff
jmp 0x10060fdc
mov byte [edi + 0x18], 1
jmp 0x10060f5b
sub eax, 0xfc
je 0x10060fb4
sub eax, 0x65
je 0x10060f84
dec eax
je 0x10060f7e
movzx eax, word [ebp - 0x2a]
push 1
cdq
push edx
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::seekg_long_long___int64___int_]
mov ecx, dword [ebx]
mov eax, dword [ecx]
mov eax, dword [eax + 4]
test byte [eax + ecx + 0xc], 6
jne 0x10061058
jmp 0x10060fed
mov byte [edi + 0x14], 1
jmp 0x10060fed
push 0
push 2
lea esi, [edi + 0x16]
push esi
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::read_char___long_long___int64__]
mov eax, dword [ebx]
cmp dword [eax + 8], 2
jne 0x10061058
cmp dword [eax + 0xc], 0
jne 0x10061058
cmp word [esi], 0
setne al
mov byte [edi + 0x14], al
jmp 0x10060fed
lea eax, [ebp - 0x94]
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::fpos_int____thiscall_std::basic_istream_char__struct_std::char_traits_char__::tellg_void_]
mov ecx, eax
mov edx, dword [ecx + 8]
add edx, dword [ecx]
mov eax, dword [ecx + 0xc]
adc eax, dword [ecx + 4]
mov dword [edi + 0x28], edx
add dword [edi + 0x28], 0xfffffffc
mov dword [edi + 0x2c], eax
adc dword [edi + 0x2c], 0xffffffff
movzx eax, word [ebp - 0x2a]
mov ecx, dword [ebx]
push 1
cdq
push edx
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::seekg_long_long___int64___int_]
mov ecx, dword [ebx]
lea eax, [ebp - 0x2c]
push 0
push 4
push eax
call dword [sym.imp.MSVCP120.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::read_char___long_long___int64__]
mov ecx, dword [ebx]
cmp dword [ecx + 8], 4
jne 0x10061058
cmp dword [ecx + 0xc], 0
jne 0x10061058
mov eax, dword [ebp - 0x2c]
cmp ax, 0xa
jne 0x10060e00
mov eax, dword [edi + 0x4c]
mov esi, dword [eax]
cmp esi, eax
je 0x1006104e
mov ecx, dword [esi + 8]
call fcn.100673f0
test al, al
je 0x1006103a
mov eax, dword [esi + 8]
cmp dword [eax + 0x64], 0
je 0x1006103a
mov esi, dword [esi]
jmp 0x10061049
push esi
lea eax, [ebp - 0x44]
push eax
lea ecx, [edi + 0x4c]
call fcn.100646f0
mov esi, dword [eax]
cmp esi, dword [edi + 0x4c]
jne 0x10061021
cmp dword [edi + 0x50], 0
seta cl
mov byte [edi + 0x30], cl
mov dword [ebp - 4], 0xffffffff
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.10081d64
mov esp, ebp
pop ebp
ret 0x14