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

Disassembly:
sub esp, 0x8c8
mov eax, dword [0x101b8300]
mov edx, 0xfffffffe
push ebx
mov dword [esp + 0x44], eax
mov eax, dword [0x101b8304]
push ebp
mov dword [esp + 0x1c], eax
lea ebp, [esp + 0x100]
lea eax, [esp + 0x290]
mov dword [esp + 0x18], 0
push esi
push edi
mov dword [esp + 0x48], eax
mov esi, eax
mov eax, 0xc8
mov dword [esp + 0x18], edx
xor edi, edi
mov dword [esp + 0x44], eax
mov ebx, ebp
mov dword [esp + 0x4c], edi
lea ecx, [eax + eax]
mov word [ebx], di
lea eax, [ebp - 2]
add eax, ecx
cmp eax, ebx
ja 0x100324eb
sub ebx, ebp
sar ebx, 1
inc ebx
cmp dword [esp + 0x44], 0x2710
mov dword [esp + 0x1c], ebx
jae 0x10033249
mov eax, ecx
mov dword [esp + 0x28], ebp
cmp eax, 0x2710
mov ecx, 0x2710
cmova eax, ecx
mov dword [esp + 0x44], eax
lea eax, [eax + eax*4]
lea eax, [eax*2 + 7]
push eax
call dword [sym.imp.mozglue.dll_malloc]
mov esi, eax
add esp, 4
test esi, esi
je 0x10033249
test ebx, ebx
je 0x1003248f
mov ecx, esi
sub ebp, esi
mov edx, ebx
nop dword [eax + eax]
mov ax, word [ecx + ebp]
lea ecx, [ecx + 2]
mov word [ecx - 2], ax
sub edx, 1
jne 0x10032440
mov eax, dword [esp + 0x44]
mov ebp, esi
lea edx, [eax*2 + 7]
and edx, 0xfffffff8
add edx, esi
mov esi, dword [esp + 0x48]
sub esi, edx
mov dword [esp + 0x48], edx
nop dword [eax]
mov eax, dword [esi + edx]
lea edx, [edx + 8]
mov ecx, dword [esi + edx - 4]
mov dword [edx - 8], eax
mov dword [edx - 4], ecx
sub ebx, 1
jne 0x10032470
mov ebx, dword [esp + 0x1c]
mov esi, dword [esp + 0x48]
jmp 0x100324a6
mov eax, dword [esp + 0x44]
mov ebp, esi
lea eax, [eax*2 + 7]
shr eax, 3
lea esi, [esi + eax*8]
mov dword [esp + 0x48], esi
mov eax, dword [esp + 0x28]
lea ecx, [esp + 0x108]
cmp eax, ecx
je 0x100324bf
push eax
call dword [sym.imp.mozglue.dll_free]
add esp, 4
mov eax, dword [esp + 0x1c]
lea ebx, [ebx*2 - 2]
add ebx, ebp
lea esi, [esi + eax*8]
mov eax, dword [esp + 0x44]
add esi, 0xfffffff8
lea eax, [eax*2 - 2]
add eax, ebp
cmp eax, ebx
jbe 0x100327eb
mov edx, dword [esp + 0x18]
cmp edi, 0xf
je 0x100332f9
movsx ecx, word [edi*2 + 0x10184388]
mov dword [esp + 0x10], ecx
cmp ecx, 0xfffffff4
je 0x100326f5
cmp edx, 0xfffffffe
jne 0x10032636
mov eax, dword [esp + 0x8dc]
cmp byte [eax + 0x10], 0
mov edx, dword [eax + 8]
mov dword [esp + 0x1c], edx
jne 0x10032536
mov ecx, dword [eax + 4]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [esp + 0x8dc]
mov ecx, dword [esp + 0x1c]
xor edx, edx
mov byte [eax + 0x10], 0
mov dword [esp + 0x18], edx
mov eax, dword [ecx]
add eax, 0xffffffdf
cmp eax, 0xee
ja case.0x1003255b.34
movzx eax, byte [eax + 0x10033350]
jmp dword [eax*4 + 0x10033320]
lea eax, [esp + 0x24]
mov dword [esp + 0x24], edx
push eax
mov dword [esp + 0x2c], edx
call fcn.1003fef0
test al, al
je 0x10032599
mov ecx, dword [esp + 0x1c]
lea eax, [esp + 0x28]
push eax
call fcn.1003c390
test al, al
jne 0x100325c6
mov eax, dword [esp + 0x8dc]
cmp byte [eax + 0x18], 0
je 0x100325c6
jmp 0x100325a0
mov eax, dword [esp + 0x8dc]
mov ecx, dword [eax]
mov eax, dword [esp + 0x1c]
add eax, 0x10
push eax
mov eax, dword [esp + 0x20]
mov edx, dword [ecx]
add eax, 8
push eax
push 5
call dword [edx + 4]
mov ecx, dword [esp + 0x8dc]
mov eax, dword [ecx + 0x1c]
mov byte [eax], 0
mov eax, dword [esp + 0x24]
mov edx, 0x102
mov dword [esp + 0x50], eax
mov dword [esp + 0x24], 0
jmp 0x1003262e
mov dword [esp + 0x50], 0xffffffff
mov edx, 0x103
mov dword [esp + 0x24], 0xffffffff
jmp 0x1003262e
mov edx, 0x104
jmp 0x1003262e
mov edx, 0x105
jmp 0x1003262e
mov edx, 0x107
jmp 0x1003262e
mov edx, 0x106
jmp 0x1003262e
mov edx, 0x109
jmp 0x1003262e
mov edx, 0x108
jmp 0x1003262e
mov edx, 0x10b
jmp 0x1003262e
mov edx, 0x10a
jmp 0x1003262e
mov edx, dword [ecx]
mov dword [esp + 0x18], edx
mov ecx, dword [esp + 0x10]
test edx, edx
jg 0x10032642
xor edx, edx
mov dword [esp + 0x18], edx
jmp 0x10032658
cmp edx, 0x10c
ja 0x10032653
movzx edx, byte [edx + 0x10184278]
jmp 0x10032658
mov edx, 2
add ecx, edx
cmp ecx, 0xb0
ja 0x100326f5
movsx eax, byte [ecx + 0x101844f8]
cmp eax, edx
jne 0x100326f5
movzx edi, byte [ecx + 0x10184440]
test edi, edi
jne 0x100326c0
neg edi
mov eax, edi
mov dword [esp + 0x1c], eax
movzx eax, byte [eax + 0x101845cc]
mov ecx, esi
mov dword [esp + 0x28], eax
shl eax, 3
sub ecx, eax
mov edx, dword [ecx + 0xc]
lea eax, [ecx + 8]
mov ecx, dword [eax]
mov dword [esp + 0x104], eax
mov eax, dword [esp + 0x1c]
add eax, 0xfffffffe
cmp eax, 0x1b
ja case.0x100326b9.3
jmp dword [eax*4 + 0x10033440]
mov ecx, dword [esp + 0x4c]
add esi, 8
mov eax, dword [esp + 0x50]
test ecx, ecx
mov edx, 0xfffffffe
mov dword [esp + 0x18], edx
mov dword [esi], eax
mov eax, dword [esp + 0x24]
mov dword [esi + 4], eax
lea eax, [ecx - 1]
cmove eax, ecx
add ebx, 2
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x44]
jmp 0x100323d2
movzx eax, byte [edi + 0x101843f8]
mov dword [esp + 0x1c], eax
test eax, eax
jne 0x10032688
mov eax, dword [esp + 0x4c]
test eax, eax
jne 0x100327dc
mov eax, dword [esp + 0x8dc]
movq xmm0, qword [str.syntax_error]
mov dword [esp + 0x3c], 0xc
mov dword [esp + 0x40], 0xf
mov ecx, dword [eax]
mov eax, dword [0x10180c90]
mov dword [esp + 0x34], eax
lea eax, [esp + 0x2c]
push eax
mov eax, dword [esp + 0x8e0]
movq qword [esp + 0x30], xmm0
mov byte [esp + 0x3c], 0
mov edx, dword [ecx]
mov eax, dword [eax + 8]
add eax, 8
push eax
push 8
call dword [edx + 4]
mov ecx, dword [esp + 0x40]
cmp ecx, 0x10
jb 0x10032795
mov edx, dword [esp + 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003278b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100332d4
push ecx
push edx
call fcn.10174919
add esp, 8
mov edx, dword [esp + 0x18]
mov dword [esp + 0x4c], 3
movsx ecx, word [edi*2 + 0x10184388]
cmp ecx, 0xfffffff4
je 0x100327cc
lea eax, [ecx + 1]
cmp eax, 0xb0
ja 0x100327cc
cmp byte [ecx + 0x101844f9], 1
jne 0x100327cc
movzx edi, byte [ecx + 0x10184441]
test edi, edi
jne 0x10032800
cmp ebx, ebp
je 0x100327eb
movsx edi, word [ebx - 2]
sub esi, 8
sub ebx, 2
jmp 0x100327a1
cmp eax, 3
jne 0x10032795
mov edx, dword [esp + 0x18]
test edx, edx
jg 0x100327f5
jne 0x10032799
mov esi, 1
jmp 0x100332fb
mov edx, 0xfffffffe
mov dword [esp + 0x18], edx
jmp 0x10032799
mov eax, dword [esp + 0x50]
add esi, 8
add ebx, 2
mov dword [esi], eax
mov eax, dword [esp + 0x24]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x44]
jmp 0x100323d2
mov eax, dword [esp + 0x8dc]
cmp dword [eax + 0x20], 0
jg case.0x100326b9.28
mov edx, dword [eax + 8]
mov ecx, dword [eax]
lea eax, [edx + 0x10]
mov edi, dword [ecx]
push eax
lea eax, [edx + 8]
push eax
mov eax, dword [esp + 0x8e4]
push dword [eax + 0x14]
call dword [edi + 4]
mov ecx, dword [esp + 0x8dc]
mov eax, dword [ecx + 0x1c]
mov byte [eax], 0
mov ecx, dword [esi]
mov edx, dword [esi + 4]
jmp case.0x100326b9.3
mov eax, dword [esi - 8]
or eax, dword [esi - 4]
je case.0x100326b9.3
mov edi, dword [esp + 0x8dc]
inc dword [edi + 0x20]
jmp case.0x100326b9.3
mov eax, dword [esi - 0x18]
or eax, dword [esi - 0x14]
je 0x10032895
mov edi, dword [esp + 0x8dc]
dec dword [edi + 0x20]
mov ecx, 1
xor edx, edx
jmp case.0x100326b9.3
mov eax, dword [esi]
or eax, dword [esi + 4]
jmp 0x10032936
mov eax, dword [esi - 8]
or eax, dword [esi - 4]
jne case.0x100326b9.3
mov edi, dword [esp + 0x8dc]
inc dword [edi + 0x20]
jmp case.0x100326b9.3
mov eax, dword [esi - 0x18]
or eax, dword [esi - 0x14]
jne 0x100328e2
mov eax, dword [esp + 0x8dc]
xorps xmm0, xmm0
movlpd qword [esp + 0x10], xmm0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
dec dword [eax + 0x20]
jmp case.0x100326b9.3
mov eax, dword [esi]
or eax, dword [esi + 4]
je 0x1003293c
mov ecx, 1
xor edx, edx
jmp case.0x100326b9.3
mov ecx, dword [esi - 0x10]
mov edx, dword [esi - 0xc]
or ecx, dword [esi]
or edx, dword [esi + 4]
jmp case.0x100326b9.3
mov ecx, dword [esi - 0x10]
mov edx, dword [esi - 0xc]
xor ecx, dword [esi]
xor edx, dword [esi + 4]
jmp case.0x100326b9.3
mov ecx, dword [esi - 0x10]
mov edx, dword [esi - 0xc]
and ecx, dword [esi]
and edx, dword [esi + 4]
jmp case.0x100326b9.3
mov eax, dword [esi - 0x10]
cmp eax, dword [esi]
jne 0x10032889
mov eax, dword [esi - 0xc]
cmp eax, dword [esi + 4]
jne 0x10032889
xorps xmm0, xmm0
movlpd qword [esp + 0x10], xmm0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
jmp case.0x100326b9.3
mov eax, dword [esi - 0x10]
cmp eax, dword [esi]
jne 0x1003293c
mov eax, dword [esi - 0xc]
cmp eax, dword [esi + 4]
jne 0x1003293c
mov ecx, 1
xor edx, edx
jmp case.0x100326b9.3
mov eax, dword [esi - 0xc]
cmp eax, dword [esi + 4]
jl 0x1003293c
jg 0x10032889
mov eax, dword [esi - 0x10]
cmp eax, dword [esi]
jb 0x1003293c
mov ecx, 1
xor edx, edx
jmp case.0x100326b9.3
mov eax, dword [esi - 0xc]
cmp eax, dword [esi + 4]
jg 0x1003293c
jl 0x10032889
mov eax, dword [esi - 0x10]
cmp eax, dword [esi]
ja 0x1003293c
mov ecx, 1
xor edx, edx
jmp case.0x100326b9.3
mov eax, dword [esi - 0xc]
cmp eax, dword [esi + 4]
jl 0x1003293c
jg 0x10032889
mov eax, dword [esi - 0x10]
cmp eax, dword [esi]
jbe 0x1003293c
mov ecx, 1
xor edx, edx
jmp case.0x100326b9.3
mov eax, dword [esi - 0xc]
cmp eax, dword [esi + 4]
jg 0x1003293c
jl 0x10032889
mov eax, dword [esi - 0x10]
cmp eax, dword [esi]
jae 0x1003293c
mov ecx, 1
xor edx, edx
jmp case.0x100326b9.3
cmp dword [esi + 4], 0
mov ecx, dword [esi]
jg 0x10032bf0
jl 0x10032a13
test ecx, ecx
jae 0x10032bf0
mov edi, dword [esp + 0x8dc]
cmp dword [edi + 0x20], 0
jg 0x1003293c
lea ecx, [esp + 0xbc]
mov dword [esp + 0x6c], 0x10180dd8
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::constructor_void_]
or dword [esp + 0x20], 8
lea eax, [esp + 0x70]
push 0
push 0
push eax
lea ecx, [esp + 0x78]
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char_____bool_]
mov eax, dword [esp + 0x6c]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x6c], 0x10180dd4
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [esp + ecx + 0x68], eax
lea ecx, [esp + 0x70]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
push 0x101845ec
push dword [esi - 0xc]
lea ecx, [esp + 0x74]
mov dword [esp + 0x78], 0x10180cb0
push dword [esi - 0x10]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 4
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_long___int64__]
push eax
call fcn.10025310
add esp, 8
mov ecx, eax
push dword [esi + 4]
push dword [esi]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_long___int64__]
lea eax, [esp + 0x54]
push eax
lea ecx, [esp + 0x74]
call fcn.100288f0
cmp dword [esp + 0x68], 0x10
lea edx, [esp + 0x54]
mov esi, dword [edi]
cmovae edx, dword [esp + 0x54]
mov ecx, edx
mov dword [esp + 0x2c], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
lea eax, [ecx + 1]
mov dword [esp + 0x10], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10032b00
sub ecx, dword [esp + 0x10]
push ecx
push edx
lea ecx, [esp + 0x34]
call fcn.100011e0
mov edx, dword [esi]
lea eax, [esp + 0x2c]
push eax
mov eax, dword [edi + 8]
mov ecx, esi
add eax, 8
push eax
push 0x27
call dword [edx + 4]
mov ecx, dword [esp + 0x40]
cmp ecx, 0x10
jb 0x10032b61
mov edx, dword [esp + 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10032b57
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100332d4
push ecx
push edx
call fcn.10174919
add esp, 8
mov eax, dword [edi + 0x1c]
mov ecx, dword [esp + 0x68]
mov byte [eax], 0
cmp ecx, 0x10
jb 0x10032b9d
mov edx, dword [esp + 0x54]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10032b93
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100332d4
push ecx
push edx
call fcn.10174919
add esp, 8
mov eax, dword [esp + 0x6c]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x6c], 0x10180dd4
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [esp + ecx + 0x68], eax
lea ecx, [esp + 0x70]
call fcn.10025830
lea ecx, [esp + 0x74]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::destructor_void_]
lea ecx, [esp + 0xbc]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
xorps xmm0, xmm0
movlpd qword [esp + 0x10], xmm0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
jmp case.0x100326b9.3
mov eax, dword [esi - 0x10]
mov edx, dword [esi - 0xc]
call fcn.10174d30
mov ecx, eax
jmp case.0x100326b9.3
cmp dword [esi + 4], 0
mov ecx, dword [esi]
jg 0x10032dc4
jl 0x10032c18
test ecx, ecx
jae 0x10032dc4
mov edi, dword [esp + 0x8dc]
cmp dword [edi + 0x20], 0
jg 0x1003293c
lea ecx, [esp + 0xbc]
mov dword [esp + 0x6c], 0x10180dd8
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::constructor_void_]
or dword [esp + 0x20], 1
lea eax, [esp + 0x70]
push 0
push 0
push eax
lea ecx, [esp + 0x78]
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char_____bool_]
mov eax, dword [esp + 0x6c]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x6c], 0x10180dd4
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [esp + ecx + 0x68], eax
lea ecx, [esp + 0x70]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
push 0x101845f4
push dword [esi - 0xc]
lea ecx, [esp + 0x74]
mov dword [esp + 0x78], 0x10180cb0
push dword [esi - 0x10]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 4
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_long___int64__]
push eax
call fcn.10025310
add esp, 8
mov ecx, eax
push dword [esi + 4]
push dword [esi]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_long___int64__]
lea eax, [esp + 0x54]
push eax
lea ecx, [esp + 0x74]
call fcn.100288f0
cmp dword [esp + 0x68], 0x10
lea edx, [esp + 0x54]
mov esi, dword [edi]
cmovae edx, dword [esp + 0x54]
mov ecx, edx
mov dword [esp + 0x2c], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
lea eax, [ecx + 1]
mov dword [esp + 0x10], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10032d05
sub ecx, dword [esp + 0x10]
push ecx
push edx
lea ecx, [esp + 0x34]
call fcn.100011e0
mov edx, dword [esi]
lea eax, [esp + 0x2c]
push eax
mov eax, dword [edi + 8]
mov ecx, esi
add eax, 8
push eax
push 0x27
call dword [edx + 4]
mov ecx, dword [esp + 0x40]
cmp ecx, 0x10
jb 0x10032d66
mov edx, dword [esp + 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10032d5c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100332d4
push ecx
push edx
call fcn.10174919
add esp, 8
mov eax, dword [edi + 0x1c]
mov ecx, dword [esp + 0x68]
mov byte [eax], 0
cmp ecx, 0x10
jb 0x10032da2
mov edx, dword [esp + 0x54]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10032d98
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100332d4
push ecx
push edx
call fcn.10174919
add esp, 8
mov eax, dword [esp + 0x6c]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x6c], 0x10180dd4
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [esp + ecx + 0x68], eax
jmp 0x10032bba
mov eax, dword [esi - 0x10]
mov edx, dword [esi - 0xc]
call fcn.10174d10
mov ecx, eax
jmp case.0x100326b9.3
mov ecx, dword [esi - 0x10]
sub ecx, dword [esi]
mov edx, dword [esi - 0xc]
sbb edx, dword [esi + 4]
jmp case.0x100326b9.3
mov ecx, dword [esi - 0x10]
add ecx, dword [esi]
mov edx, dword [esi - 0xc]
adc edx, dword [esi + 4]
jmp case.0x100326b9.3
mov edx, dword [esi]
mov eax, edx
mov ecx, dword [esi + 4]
or eax, ecx
jne 0x10032fb0
mov edi, dword [esp + 0x8dc]
cmp dword [edi + 0x20], eax
jg 0x1003293c
lea ecx, [esp + 0xbc]
mov dword [esp + 0x6c], 0x10180dd8
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::constructor_void_]
or dword [esp + 0x20], 2
lea eax, [esp + 0x70]
push 0
push 0
push eax
lea ecx, [esp + 0x78]
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char_____bool_]
mov eax, dword [esp + 0x6c]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x6c], 0x10180dd4
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [esp + ecx + 0x68], eax
lea ecx, [esp + 0x70]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
push 0x101845fc
push dword [esi - 0xc]
lea ecx, [esp + 0x74]
mov dword [esp + 0x78], 0x10180cb0
push dword [esi - 0x10]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 4
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_long___int64__]
push eax
call fcn.10025310
add esp, 8
mov ecx, eax
push dword [esi + 4]
push dword [esi]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_long___int64__]
lea eax, [esp + 0x54]
push eax
lea ecx, [esp + 0x74]
call fcn.100288f0
cmp dword [esp + 0x68], 0x10
lea edx, [esp + 0x54]
mov esi, dword [edi]
cmovae edx, dword [esp + 0x54]
mov ecx, edx
mov dword [esp + 0x2c], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
lea eax, [ecx + 1]
mov dword [esp + 0x10], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10032ef1
sub ecx, dword [esp + 0x10]
push ecx
push edx
lea ecx, [esp + 0x34]
call fcn.100011e0
mov edx, dword [esi]
lea eax, [esp + 0x2c]
push eax
mov eax, dword [edi + 8]
mov ecx, esi
add eax, 8
push eax
push 9
call dword [edx + 4]
mov ecx, dword [esp + 0x40]
cmp ecx, 0x10
jb 0x10032f52
mov edx, dword [esp + 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10032f48
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100332d4
push ecx
push edx
call fcn.10174919
add esp, 8
mov eax, dword [edi + 0x1c]
mov ecx, dword [esp + 0x68]
mov byte [eax], 0
cmp ecx, 0x10
jb 0x10032f8e
mov edx, dword [esp + 0x54]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10032f84
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100332d4
push ecx
push edx
call fcn.10174919
add esp, 8
mov eax, dword [esp + 0x6c]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x6c], 0x10180dd4
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [esp + ecx + 0x68], eax
jmp 0x10032bba
push ecx
push edx
push dword [esi - 0xc]
push dword [esi - 0x10]
call fcn.10174c50
mov ecx, eax
jmp case.0x100326b9.3
mov edx, dword [esi]
mov eax, edx
mov ecx, dword [esi + 4]
or eax, ecx
jne 0x1003317f
mov edi, dword [esp + 0x8dc]
cmp dword [edi + 0x20], eax
jg 0x1003293c
lea ecx, [esp + 0xbc]
mov dword [esp + 0x6c], 0x10180dd8
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::constructor_void_]
or dword [esp + 0x20], 4
lea eax, [esp + 0x70]
push 0
push 0
push eax
lea ecx, [esp + 0x78]
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ostream_char__struct_std::char_traits_char__::constructor_class_std::basic_streambuf_char__struct_std::char_traits_char_____bool_]
mov eax, dword [esp + 0x6c]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x6c], 0x10180dd4
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [esp + ecx + 0x68], eax
lea ecx, [esp + 0x70]
call dword [sym.imp.MSVCP140.dll_protected:_void___thiscall_std::basic_streambuf_char__struct_std::char_traits_char__::constructor_void_]
push 0x10184600
push dword [esi - 0xc]
lea ecx, [esp + 0x74]
mov dword [esp + 0x78], 0x10180cb0
push dword [esi - 0x10]
mov dword [esp + 0xb4], 0
mov dword [esp + 0xb8], 4
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_long___int64__]
push eax
call fcn.10025310
add esp, 8
mov ecx, eax
push dword [esi + 4]
push dword [esi]
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_ostream_char__struct_std::char_traits_char______thiscall_std::basic_ostream_char__struct_std::char_traits_char__::operator___long_long___int64__]
lea eax, [esp + 0x54]
push eax
lea ecx, [esp + 0x74]
call fcn.100288f0
cmp dword [esp + 0x68], 0x10
lea edx, [esp + 0x54]
mov esi, dword [edi]
cmovae edx, dword [esp + 0x54]
mov ecx, edx
mov dword [esp + 0x2c], 0
mov dword [esp + 0x3c], 0
mov dword [esp + 0x40], 0
lea eax, [ecx + 1]
mov dword [esp + 0x10], eax
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100330c0
sub ecx, dword [esp + 0x10]
push ecx
push edx
lea ecx, [esp + 0x34]
call fcn.100011e0
mov edx, dword [esi]
lea eax, [esp + 0x2c]
push eax
mov eax, dword [edi + 8]
mov ecx, esi
add eax, 8
push eax
push 9
call dword [edx + 4]
mov ecx, dword [esp + 0x40]
cmp ecx, 0x10
jb 0x10033121
mov edx, dword [esp + 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10033117
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100332d4
push ecx
push edx
call fcn.10174919
add esp, 8
mov eax, dword [edi + 0x1c]
mov ecx, dword [esp + 0x68]
mov byte [eax], 0
cmp ecx, 0x10
jb 0x1003315d
mov edx, dword [esp + 0x54]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10033153
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100332d4
push ecx
push edx
call fcn.10174919
add esp, 8
mov eax, dword [esp + 0x6c]
mov eax, dword [eax + 4]
mov dword [esp + eax + 0x6c], 0x10180dd4
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 4]
lea eax, [ecx - 0x50]
mov dword [esp + ecx + 0x68], eax
jmp 0x10032bba
push ecx
push edx
push dword [esi - 0xc]
push dword [esi - 0x10]
call fcn.10174b60
mov ecx, eax
jmp case.0x100326b9.3
push dword [esi + 4]
push dword [esi]
push dword [esi - 0xc]
push dword [esi - 0x10]
call fcn.10174c10
mov ecx, eax
jmp case.0x100326b9.3
mov eax, dword [esi]
or eax, dword [esi + 4]
jne 0x1003293c
lea ecx, [eax + 1]
xor edx, edx
jmp case.0x100326b9.3
mov ecx, dword [esi]
mov edx, dword [esi + 4]
not ecx
not edx
jmp case.0x100326b9.3
mov ecx, dword [esi]
mov edx, dword [esi + 4]
neg ecx
adc edx, 0
neg edx
jmp case.0x100326b9.3
mov ecx, dword [esi - 8]
mov edx, dword [esi - 4]
mov eax, dword [esp + 0x28]
mov esi, dword [esp + 0x104]
neg eax
lea ebx, [ebx + eax*2]
mov eax, dword [esp + 0x1c]
mov dword [esi], ecx
movzx edi, byte [eax + 0x101845ac]
mov dword [esi + 4], edx
movzx edx, word [ebx]
movsx eax, dx
movsx ecx, byte [edi + 0x10184414]
add ecx, eax
js 0x10033232
cmp ecx, 0xb0
jg 0x10033232
movsx ax, byte [ecx + 0x101844f8]
cmp ax, dx
jne 0x10033232
movzx edi, byte [ecx + 0x10184440]
add ebx, 2
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x44]
jmp 0x100323d2
movsx edi, byte [edi + 0x1018441c]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x44]
add ebx, 2
jmp 0x100323d2
mov ebx, dword [esp + 0x8dc]
lea ecx, [esp + 0x2c]
push 0x20
mov dword [esp + 0x30], 0
mov dword [esp + 0x40], 0
mov esi, dword [ebx]
mov dword [esp + 0x44], 0xf
call fcn.1001b300
movups xmm0, xmmword [str.memory_exhausted]
mov dword [esp + 0x2c], eax
mov ecx, esi
mov dword [esp + 0x3c], 0x10
mov dword [esp + 0x40], 0x1f
movups xmmword [eax], xmm0
mov byte [eax + 0x10], 0
lea eax, [esp + 0x2c]
mov edx, dword [esi]
push eax
mov eax, dword [ebx + 8]
add eax, 8
push eax
push 8
call dword [edx + 4]
mov ecx, dword [esp + 0x40]
cmp ecx, 0x10
jb 0x100332e4
mov edx, dword [esp + 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100332da
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100332da
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.10174919
add esp, 8
mov esi, 2
jmp 0x100332fb
mov eax, dword [esp + 0x8dc]
mov ecx, dword [eax + 0xc]
mov eax, dword [esi]
mov dword [ecx], eax
xor esi, esi
lea eax, [esp + 0x108]
cmp ebp, eax
je 0x10033310
push ebp
call dword [sym.imp.mozglue.dll_free]
add esp, 4
pop edi
mov eax, esi
pop esi
pop ebp
pop ebx
add esp, 0x8c8
ret