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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x9c
movzx edx, word [ecx + 0xe]
mov dword [esp + 0x30], ecx
mov edi, dword [esp + 0xb0]
mov eax, edx
and eax, 7
cmp ax, 5
ja case.default.0x73b4eb
movzx eax, ax
jmp dword [eax*4 + 0x7f4eb4]
mov ebx, dword [edi + 0x10]
cmp dword [edi + 0xc], ebx
mov ecx, ebx
je 0x73cb0a
mov eax, dword [ebx - 8]
mov edx, ebx
test eax, eax
je 0x73b537
mov esi, dword [edi]
mov edx, dword [esi + 0x10]
sub edx, dword [esi + 0xc]
cmp byte [ebx - 4], 0
je 0x73bcf3
test edx, edx
jle 0x73d3ed
mov eax, dword [esi + 0xc]
lea edx, [eax + 1]
mov dword [esi + 0xc], edx
mov byte [eax], 0x2c
mov edx, dword [edi + 0x10]
mov eax, dword [ebx - 8]
mov ecx, edx
add eax, 1
mov dword [ebx - 8], eax
mov eax, dword [edi + 0x14]
mov ebx, eax
sub ebx, ecx
cmp ebx, 7
jle 0x73cc05
lea eax, [edx + 8]
test edx, edx
mov dword [edi + 0x10], eax
je 0x73b565
mov dword [edx], 0
mov byte [edx + 4], 1
mov byte [edx + 5], 0
mov ebx, dword [edi]
mov ecx, dword [ebx + 0x10]
mov eax, dword [ebx + 0xc]
mov esi, ecx
mov edx, eax
sub esi, eax
test esi, esi
jle 0x73cc99
mov esi, dword [esp + 0x30]
lea eax, [edx + 1]
mov dword [ebx + 0xc], eax
mov byte [edx], 0x5b
mov eax, dword [esi]
mov ebx, dword [esi + 8]
mov dword [esp + 0x18], eax
shl eax, 4
test eax, eax
je 0x73b5bc
mov dword [esp], edi
mov ecx, ebx
call sym.__ZNK9rapidjson12GenericValueINS_4UTF8IcEENS_19MemoryPoolAllocatorINS_12CrtAllocatorEEEE6AcceptINS_6WriterINS_19GenericStringB
sub esp, 4
test al, al
je 0x73bc83
mov eax, dword [esi]
add ebx, 0x10
shl eax, 4
add eax, dword [esi + 8]
cmp ebx, eax
jne 0x73b598
mov ebx, dword [edi]
sub dword [edi + 0x10], 8
mov eax, dword [ebx + 0xc]
mov edx, dword [ebx + 0x10]
sub edx, eax
test edx, edx
jle 0x73cea5
lea edx, [eax + 1]
mov dword [ebx + 0xc], edx
mov byte [eax], 0x5d
mov eax, 1
jmp 0x73b796
and dh, 0x10
jne 0x73bc92
mov eax, dword [esp + 0x30]
mov esi, dword [eax]
mov eax, dword [eax + 8]
mov dword [esp + 0x50], esi
mov dword [esp + 0x20], eax
mov ebx, dword [edi]
mov esi, dword [edi + 0x10]
mov ebp, dword [ebx + 0x10]
mov edx, dword [ebx + 0xc]
mov eax, ebp
mov ecx, edx
mov dword [esp + 0x28], edx
sub eax, edx
cmp esi, dword [edi + 0xc]
mov dword [esp + 0x18], eax
je 0x73cb4b
mov eax, dword [esi - 8]
test eax, eax
je 0x73b65e
cmp byte [esi - 4], 0
je 0x73bd38
mov ecx, dword [esp + 0x18]
test ecx, ecx
jle 0x73d3d4
lea eax, [edx + 1]
mov dword [ebx + 0xc], eax
mov byte [edx], 0x2c
mov ebx, dword [edi]
mov eax, dword [esi - 8]
mov ebp, dword [ebx + 0x10]
mov ecx, dword [ebx + 0xc]
mov edx, ebp
mov dword [esp + 0x28], ecx
sub edx, ecx
mov dword [esp + 0x18], edx
add eax, 1
mov dword [esi - 8], eax
mov eax, dword [esp + 0x50]
lea eax, [eax + eax*2]
lea esi, [eax + eax + 2]
cmp esi, dword [esp + 0x18]
jg 0x73cce0
lea eax, [ecx + 1]
mov dword [ebx + 0xc], eax
mov byte [ecx], 0x22
mov eax, dword [esp + 0x20]
jmp 0x73b6b5
movzx ebp, byte [eax]
mov dword [ecx + 0xc], esi
mov ebx, ebp
mov byte [esp + 0x18], bl
movzx ebx, byte [ebp + str.uuuuuuuubtnufruuuuuuuuuuuuuuuuuu]
test bl, bl
jne 0x73bbf0
movzx ecx, byte [esp + 0x18]
mov byte [edx], cl
add eax, 1
mov ecx, dword [edi]
mov ebx, eax
sub ebx, dword [esp + 0x20]
cmp ebx, dword [esp + 0x50]
mov edx, dword [ecx + 0xc]
lea esi, [edx + 1]
jb 0x73b690
mov dword [ecx + 0xc], esi
mov byte [edx], 0x22
add esp, 0x9c
pop ebx
mov eax, 1
pop esi
pop edi
pop ebp
ret 4
mov ebx, dword [edi]
mov esi, dword [edi + 0x10]
mov ebp, dword [ebx + 0x10]
mov edx, dword [ebx + 0xc]
mov eax, ebp
mov ecx, edx
mov dword [esp + 0x20], edx
sub eax, edx
cmp esi, dword [edi + 0xc]
mov dword [esp + 0x18], eax
je 0x73cb66
mov eax, dword [esi - 8]
test eax, eax
je 0x73b74d
cmp byte [esi - 4], 0
jne 0x73bd5f
and eax, 1
mov ebp, dword [esp + 0x18]
cmp eax, 1
sbb eax, eax
and eax, 0xfffffff2
add eax, 0x3a
test ebp, ebp
jle 0x73d32f
lea ecx, [edx + 1]
mov dword [ebx + 0xc], ecx
mov byte [edx], al
mov ebx, dword [edi]
mov eax, dword [esi - 8]
mov ebp, dword [ebx + 0x10]
mov ecx, dword [ebx + 0xc]
mov edx, ebp
mov dword [esp + 0x20], ecx
sub edx, ecx
mov dword [esp + 0x18], edx
add eax, 1
mov dword [esi - 8], eax
cmp dword [esp + 0x18], 3
jle 0x73cc49
lea eax, [ecx + 1]
mov dword [ebx + 0xc], eax
mov byte [ecx], 0x6e
mov edx, dword [edi]
mov eax, dword [edx + 0xc]
lea ecx, [eax + 1]
mov dword [edx + 0xc], ecx
mov byte [eax], 0x75
mov edx, dword [edi]
mov eax, dword [edx + 0xc]
lea ecx, [eax + 1]
mov dword [edx + 0xc], ecx
mov byte [eax], 0x6c
mov edx, dword [edi]
mov eax, dword [edx + 0xc]
lea ecx, [eax + 1]
mov dword [edx + 0xc], ecx
mov byte [eax], 0x6c
mov eax, 1
add esp, 0x9c
pop ebx
pop esi
pop edi
pop ebp
ret 4
mov ebx, dword [edi]
mov esi, dword [edi + 0x10]
mov ebp, dword [ebx + 0xc]
mov eax, dword [ebx + 0x10]
sub eax, ebp
cmp esi, dword [edi + 0xc]
mov ecx, ebp
je 0x73cb5d
mov edx, dword [esi - 8]
test edx, edx
je 0x73b7f8
cmp byte [esi - 4], 0
jne 0x73bd21
and edx, 1
cmp edx, 1
sbb edx, edx
and edx, 0xfffffff2
add edx, 0x3a
test eax, eax
jle 0x73d3b2
lea eax, [ebp + 1]
mov dword [ebx + 0xc], eax
mov byte [ebp], dl
mov ebx, dword [edi]
mov edx, dword [esi - 8]
mov ecx, dword [ebx + 0xc]
mov eax, dword [ebx + 0x10]
sub eax, ecx
add edx, 1
mov dword [esi - 8], edx
cmp eax, 4
jle 0x73cb30
lea eax, [ecx + 1]
mov dword [ebx + 0xc], eax
mov byte [ecx], 0x66
mov edx, dword [edi]
mov eax, dword [edx + 0xc]
lea ecx, [eax + 1]
mov dword [edx + 0xc], ecx
mov byte [eax], 0x61
mov edx, dword [edi]
mov eax, dword [edx + 0xc]
lea ecx, [eax + 1]
mov dword [edx + 0xc], ecx
mov byte [eax], 0x6c
mov edx, dword [edi]
mov eax, dword [edx + 0xc]
lea ecx, [eax + 1]
mov dword [edx + 0xc], ecx
mov byte [eax], 0x73
mov edx, dword [edi]
mov eax, dword [edx + 0xc]
lea ecx, [eax + 1]
mov dword [edx + 0xc], ecx
mov byte [eax], 0x65
add esp, 0x9c
pop ebx
mov eax, 1
pop esi
pop edi
pop ebp
ret 4
mov ebx, dword [edi]
mov esi, dword [edi + 0x10]
mov ebp, dword [ebx + 0xc]
mov eax, dword [ebx + 0x10]
sub eax, ebp
cmp esi, dword [edi + 0xc]
mov ecx, ebp
je 0x73cb54
mov edx, dword [esi - 8]
test edx, edx
je 0x73b8b5
cmp byte [esi - 4], 0
jne 0x73bcdc
and edx, 1
cmp edx, 1
sbb edx, edx
and edx, 0xfffffff2
add edx, 0x3a
test eax, eax
jle 0x73d36a
lea eax, [ebp + 1]
mov dword [ebx + 0xc], eax
mov byte [ebp], dl
mov ebx, dword [edi]
mov edx, dword [esi - 8]
mov ecx, dword [ebx + 0xc]
mov eax, dword [ebx + 0x10]
sub eax, ecx
add edx, 1
mov dword [esi - 8], edx
cmp eax, 3
jle 0x73cb15
lea eax, [ecx + 1]
mov dword [ebx + 0xc], eax
mov byte [ecx], 0x74
mov edx, dword [edi]
mov eax, dword [edx + 0xc]
lea ecx, [eax + 1]
mov dword [edx + 0xc], ecx
mov byte [eax], 0x72
mov edx, dword [edi]
mov eax, dword [edx + 0xc]
lea ecx, [eax + 1]
mov dword [edx + 0xc], ecx
mov byte [eax], 0x75
jmp 0x73b83a
mov ebx, dword [edi + 0x10]
cmp dword [edi + 0xc], ebx
mov ecx, ebx
je 0x73cbfa
mov eax, dword [ebx - 8]
mov edx, ebx
test eax, eax
je 0x73b935
mov esi, dword [edi]
mov edx, dword [esi + 0x10]
sub edx, dword [esi + 0xc]
cmp byte [ebx - 4], 0
je 0x73bcae
test edx, edx
jle 0x73d2bf
mov eax, dword [esi + 0xc]
lea edx, [eax + 1]
mov dword [esi + 0xc], edx
mov byte [eax], 0x2c
mov edx, dword [edi + 0x10]
mov eax, dword [ebx - 8]
mov ecx, edx
add eax, 1
mov dword [ebx - 8], eax
mov eax, dword [edi + 0x14]
mov ebx, eax
sub ebx, ecx
cmp ebx, 7
jle 0x73cbb6
lea eax, [edx + 8]
test edx, edx
mov dword [edi + 0x10], eax
je 0x73b963
mov dword [edx], 0
mov byte [edx + 4], 0
mov byte [edx + 5], 0
mov ebx, dword [edi]
mov ecx, dword [ebx + 0x10]
mov eax, dword [ebx + 0xc]
mov esi, ecx
mov edx, eax
sub esi, eax
test esi, esi
jle 0x73cb6f
lea eax, [edx + 1]
mov dword [ebx + 0xc], eax
mov eax, dword [esp + 0x30]
mov byte [edx], 0x7b
mov esi, dword [eax + 8]
mov eax, dword [eax]
mov dword [esp + 0x18], eax
shl eax, 5
mov dword [esp + 0x28], esi
test eax, eax
je 0x73baac
mov eax, dword [esp + 0x28]
test byte [eax + 0xf], 0x10
jne 0x73bbd0
mov esi, dword [eax]
mov eax, dword [eax + 8]
mov dword [esp + 0x50], esi
mov dword [esp + 0x20], eax
mov ebp, dword [edi]
mov esi, dword [edi + 0x10]
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
mov ecx, edx
mov dword [esp + 0x18], eax
sub ecx, eax
cmp esi, dword [edi + 0xc]
je 0x73be37
mov ebx, dword [esi - 8]
test ebx, ebx
je 0x73ba0a
cmp byte [esi - 4], 0
je 0x73bc60
test ecx, ecx
jle 0x73cd9c
lea edx, [eax + 1]
mov dword [ebp + 0xc], edx
mov byte [eax], 0x2c
mov ebp, dword [edi]
mov ebx, dword [esi - 8]
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0xc]
mov ecx, edx
mov dword [esp + 0x18], eax
sub ecx, eax
add ebx, 1
mov dword [esi - 8], ebx
mov esi, dword [esp + 0x50]
lea ebx, [esi + esi*2]
lea ebx, [ebx + ebx + 2]
cmp ebx, ecx
jg 0x73bdea
lea edx, [eax + 1]
mov dword [ebp + 0xc], edx
mov byte [eax], 0x22
mov eax, dword [esp + 0x20]
jmp 0x73ba57
movzx ebp, byte [eax]
mov dword [ecx + 0xc], esi
mov ebx, ebp
mov byte [esp + 0x18], bl
movzx ebx, byte [ebp + str.uuuuuuuubtnufruuuuuuuuuuuuuuuuuu]
test bl, bl
jne 0x73bb60
movzx ecx, byte [esp + 0x18]
mov byte [edx], cl
add eax, 1
mov ecx, dword [edi]
mov ebx, eax
sub ebx, dword [esp + 0x20]
cmp ebx, dword [esp + 0x50]
mov edx, dword [ecx + 0xc]
lea esi, [edx + 1]
jb 0x73ba32
mov eax, dword [esp + 0x28]
mov dword [ecx + 0xc], esi
mov byte [edx], 0x22
mov dword [esp], edi
lea ecx, [eax + 0x10]
call sym.__ZNK9rapidjson12GenericValueINS_4UTF8IcEENS_19MemoryPoolAllocatorINS_12CrtAllocatorEEEE6AcceptINS_6WriterINS_19GenericStringB
sub esp, 4
test al, al
je 0x73bc83
mov ecx, dword [esp + 0x30]
add dword [esp + 0x28], 0x20
mov esi, dword [esp + 0x28]
mov eax, dword [ecx]
mov dword [esp + 0x18], eax
shl eax, 5
add eax, dword [ecx + 8]
cmp esi, eax
jne 0x73b99e
mov ebx, dword [edi]
sub dword [edi + 0x10], 8
mov eax, dword [ebx + 0xc]
mov edx, dword [ebx + 0x10]
sub edx, eax
test edx, edx
jle 0x73d261
lea edx, [eax + 1]
mov dword [ebx + 0xc], edx
mov byte [eax], 0x7d
mov eax, 1
jmp 0x73b796
test dh, 2
mov eax, dword [esp + 0x30]
jne 0x73be40
test dl, 0x20
mov ebx, dword [eax]
jne 0x73bee4
test dl, 0x40
jne 0x73bf99
and edx, 0x80
mov esi, dword [eax + 4]
jne 0x73bd79
mov ecx, edi
mov dword [esp], 6
call method.rapidjson::Writer_rapidjson::GenericStringBuffer_rapidjson::UTF8_char___rapidjson::CrtAllocator___rapidjson::UTF8_char___rapidjson::UTF8_char___rapidjson::CrtAllocator__0u_.Prefix_rapidjson::Type_
mov ebp, dword [edi]
sub esp, 4
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
sub eax, ecx
cmp eax, 0x13
jle 0x73d4a0
lea eax, [ecx + 0x14]
mov dword [esp + 0x18], ecx
mov dword [ebp + 0xc], eax
mov dword [esp + 8], ecx
mov dword [esp], ebx
mov dword [esp + 4], esi
call method.rapidjson::internal.u64toa_unsigned_long_long__char_
mov ecx, dword [esp + 0x18]
mov edx, dword [edi]
sub ecx, eax
mov eax, ecx
add eax, 0x14
sub dword [edx + 0xc], eax
mov eax, 1
jmp 0x73b796
mov byte [edx], 0x5c
mov ecx, dword [edi]
cmp bl, 0x75
mov edx, dword [ecx + 0xc]
lea esi, [edx + 1]
mov dword [ecx + 0xc], esi
mov byte [edx], bl
jne 0x73ba54
mov ecx, dword [edi]
sar ebp, 4
mov ebx, dword [esp + 0x18]
mov edx, dword [ecx + 0xc]
and ebx, 0xf
lea esi, [edx + 1]
mov dword [ecx + 0xc], esi
mov byte [edx], 0x30
mov ecx, dword [edi]
mov edx, dword [ecx + 0xc]
lea esi, [edx + 1]
mov dword [ecx + 0xc], esi
mov byte [edx], 0x30
movzx ecx, byte [ebp + str.0123456789ABCDEF]
mov ebp, dword [edi]
mov edx, dword [ebp + 0xc]
lea esi, [edx + 1]
mov dword [ebp + 0xc], esi
mov byte [edx], cl
mov ecx, dword [edi]
movzx esi, byte [ebx + str.0123456789ABCDEF]
mov edx, dword [ecx + 0xc]
lea ebx, [edx + 1]
mov dword [ecx + 0xc], ebx
mov ecx, esi
mov byte [edx], cl
jmp 0x73ba54
mov esi, eax
movsx eax, byte [eax + 0xd]
mov edx, 0xd
mov dword [esp + 0x20], esi
sub edx, eax
mov dword [esp + 0x50], edx
jmp 0x73b9b9
mov byte [edx], 0x5c
mov ecx, dword [edi]
cmp bl, 0x75
mov edx, dword [ecx + 0xc]
lea esi, [edx + 1]
mov dword [ecx + 0xc], esi
mov byte [edx], bl
jne 0x73b6b2
mov ecx, dword [edi]
sar ebp, 4
mov ebx, dword [esp + 0x18]
mov edx, dword [ecx + 0xc]
and ebx, 0xf
movzx ebx, byte [ebx + str.0123456789ABCDEF]
lea esi, [edx + 1]
mov dword [ecx + 0xc], esi
mov byte [edx], 0x30
mov ecx, dword [edi]
mov edx, dword [ecx + 0xc]
lea esi, [edx + 1]
mov dword [ecx + 0xc], esi
mov byte [edx], 0x30
movzx ecx, byte [ebp + str.0123456789ABCDEF]
mov ebp, dword [edi]
mov edx, dword [ebp + 0xc]
lea esi, [edx + 1]
mov dword [ebp + 0xc], esi
mov byte [edx], cl
mov ecx, dword [edi]
mov edx, dword [ecx + 0xc]
lea esi, [edx + 1]
mov dword [ecx + 0xc], esi
mov byte [edx], bl
jmp 0x73b6b2
and ebx, 1
cmp ebx, 1
sbb ebx, ebx
and ebx, 0xfffffff2
add ebx, 0x3a
test ecx, ecx
jle 0x73cd47
lea edx, [eax + 1]
mov dword [ebp + 0xc], edx
mov byte [eax], bl
jmp 0x73b9f7
add esp, 0x9c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret 4
mov esi, dword [esp + 0x30]
mov edx, 0xd
movsx eax, byte [esi + 0xd]
mov dword [esp + 0x20], esi
sub edx, eax
mov dword [esp + 0x50], edx
jmp 0x73b5ff
and eax, 1
cmp eax, 1
sbb eax, eax
and eax, 0xfffffff2
add eax, 0x3a
test edx, edx
jle 0x73d403
mov edx, dword [esi + 0xc]
lea ecx, [edx + 1]
mov dword [esi + 0xc], ecx
mov byte [edx], al
mov edx, dword [edi + 0x10]
mov eax, dword [ebx - 8]
mov ecx, edx
jmp 0x73b935
test eax, eax
jle 0x73d2d5
lea eax, [ebp + 1]
mov dword [ebx + 0xc], eax
mov byte [ebp], 0x2c
jmp 0x73b8a8
and eax, 1
cmp eax, 1
sbb eax, eax
and eax, 0xfffffff2
add eax, 0x3a
test edx, edx
jle 0x73d310
mov edx, dword [esi + 0xc]
lea ecx, [edx + 1]
mov dword [esi + 0xc], ecx
mov byte [edx], al
mov edx, dword [edi + 0x10]
mov eax, dword [ebx - 8]
mov ecx, edx
jmp 0x73b537
test eax, eax
jle 0x73d351
lea eax, [ebp + 1]
mov dword [ebx + 0xc], eax
mov byte [ebp], 0x2c
jmp 0x73b7eb
and eax, 1
mov edx, dword [esp + 0x18]
cmp eax, 1
sbb eax, eax
and eax, 0xfffffff2
add eax, 0x3a
test edx, edx
jle 0x73d2ee
lea edx, [ecx + 1]
mov dword [ebx + 0xc], edx
mov byte [ecx], al
jmp 0x73b647
mov eax, dword [esp + 0x18]
test eax, eax
jle 0x73d38c
lea eax, [edx + 1]
mov dword [ebx + 0xc], eax
mov byte [edx], 0x2c
jmp 0x73b736
mov dword [esp], 6
mov ecx, edi
mov dword [esp + 0x20], esi
call method.rapidjson::Writer_rapidjson::GenericStringBuffer_rapidjson::UTF8_char___rapidjson::CrtAllocator___rapidjson::UTF8_char___rapidjson::UTF8_char___rapidjson::CrtAllocator__0u_.Prefix_rapidjson::Type_
mov ebp, dword [edi]
sub esp, 4
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp + 0x10]
sub edx, eax
mov dword [esp + 0x18], eax
cmp edx, 0x14
jle 0x73d55a
lea edx, [eax + 0x15]
mov dword [ebp + 0xc], edx
mov edx, dword [esp + 0x20]
test edx, edx
jns 0x73bdc0
neg ebx
mov byte [eax], 0x2d
adc esi, 0
add eax, 1
neg esi
mov dword [esp + 8], eax
mov dword [esp], ebx
mov dword [esp + 4], esi
call method.rapidjson::internal.u64toa_unsigned_long_long__char_
mov edx, dword [edi]
mov edi, dword [esp + 0x18]
sub edi, eax
mov eax, edi
add eax, 0x15
sub dword [edx + 0xc], eax
mov eax, 1
jmp 0x73b796
mov ecx, dword [ebp + 8]
test ecx, ecx
je 0x73cd2d
sub edx, ecx
lea eax, [edx + 1]
shr eax, 1
add edx, eax
mov esi, dword [esp + 0x18]
sub esi, ecx
add ebx, esi
cmp ebx, edx
cmovb ebx, edx
test ebx, ebx
je 0x73c03a
mov dword [esp + 4], ebx
mov dword [esp], ecx
call sym._realloc
lea edx, [eax + esi]
mov dword [ebp + 8], eax
add eax, ebx
mov dword [ebp + 0x10], eax
mov dword [ebp + 0xc], edx
mov ebp, dword [edi]
mov eax, dword [ebp + 0xc]
jmp 0x73ba23
mov byte [edi + 0x20], 1
jmp 0x73ba10
fld qword [eax]
mov ecx, edi
mov dword [esp], 6
fstp qword [esp + 0x18]
call method.rapidjson::Writer_rapidjson::GenericStringBuffer_rapidjson::UTF8_char___rapidjson::CrtAllocator___rapidjson::UTF8_char___rapidjson::UTF8_char___rapidjson::CrtAllocator__0u_.Prefix_rapidjson::Type_
sub esp, 4
mov ebx, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov eax, ebx
and eax, 0x7ff00000
cmp eax, 0x7ff00000
je 0x73bc83
mov esi, dword [edi]
mov ecx, dword [esi + 0xc]
mov eax, dword [esi + 0x10]
sub eax, ecx
mov dword [esp + 0x50], ecx
mov dword [esp + 0x54], ecx
cmp eax, 0x18
jle 0x73d422
mov eax, dword [esp + 0x50]
add eax, 0x19
mov dword [esi + 0xc], eax
mov eax, ebx
and eax, 0x7fffffff
or eax, ebp
jne 0x73c12b
test ebx, ebx
jns 0x73beb7
mov eax, dword [esp + 0x50]
mov byte [eax], 0x2d
add eax, 1
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x50]
mov ebp, 0x2e30
mov word [eax], bp
mov byte [eax + 2], 0x30
add eax, 3
mov edx, dword [edi]
mov edi, dword [esp + 0x54]
sub edi, eax
mov eax, edi
add eax, 0x19
sub dword [edx + 0xc], eax
mov eax, 1
jmp 0x73b796
mov dword [esp], 6
mov ecx, edi
call method.rapidjson::Writer_rapidjson::GenericStringBuffer_rapidjson::UTF8_char___rapidjson::CrtAllocator___rapidjson::UTF8_char___rapidjson::UTF8_char___rapidjson::CrtAllocator__0u_.Prefix_rapidjson::Type_
mov ebp, dword [edi]
sub esp, 4
mov esi, dword [ebp + 0xc]
mov eax, dword [ebp + 0x10]
sub eax, esi
mov dword [esp + 0x18], esi
cmp eax, 0xa
jle 0x73d456
lea eax, [esi + 0xb]
test ebx, ebx
mov ecx, ebx
mov dword [ebp + 0xc], eax
jns 0x73bf20
mov byte [esi], 0x2d
neg ecx
add esi, 1
cmp ecx, 0x270f
ja 0x73c049
mov eax, ecx
mov edx, 0x51eb851f
mov ebx, ecx
mul edx
shr edx, 5
imul eax, edx, 0x64
sub ebx, eax
cmp ecx, 0x3e7
lea eax, [esi + 1]
jbe 0x73cebe
movzx ecx, byte [edx + edx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [esi], cl
movzx edx, byte [edx + edx + 0x8796c1]
lea ecx, [eax + 1]
mov byte [eax], dl
movzx eax, byte [ebx + ebx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
lea esi, [ecx + 1]
mov byte [ecx], al
lea eax, [ecx + 2]
movzx edx, byte [ebx + ebx + 0x8796c1]
mov byte [esi], dl
mov edx, dword [edi]
mov edi, dword [esp + 0x18]
sub edi, eax
mov eax, edi
add eax, 0xb
sub dword [edx + 0xc], eax
mov eax, 1
jmp 0x73b796
mov dword [esp], 6
mov ecx, edi
call method.rapidjson::Writer_rapidjson::GenericStringBuffer_rapidjson::UTF8_char___rapidjson::CrtAllocator___rapidjson::UTF8_char___rapidjson::UTF8_char___rapidjson::CrtAllocator__0u_.Prefix_rapidjson::Type_
mov edx, dword [edi]
sub esp, 4
mov esi, dword [edx + 0xc]
mov eax, dword [edx + 0x10]
sub eax, esi
mov ebp, esi
cmp eax, 9
jle 0x73d577
lea eax, [esi + 0xa]
cmp ebx, 0x270f
mov dword [edx + 0xc], eax
ja 0x73cdb5
mov eax, ebx
mov edx, 0x51eb851f
mov ecx, ebx
mul edx
shr edx, 5
imul eax, edx, 0x64
sub ecx, eax
cmp ebx, 0x3e7
lea eax, [esi + 1]
jbe 0x73d1d9
movzx ebx, byte [edx + edx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [esi], bl
movzx edx, byte [edx + edx + 0x8796c1]
lea ebx, [eax + 1]
mov byte [eax], dl
movzx eax, byte [ecx + ecx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
lea esi, [ebx + 1]
mov byte [ebx], al
lea eax, [ebx + 2]
movzx edx, byte [ecx + ecx + 0x8796c1]
mov byte [esi], dl
mov edx, dword [edi]
sub ebp, eax
mov eax, ebp
add eax, 0xa
sub dword [edx + 0xc], eax
mov eax, 1
jmp 0x73b796
mov dword [esp], ecx
call sym._free
xor eax, eax
jmp 0x73be1f
cmp ecx, 0x5f5e0ff
ja 0x73cef0
mov ebx, 0xd1b71759
mov eax, ecx
mul ebx
mov eax, ecx
mov ebp, edx
mov ebx, edx
mov edx, 0x431bde83
shr ebp, 0xd
shr ebx, 0xd
imul ebp, ebp, 0x2710
sub eax, ebp
mov ebp, eax
mov eax, ecx
mul edx
mov eax, 0x51eb851f
shr edx, 0x12
mov dword [esp + 0x20], edx
mul ebx
mov eax, edx
shr eax, 5
imul eax, eax, 0x64
sub ebx, eax
mov eax, 0x51eb851f
mul ebp
mov dword [esp + 0x50], ebx
mov eax, edx
shr eax, 5
imul edx, eax, 0x64
sub ebp, edx
cmp ecx, 0x98967f
jbe 0x73d29e
mov edx, dword [esp + 0x20]
lea ecx, [esi + 1]
movzx edx, byte [edx + edx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [esi], dl
mov esi, dword [esp + 0x20]
lea edx, [ecx + 1]
movzx ebx, byte [esi + esi + 0x8796c1]
mov byte [ecx], bl
mov ecx, dword [esp + 0x50]
movzx ecx, byte [ecx + ecx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
lea esi, [edx + 1]
mov byte [edx], cl
mov edx, dword [esp + 0x50]
movzx edx, byte [edx + edx + 0x8796c1]
mov byte [esi], dl
movzx edx, byte [eax + eax + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [esi + 1], dl
movzx eax, byte [eax + eax + 0x8796c1]
mov byte [esi + 2], al
movzx eax, byte [ebp + ebp + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [esi + 3], al
movzx edx, byte [ebp + ebp + 0x8796c1]
lea eax, [esi + 5]
mov byte [esi + 4], dl
jmp 0x73bf7f
fld qword [esp + 0x18]
fldz
mov eax, dword [edi + 0x1c]
mov dword [esp + 0x70], eax
fucompi st(1)
jbe 0x73c152
mov eax, dword [esp + 0x50]
fchs
mov byte [eax], 0x2d
add eax, 1
fstp qword [esp + 0x18]
mov dword [esp + 0x50], eax
jmp 0x73c154
fstp st(0)
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov eax, edx
and edx, 0xfffff
mov dword [esp + 0x18], ecx
shr eax, 0x14
mov dword [esp + 0x1c], edx
and eax, 0x7ff
je 0x73cfd5
add dword [esp + 0x1c], 0x100000
lea esi, [eax - 0x433]
lea ebp, [eax - 0x434]
mov dword [esp + 0x30], esi
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
shld edx, eax, 1
add eax, eax
mov dword [esp + 0x20], eax
add eax, 1
mov dword [esp + 0x24], edx
adc edx, 0
test edx, 0x200000
jne 0x73d532
lea ecx, [ebp - 1]
lea esi, [esi]
shld edx, eax, 1
mov ebx, ecx
add eax, eax
sub ecx, 1
test edx, 0x200000
je 0x73c1c0
shld edx, eax, 0xa
shl eax, 0xa
mov ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x24]
mov dword [esp + 0x28], eax
lea eax, [ebx - 0xa]
mov ebx, dword [esp + 0x1c]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x38], eax
mov edx, ebx
mov ebx, dword [esp + 0x20]
xor edx, 0x100000
add ebx, 0xffffffff
adc esi, 0xffffffff
or edx, ecx
je 0x73d24b
mov edx, dword [esp + 0x38]
mov ecx, ebp
mov eax, 0xffffffc3
xor ebp, ebp
fnstcw word [esp + 0x8e]
sub ecx, edx
shld esi, ebx, cl
shl ebx, cl
test cl, 0x20
cmovne esi, ebx
cmovne ebx, ebp
sub eax, edx
mov dword [esp + 0x30], eax
movzx eax, word [esp + 0x8e]
xor edx, edx
fild dword [esp + 0x30]
mov dword [esp + 0x24], esi
mov dword [esp + 0x20], ebx
fmul qword [0x7f54c8]
mov ah, 0xc
mov word [esp + 0x8c], ax
fadd dword [0x7f54d0]
fldcw word [esp + 0x8c]
fist dword [esp + 0x88]
fldcw word [esp + 0x8e]
mov eax, dword [esp + 0x88]
mov dword [esp + 0x30], eax
fild dword [esp + 0x30]
fsubp st(1)
fldz
fxch st(1)
fucompi st(1)
fstp st(0)
seta dl
add eax, edx
mov edx, 0x15c
sar eax, 3
lea esi, [eax + 1]
lea eax, [esi*8]
mov ebp, dword [esi*8 + 0x879864]
sub edx, eax
mov eax, dword [esi*8 + 0x879860]
mov dword [esp + 0x84], edx
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x18]
test edx, edx
je 0x73cee0
bsr ecx, edx
xor ecx, 0x1f
shld edx, eax, cl
xor ebx, ebx
shl eax, cl
test cl, 0x20
cmovne edx, eax
cmovne eax, ebx
mov ebx, dword [esp + 0x30]
mov ecx, edx
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], edi
mul ebp
mov dword [esp + 0x78], ecx
mov dword [esp + 0x60], eax
mov eax, ecx
mov dword [esp + 0x64], edx
mul ebx
mov ecx, dword [esp + 0x2c]
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x28]
mov edi, ecx
mov dword [esp + 0x48], eax
mov dword [esp + 0x74], edi
mov eax, edx
mov ecx, edx
mul ebp
mov dword [esp + 0x28], eax
mov eax, edi
mov dword [esp + 0x2c], edx
mul ebx
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], edx
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov edi, eax
mov dword [esp + 0x58], edx
mul ebp
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x1c], edx
mul ebx
mov dword [esp + 0x20], eax
mov eax, ecx
mov dword [esp + 0x24], edx
mul ebx
mov ecx, dword [esp + 0x40]
xor ebx, ebx
mov eax, edx
xor edx, edx
add eax, ecx
mov ecx, dword [esp + 0x28]
adc edx, ebx
add eax, 0x80000000
adc edx, 0
xor ebx, ebx
add eax, ecx
mov eax, dword [esp + 0x74]
adc edx, ebx
xor ecx, ecx
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], ecx
mul ebp
mov ebx, edx
mov edx, dword [esp + 0x44]
mov ecx, eax
add ecx, 0xffffffff
adc ebx, 0xffffffff
mov eax, edx
xor edx, edx
add eax, ecx
adc edx, ebx
mov ebx, dword [esp + 0x2c]
mov ecx, ebx
xor ebx, ebx
add eax, ecx
adc edx, ebx
mov ecx, eax
add ecx, dword [esp + 0x68]
mov ebx, edx
mov eax, edi
adc ebx, dword [esp + 0x6c]
mul dword [esp + 0x30]
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x2c], ebx
xor ebx, ebx
mov eax, edx
xor edx, edx
add eax, ecx
mov ecx, dword [esp + 0x18]
adc edx, ebx
add eax, 0x80000000
adc edx, 0
xor ebx, ebx
add ecx, eax
mov ecx, dword [esp + 0x28]
adc ebx, edx
xor edx, edx
mov eax, ebx
mov ebx, dword [esp + 0x2c]
sub ecx, eax
mov eax, dword [esp + 0x58]
mov dword [esp + 0x40], ecx
sbb ebx, edx
mul ebp
mov dword [esp + 0x44], ebx
not edx
mov edi, eax
mov ebx, edx
mov edx, dword [esp + 0x24]
not edi
mov ecx, edi
mov edi, dword [esp + 0x64]
mov eax, edx
xor edx, edx
sub ecx, eax
sbb ebx, edx
mov eax, ecx
mov edx, ebx
mov ebx, dword [esp + 0x1c]
mov ecx, ebx
xor ebx, ebx
sub eax, ecx
sbb edx, ebx
movsx ebx, word [esi + esi + 0x8797a0]
mov ecx, edx
mov edx, eax
add edx, dword [esp + 0x40]
adc ecx, dword [esp + 0x44]
add ebx, dword [esp + 0x38]
xor esi, esi
xor eax, eax
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], ecx
mov ecx, 0xffffffc0
sub ecx, ebx
mov ebx, 1
shld esi, ebx, cl
shl ebx, cl
test cl, 0x20
mov dword [esp + 0x40], ecx
cmovne esi, ebx
cmovne ebx, eax
mov eax, dword [esp + 0x7c]
mul dword [esp + 0x30]
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x5c], esi
mov esi, dword [esp + 0x60]
mov dword [esp + 0x58], ebx
xor ebx, ebx
mov eax, edx
xor edx, edx
add eax, ecx
adc edx, ebx
add eax, 0x80000000
adc edx, 0
xor ebx, ebx
add eax, esi
adc edx, ebx
xor ecx, ecx
mov eax, dword [esp + 0x78]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x18], edx
mov edx, ecx
xor ecx, ecx
mov ebx, ecx
mov ecx, edx
xor edx, edx
add ecx, edi
adc ebx, edx
mul ebp
add ecx, eax
adc ebx, edx
add ecx, dword [esp + 0x18]
mov esi, dword [esp + 0x28]
adc ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x2c]
mov eax, esi
sub eax, ecx
movzx ecx, byte [esp + 0x40]
mov edx, edi
sbb edx, ebx
mov dword [esp + 0x38], eax
mov eax, esi
mov dword [esp + 0x3c], edx
mov edx, edi
mov ebx, dword [esp + 0x58]
mov esi, dword [esp + 0x5c]
shrd eax, edi, cl
shr edx, cl
test cl, 0x20
mov edi, dword [esp + 0x80]
cmovne eax, edx
mov edx, dword [esp + 0x2c]
add ebx, 0xffffffff
mov ebp, eax
mov eax, dword [esp + 0x28]
adc esi, 0xffffffff
mov dword [esp + 0x48], ebx
mov dword [esp + 0x4c], esi
mov ecx, eax
mov eax, edx
and ecx, ebx
and eax, esi
cmp ebp, 9
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], eax
mov ebx, 1
jbe 0x73c59f
cmp ebp, 0x63
mov ebx, 2
jbe 0x73c59f
cmp ebp, 0x3e7
mov ebx, 3
jbe 0x73c59f
cmp ebp, 0x270f
mov ebx, 4
jbe 0x73c59f
cmp ebp, 0x1869f
mov ebx, 5
jbe 0x73c59f
cmp ebp, 0xf423f
mov ebx, 6
jbe 0x73c59f
cmp ebp, 0x98967f
mov ebx, 7
jbe 0x73c59f
cmp ebp, 0x5f5e100
sbb ebx, ebx
add ebx, 9
mov eax, dword [esp + 0x40]
mov dword [esp + 0x28], 0
mov dword [esp + 0xb0], edi
mov dword [esp + 0x30], eax
lea esi, [esi]
lea edi, [edi]
cmp ebx, 9
ja case.0x73c5c5.0
jmp dword [ebx*4 + 0x7f4ecc]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov edx, ebp
xor ebp, ebp
nop
lea esi, [esi]
test edx, edx
je 0x73cadf
add edx, 0x30
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x50]
mov byte [ecx + eax], dl
add eax, 1
mov dword [esp + 0x28], eax
mov edx, dword [esp + 0x24]
sub ebx, 1
mov eax, dword [esp + 0x20]
cmp edx, edi
jb 0x73c854
jbe 0x73c84c
mov ecx, dword [esp + 0x84]
mov eax, dword [ebx*8 + 0x87a4e0]
mov edx, dword [ebx*8 + 0x87a4e4]
mov dword [esp + 0x34], edi
mov dword [esp + 0x30], esi
mov edi, dword [esp + 0xb0]
add ecx, ebx
xor ebx, ebx
mov dword [esp + 0x48], ecx
movzx ecx, byte [esp + 0x40]
shld edx, eax, cl
shl eax, cl
test cl, 0x20
cmovne edx, eax
cmovne eax, ebx
mov ebx, edx
mov edx, dword [esp + 0x34]
cmp dword [esp + 0x3c], edx
mov ecx, eax
mov eax, dword [esp + 0x30]
jb 0x73c725
ja 0x73c677
cmp dword [esp + 0x38], eax
jbe 0x73c725
mov eax, dword [esp + 0x20]
sub eax, dword [esp + 0x30]
mov edx, dword [esp + 0x24]
sbb edx, dword [esp + 0x34]
cmp edx, ebx
jb 0x73c725
ja 0x73c699
cmp eax, ecx
jb 0x73c725
mov ebp, dword [esp + 0x28]
mov esi, dword [esp + 0x50]
sub eax, ecx
sbb edx, ebx
mov dword [esp + 0xb0], edi
lea esi, [esi + ebp - 1]
mov ebp, esi
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x1c], edx
mov edx, dword [esp + 0x34]
add eax, ecx
adc edx, ebx
mov esi, eax
mov dword [esp + 0x20], eax
mov edi, edx
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x38]
cmp edx, edi
ja 0x73ca93
jb 0x73c6ec
cmp eax, esi
ja 0x73ca93
mov ecx, dword [esp + 0x38]
sub ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0x3c]
sbb ebx, dword [esp + 0x34]
sub eax, dword [esp + 0x38]
mov edx, dword [esp + 0x24]
sbb edx, dword [esp + 0x3c]
mov edi, dword [esp + 0xb0]
cmp ebx, edx
jb 0x73c725
ja 0x73cacd
cmp ecx, eax
ja 0x73cacd
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x48]
mov esi, eax
add esi, ecx
test ecx, ecx
js 0x73cfe7
cmp esi, 0x15
jg 0x73cfe7
cmp esi, eax
jle 0x73c75e
add eax, dword [esp + 0x50]
mov dword [esp + 8], ecx
mov dword [esp + 4], 0x30
mov dword [esp], eax
call sym._memset
mov eax, dword [esp + 0x50]
mov byte [eax + esi], 0x2e
mov byte [eax + esi + 1], 0x30
lea eax, [eax + esi + 2]
jmp 0x73beca
mov eax, ebp
mov edx, 0x6b5fca6b
mul edx
shr edx, 0x16
imul eax, edx, 0x989680
lea esi, [esi]
lea edi, [edi]
movzx ecx, byte [esp + 0x30]
sub ebp, eax
xor edi, edi
mov esi, ebp
xor eax, eax
shld edi, ebp, cl
shl esi, cl
test cl, 0x20
cmovne edi, esi
cmovne esi, eax
add esi, dword [esp + 0x18]
adc edi, dword [esp + 0x1c]
jmp 0x73c5e0
mov eax, ebp
mov edx, 0x431bde83
mul edx
shr edx, 0x12
imul eax, edx, 0xf4240
jmp 0x73c790
mov eax, ebp
mov edx, 0xa7c5ac5
shr eax, 5
mul edx
shr edx, 7
imul eax, edx, 0x186a0
jmp 0x73c790
mov eax, ebp
mov edx, 0xd1b71759
mul edx
shr edx, 0xd
imul eax, edx, 0x2710
jmp 0x73c790
mov eax, ebp
mov edx, 0x10624dd3
mul edx
shr edx, 6
imul eax, edx, 0x3e8
jmp 0x73c790
mov eax, ebp
mov edx, 0x51eb851f
mul edx
shr edx, 5
imul eax, edx, 0x64
jmp 0x73c790
mov eax, ebp
mov edx, 0xcccccccd
mul edx
shr edx, 3
lea eax, [edx + edx*4]
add eax, eax
jmp 0x73c790
mov eax, ebp
mov edx, 0x55e63b89
mul edx
shr edx, 0x19
imul eax, edx, 0x5f5e100
jmp 0x73c790
cmp eax, esi
jae 0x73c616
test ebx, ebx
jne 0x73c5c0
mov ebx, dword [esp + 0x28]
mov dword [esp + 0x30], 0
mov ebp, 0xa
lea esi, [esi]
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x1c]
mov eax, esi
mul ebp
imul ecx, edi, 0xa
mov esi, eax
mov eax, dword [esp + 0x20]
mov edi, edx
add edi, ecx
imul ecx, dword [esp + 0x24], 0xa
mul ebp
mov dword [esp + 0x24], edx
add dword [esp + 0x24], ecx
mov edx, edi
movzx ecx, byte [esp + 0x40]
mov dword [esp + 0x20], eax
mov eax, esi
shrd eax, edx, cl
shr edx, cl
test cl, 0x20
je 0x73c8b1
mov eax, edx
test ebx, ebx
jne 0x73c8bd
test al, al
je 0x73cd40
mov ecx, dword [esp + 0x50]
add eax, 0x30
mov byte [ecx + ebx], al
add ebx, 1
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
mov ecx, eax
and edi, edx
mov eax, dword [esp + 0x30]
and ecx, esi
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x24]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x1c]
sub eax, 1
mov edx, dword [esp + 0x18]
mov esi, dword [esp + 0x20]
mov dword [esp + 0x28], eax
cmp edi, ecx
jb 0x73cafd
jbe 0x73caf5
mov eax, dword [esp + 0x28]
add eax, dword [esp + 0x84]
mov dword [esp + 0x28], ebx
mov edi, dword [esp + 0xb0]
mov dword [esp + 0x48], eax
mov eax, 1
sub eax, dword [esp + 0x30]
cmp eax, 0x13
mov ebp, eax
jg 0x73c725
mov ebx, dword [esp + 0x38]
mov esi, dword [esp + 0x3c]
mov ecx, dword [eax*8 + 0x87a4e0]
mov edx, dword [eax*8 + 0x87a4e4]
mov eax, ebx
imul edx, ebx
imul ecx, esi
add ecx, edx
mul dword [ebp*8 + 0x87a4e0]
mov dword [esp + 0x3c], edx
add dword [esp + 0x3c], ecx
mov ebx, dword [esp + 0x3c]
mov edx, dword [esp + 0x1c]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x38]
cmp edx, ebx
ja 0x73c725
jb 0x73c98c
cmp eax, ecx
jae 0x73c725
mov eax, dword [esp + 0x20]
sub eax, dword [esp + 0x18]
mov edx, dword [esp + 0x24]
sbb edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x5c]
mov ecx, dword [esp + 0x58]
cmp ebx, edx
ja 0x73c725
jb 0x73c9b6
cmp ecx, eax
ja 0x73c725
mov eax, dword [esp + 0x20]
sub eax, dword [esp + 0x58]
mov edx, dword [esp + 0x24]
sbb edx, dword [esp + 0x5c]
sub eax, dword [esp + 0x18]
mov dword [esp + 0xb0], edi
sbb edx, dword [esp + 0x1c]
mov edi, dword [esp + 0x5c]
mov ecx, eax
mov eax, dword [esp + 0x50]
mov ebx, edx
mov edx, dword [esp + 0x28]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], ebx
lea esi, [eax + edx - 1]
mov ebp, esi
mov esi, dword [esp + 0x58]
mov esi, esi
lea edi, [edi]
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
add eax, esi
adc edx, edi
mov ecx, eax
mov dword [esp + 0x30], eax
mov ebx, edx
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x38]
cmp edx, ebx
ja 0x73ca60
jb 0x73ca2a
cmp eax, ecx
ja 0x73ca60
mov ecx, dword [esp + 0x38]
sub ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x30]
mov ebx, dword [esp + 0x3c]
sbb ebx, dword [esp + 0x1c]
sub eax, dword [esp + 0x38]
mov edx, dword [esp + 0x34]
sbb edx, dword [esp + 0x3c]
mov edi, dword [esp + 0xb0]
cmp ebx, edx
ja 0x73cacd
jb 0x73c725
jmp 0x73c71d
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
sub byte [ebp], 1
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], ebx
sub eax, esi
sbb edx, edi
cmp dword [esp + 0x24], edi
jb 0x73cac1
ja 0x73ca86
cmp dword [esp + 0x20], esi
jb 0x73cac1
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
jmp 0x73ca00
mov eax, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
sub byte [ebp], 1
mov dword [esp + 0x30], esi
mov dword [esp + 0x34], edi
sub eax, ecx
sbb edx, ebx
cmp dword [esp + 0x1c], ebx
jb 0x73cac1
ja 0x73c6b2
cmp dword [esp + 0x18], ecx
jae 0x73c6b2
mov edi, dword [esp + 0xb0]
jmp 0x73c725
mov eax, dword [esp + 0x50]
mov esi, dword [esp + 0x28]
sub byte [eax + esi - 1], 1
jmp 0x73c725
mov eax, dword [esp + 0x28]
test eax, eax
je 0x73c5fd
mov edx, 0x30
jmp 0x73c5eb
cmp esi, edx
ja 0x73c909
mov eax, dword [esp + 0x28]
mov dword [esp + 0x30], eax
jmp 0x73c870
mov byte [edi + 0x20], 1
mov edx, ebx
jmp 0x73b53d
mov ecx, ebx
mov dword [esp], 4
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov ebx, dword [edi]
sub esp, 4
mov ecx, dword [ebx + 0xc]
jmp 0x73b8c4
mov ecx, ebx
mov dword [esp], 5
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov ebx, dword [edi]
sub esp, 4
mov ecx, dword [ebx + 0xc]
jmp 0x73b807
mov byte [edi + 0x20], 1
jmp 0x73b664
mov byte [edi + 0x20], 1
jmp 0x73b8bb
mov byte [edi + 0x20], 1
jmp 0x73b7fe
mov byte [edi + 0x20], 1
jmp 0x73b753
mov edx, dword [ebx + 8]
test edx, edx
je 0x73d27a
sub ecx, edx
lea esi, [ecx + 1]
shr esi, 1
add ecx, esi
mov edx, dword [ebx + 8]
sub eax, edx
lea esi, [eax + 1]
mov ebp, eax
cmp esi, ecx
cmovb esi, ecx
test esi, esi
je 0x73d0bc
mov dword [esp + 4], esi
mov dword [esp], edx
call sym._realloc
mov dword [ebx + 8], eax
lea edx, [eax + ebp]
add eax, esi
mov dword [ebx + 0x10], eax
jmp 0x73b979
mov esi, dword [edi + 0xc]
test esi, esi
je 0x73d213
sub eax, esi
lea ebx, [eax + 1]
shr ebx, 1
add eax, ebx
sub ecx, esi
lea ebx, [ecx + 8]
mov ebp, ecx
cmp ebx, eax
cmovb ebx, eax
test ebx, ebx
je 0x73d0ad
mov dword [esp + 4], ebx
mov dword [esp], esi
call sym._realloc
mov dword [edi + 0xc], eax
lea edx, [eax + ebp]
add eax, ebx
mov dword [edi + 0x14], eax
jmp 0x73b94b
mov byte [edi + 0x20], 1
mov edx, ebx
jmp 0x73b93b
mov esi, dword [edi + 0xc]
test esi, esi
je 0x73d226
sub eax, esi
lea ebx, [eax + 1]
shr ebx, 1
add eax, ebx
sub ecx, esi
lea ebx, [ecx + 8]
mov ebp, ecx
cmp ebx, eax
cmovb ebx, eax
test ebx, ebx
je 0x73d080
mov dword [esp + 4], ebx
mov dword [esp], esi
call sym._realloc
mov dword [edi + 0xc], eax
lea edx, [eax + ebp]
add eax, ebx
mov dword [edi + 0x14], eax
jmp 0x73b54d
mov eax, dword [ebx + 8]
test eax, eax
je 0x73d201
mov ecx, ebp
sub ecx, eax
lea edx, [ecx + 1]
shr edx, 1
add edx, ecx
mov ebp, dword [esp + 0x20]
sub ebp, eax
lea esi, [ebp + 4]
cmp esi, edx
cmovb esi, edx
test esi, esi
je 0x73d0cb
mov dword [esp + 4], esi
mov dword [esp], eax
call sym._realloc
lea edx, [eax + ebp]
mov dword [ebx + 8], eax
add eax, esi
mov dword [ebx + 0x10], eax
mov dword [ebx + 0xc], edx
mov ebx, dword [edi]
mov ecx, dword [ebx + 0xc]
jmp 0x73b75e
mov edx, dword [ebx + 8]
test edx, edx
je 0x73d28c
sub ecx, edx
lea esi, [ecx + 1]
shr esi, 1
add ecx, esi
mov edx, dword [ebx + 8]
sub eax, edx
lea esi, [eax + 1]
mov ebp, eax
cmp esi, ecx
cmovb esi, ecx
test esi, esi
je 0x73d09e
mov dword [esp + 4], esi
mov dword [esp], edx
call sym._realloc
mov dword [ebx + 8], eax
lea edx, [eax + ebp]
add eax, esi
mov dword [ebx + 0x10], eax
jmp 0x73b57b
mov edx, dword [ebx + 8]
test edx, edx
je 0x73d239
sub ebp, edx
lea eax, [ebp + 1]
shr eax, 1
add eax, ebp
mov ebp, dword [esp + 0x28]
sub ebp, edx
add esi, ebp
cmp esi, eax
cmovb esi, eax
test esi, esi
je 0x73d08f
mov dword [esp + 4], esi
mov dword [esp], edx
call sym._realloc
lea edx, [eax + ebp]
mov dword [ebx + 8], eax
add eax, esi
mov dword [ebx + 0x10], eax
mov dword [ebx + 0xc], edx
mov ebx, dword [edi]
mov ecx, dword [ebx + 0xc]
jmp 0x73b679
mov eax, dword [ebp]
test eax, eax
je 0x73d539
mov edx, dword [ebp + 0x14]
jmp 0x73bdfe
xor ebx, ebx
jmp 0x73c8ca
mov ecx, dword [ebp + 8]
test ecx, ecx
je 0x73d443
sub edx, ecx
lea eax, [edx + 1]
shr eax, 1
add edx, eax
mov eax, dword [esp + 0x18]
sub eax, ecx
mov dword [esp + 0x38], eax
add eax, 1
cmp eax, edx
cmovae edx, eax
test edx, edx
mov dword [esp + 0x18], edx
je 0x73d1f2
mov dword [esp + 4], edx
mov dword [esp], ecx
call sym._realloc
mov edx, eax
mov eax, dword [esp + 0x38]
mov dword [ebp + 8], edx
add eax, edx
add edx, dword [esp + 0x18]
mov dword [ebp + 0x10], edx
jmp 0x73bc76
mov dword [esp], 1
mov ecx, ebp
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov eax, dword [ebp + 0xc]
sub esp, 4
jmp 0x73b9ee
cmp ebx, 0x5f5e0ff
ja 0x73d0da
mov ecx, 0xd1b71759
mov eax, ebx
mul ecx
mov eax, edx
mov ecx, edx
mov edx, ebx
shr eax, 0xd
shr ecx, 0xd
imul eax, eax, 0x2710
sub edx, eax
mov eax, ebx
mov dword [esp + 0x18], edx
mov edx, 0x431bde83
mul edx
mov eax, edx
shr eax, 0x12
mov dword [esp + 0x20], eax
mov eax, 0x51eb851f
mul ecx
mov eax, edx
shr eax, 5
imul eax, eax, 0x64
sub ecx, eax
mov eax, 0x51eb851f
mov dword [esp + 0x50], ecx
mov ecx, dword [esp + 0x18]
mul ecx
shr edx, 5
mov eax, edx
imul edx, edx, 0x64
sub ecx, edx
cmp ebx, 0x98967f
mov edx, ecx
jbe 0x73d480
mov ecx, dword [esp + 0x20]
lea ebx, [esi + 1]
mov dword [esp + 0x18], ebx
movzx ebx, byte [ecx + ecx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [esi], bl
mov esi, dword [esp + 0x18]
movzx ecx, byte [ecx + ecx + 0x8796c1]
lea ebx, [esi + 1]
mov byte [esi], cl
mov ecx, dword [esp + 0x50]
lea esi, [ebx + 1]
movzx ecx, byte [ecx + ecx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [ebx], cl
mov ecx, dword [esp + 0x50]
movzx ecx, byte [ecx + ecx + 0x8796c1]
mov byte [esi], cl
movzx ecx, byte [eax + eax + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [esi + 1], cl
movzx eax, byte [eax + eax + 0x8796c1]
mov byte [esi + 2], al
movzx eax, byte [edx + edx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [esi + 3], al
movzx edx, byte [edx + edx + 0x8796c1]
lea eax, [esi + 5]
mov byte [esi + 4], dl
jmp 0x73c024
mov dword [esp], 1
mov ecx, ebx
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov eax, dword [ebx + 0xc]
sub esp, 4
jmp 0x73b5d2
cmp ecx, 0x63
ja 0x73d7b3
cmp ecx, 9
jbe 0x73bf75
mov ecx, esi
jmp 0x73bf65
bsr ecx, dword [esp + 0x18]
xor ecx, 0x1f
add ecx, 0x20
jmp 0x73c2db
mov eax, ecx
mov edx, 0x55e63b89
mul edx
mov eax, edx
shr eax, 0x19
imul edx, eax, 0x5f5e100
sub ecx, edx
cmp eax, 9
jbe 0x73d3a5
movzx edx, byte [eax + eax + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
lea ebx, [esi + 2]
mov byte [esi], dl
movzx eax, byte [eax + eax + 0x8796c1]
mov byte [esi + 1], al
mov eax, ecx
mov edx, 0xd1b71759
mul edx
mov eax, ecx
mov esi, edx
mov ebp, edx
mov edx, 0x431bde83
shr esi, 0xd
shr ebp, 0xd
imul esi, esi, 0x2710
sub eax, esi
mov esi, eax
mov eax, ecx
mul edx
mov eax, 0x51eb851f
mov ecx, edx
mul ebp
shr ecx, 0x12
mov eax, edx
shr eax, 5
imul eax, eax, 0x64
sub ebp, eax
mov eax, 0x51eb851f
mul esi
mov eax, edx
shr eax, 5
imul edx, eax, 0x64
sub esi, edx
movzx edx, byte [ecx + ecx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [ebx], dl
movzx edx, byte [ecx + ecx + 0x8796c1]
mov byte [ebx + 1], dl
movzx edx, byte [ebp + ebp + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [ebx + 2], dl
movzx edx, byte [ebp + ebp + 0x8796c1]
mov byte [ebx + 3], dl
movzx edx, byte [eax + eax + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [ebx + 4], dl
movzx eax, byte [eax + eax + 0x8796c1]
mov byte [ebx + 5], al
movzx eax, byte [esi + esi + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [ebx + 6], al
movzx edx, byte [esi + esi + 0x8796c1]
lea eax, [ebx + 8]
mov byte [ebx + 7], dl
jmp 0x73bf7f
mov ebp, 0xfffffbcd
mov dword [esp + 0x30], 0xfffffbce
jmp 0x73c192
lea ebx, [esi - 1]
cmp ebx, 0x14
jbe 0x73d4b9
lea eax, [esi + 5]
cmp eax, 5
jbe 0x73d59a
mov eax, dword [esp + 0x70]
neg eax
cmp esi, eax
mov eax, dword [esp + 0x50]
jl 0x73d632
cmp dword [esp + 0x28], 1
lea ecx, [eax + 2]
je 0x73d781
mov ebp, eax
mov eax, dword [esp + 0x28]
mov dword [esp], ecx
sub eax, 1
mov dword [esp + 8], eax
mov eax, ebp
add eax, 1
mov dword [esp + 4], eax
call sym._memmove
mov ecx, dword [esp + 0x28]
test ebx, ebx
mov byte [ebp + 1], 0x2e
mov byte [ebp + ecx + 1], 0x65
lea ecx, [ebp + ecx + 2]
jns 0x73d05f
mov ebx, 1
mov byte [ecx], 0x2d
add ecx, 1
sub ebx, esi
cmp ebx, 0x63
jg 0x73d673
cmp ebx, 9
jg 0x73d757
add ebx, 0x30
lea eax, [ecx + 1]
mov byte [ecx], bl
jmp 0x73beca
mov dword [esp], esi
call sym._free
xor eax, eax
jmp 0x73cc39
mov dword [esp], edx
call sym._free
xor eax, eax
jmp 0x73cd15
mov dword [esp], edx
call sym._free
xor eax, eax
jmp 0x73ccd0
mov dword [esp], esi
call sym._free
xor eax, eax
jmp 0x73cbea
mov dword [esp], edx
call sym._free
xor eax, eax
jmp 0x73cba6
mov dword [esp], eax
call sym._free
xor eax, eax
jmp 0x73cc81
mov eax, ebx
mov edx, 0x55e63b89
mov ecx, ebx
mul edx
mov eax, edx
shr eax, 0x19
imul edx, eax, 0x5f5e100
sub ecx, edx
cmp eax, 9
jbe 0x73d473
movzx edx, byte [eax + eax + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
lea ebx, [esi + 2]
mov byte [esi], dl
movzx eax, byte [eax + eax + 0x8796c1]
mov byte [esi + 1], al
mov eax, ecx
mov edx, 0xd1b71759
mul edx
mov eax, ecx
mov esi, edx
mov dword [esp + 0x18], edx
mov edx, 0x431bde83
shr esi, 0xd
imul esi, esi, 0x2710
sub eax, esi
mov esi, eax
mov eax, ecx
mul edx
mov eax, edx
mov edx, dword [esp + 0x18]
shr eax, 0x12
mov ecx, eax
mov eax, 0x51eb851f
shr edx, 0xd
mov dword [esp + 0x18], edx
mul edx
mov eax, edx
mov edx, dword [esp + 0x18]
shr eax, 5
imul eax, eax, 0x64
sub edx, eax
mov eax, 0x51eb851f
mov dword [esp + 0x18], edx
mul esi
mov eax, edx
shr eax, 5
imul edx, eax, 0x64
sub esi, edx
movzx edx, byte [ecx + ecx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [ebx], dl
movzx edx, byte [ecx + ecx + 0x8796c1]
mov ecx, dword [esp + 0x18]
mov byte [ebx + 1], dl
movzx edx, byte [ecx + ecx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [ebx + 2], dl
movzx edx, byte [ecx + ecx + 0x8796c1]
mov byte [ebx + 3], dl
movzx edx, byte [eax + eax + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [ebx + 4], dl
movzx eax, byte [eax + eax + 0x8796c1]
mov byte [ebx + 5], al
movzx eax, byte [esi + esi + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [ebx + 6], al
movzx edx, byte [esi + esi + 0x8796c1]
lea eax, [ebx + 8]
mov byte [ebx + 7], dl
jmp 0x73c024
cmp ebx, 0x63
ja 0x73d7ac
cmp ebx, 9
jbe 0x73c01a
mov ebx, esi
jmp 0x73c00a
mov dword [esp], ecx
call sym._free
xor edx, edx
jmp 0x73cd87
mov esi, dword [ebx]
test esi, esi
je 0x73d6c0
mov edx, dword [ebx + 0x14]
jmp 0x73cc5f
mov ebx, dword [edi + 4]
test ebx, ebx
je 0x73d656
mov eax, dword [edi + 0x18]
jmp 0x73cbca
mov ebp, dword [edi + 4]
test ebp, ebp
je 0x73d6e0
mov eax, dword [edi + 0x18]
jmp 0x73cc19
mov eax, dword [ebx]
test eax, eax
je 0x73d6a0
mov eax, dword [ebx + 0x14]
jmp 0x73ccf4
mov ebp, dword [esp + 0x30]
mov ebx, 0xffffffff
mov esi, 0x3fffff
sub ebp, 2
jmp 0x73c20f
mov dword [esp], 1
mov ecx, ebx
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov eax, dword [ebx + 0xc]
sub esp, 4
jmp 0x73bac2
mov edx, dword [ebx]
test edx, edx
je 0x73d6fd
mov ecx, dword [ebx + 0x14]
jmp 0x73cb83
mov esi, dword [ebx]
test esi, esi
je 0x73d716
mov ecx, dword [ebx + 0x14]
jmp 0x73ccad
cmp ecx, 0xf423f
ja 0x73d72f
cmp ecx, 0x1869f
jbe 0x73c0e9
mov edx, esi
mov ecx, ebx
jmp 0x73c0dc
mov dword [esp], 1
mov ecx, esi
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
sub esp, 4
jmp 0x73b921
mov dword [esp], 1
mov ecx, ebx
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov ebp, dword [ebx + 0xc]
sub esp, 4
jmp 0x73bce4
mov ecx, ebx
mov dword [esp], 1
mov byte [esp + 0x18], al
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
sub esp, 4
mov ecx, dword [ebx + 0xc]
movzx eax, byte [esp + 0x18]
jmp 0x73bd52
mov dword [esp], 1
mov ecx, esi
mov byte [esp + 0x18], al
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
sub esp, 4
movzx eax, byte [esp + 0x18]
jmp 0x73bd09
mov dword [esp], 1
mov ecx, ebx
mov byte [esp + 0x18], al
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
sub esp, 4
mov edx, dword [ebx + 0xc]
movzx eax, byte [esp + 0x18]
jmp 0x73b72e
mov dword [esp], 1
mov ecx, ebx
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov ebp, dword [ebx + 0xc]
sub esp, 4
jmp 0x73bd29
mov dword [esp], 1
mov ecx, ebx
mov byte [esp + 0x18], dl
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
sub esp, 4
mov ebp, dword [ebx + 0xc]
movzx edx, byte [esp + 0x18]
jmp 0x73b89f
mov dword [esp], 1
mov ecx, ebx
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov edx, dword [ebx + 0xc]
sub esp, 4
jmp 0x73bd6b
add eax, 0x30
lea ebx, [esi + 1]
mov byte [esi], al
jmp 0x73cf27
mov dword [esp], 1
mov ecx, ebx
mov byte [esp + 0x18], dl
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
sub esp, 4
mov ebp, dword [ebx + 0xc]
movzx edx, byte [esp + 0x18]
jmp 0x73b7e2
mov dword [esp], 1
mov ecx, ebx
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov edx, dword [ebx + 0xc]
sub esp, 4
jmp 0x73b63e
mov dword [esp], 1
mov ecx, esi
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
sub esp, 4
jmp 0x73b523
mov dword [esp], 1
mov ecx, esi
mov byte [esp + 0x18], al
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
sub esp, 4
movzx eax, byte [esp + 0x18]
jmp 0x73bcc4
mov dword [esp], 0x19
mov ecx, esi
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov eax, dword [esi + 0xc]
sub esp, 4
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
jmp 0x73be8c
mov eax, dword [ebp]
test eax, eax
je 0x73d736
mov edx, dword [ebp + 0x14]
jmp 0x73cd5b
mov dword [esp], 0xb
mov ecx, ebp
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov esi, dword [ebp + 0xc]
sub esp, 4
mov dword [esp + 0x18], esi
jmp 0x73bf0c
add eax, 0x30
lea ebx, [esi + 1]
mov byte [esi], al
jmp 0x73d113
cmp ebx, 0xf423f
ja 0x73d79f
cmp ebx, 0x1869f
jbe 0x73ce63
mov ebx, esi
jmp 0x73ce52
mov ecx, ebp
mov dword [esp], 0x14
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov ecx, dword [ebp + 0xc]
sub esp, 4
jmp 0x73bb29
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x50]
lea ebx, [esi + 1]
neg eax
lea ebp, [ecx + esi]
mov dword [esp + 8], eax
lea eax, [ecx + ebx]
mov dword [esp + 4], ebp
mov dword [esp], eax
call sym._memmove
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x28]
mov byte [ebp], 0x2e
lea eax, [ecx + edx + 1]
mov ecx, dword [esp + 0x48]
add ecx, dword [esp + 0x70]
jns 0x73beca
mov eax, dword [esp + 0x70]
add eax, esi
cmp ebx, eax
jl 0x73d51b
jmp 0x73d774
sub eax, 1
cmp eax, ebx
je 0x73d774
mov ecx, dword [esp + 0x50]
cmp byte [ecx + eax], 0x30
je 0x73d510
mov esi, dword [esp + 0x50]
lea eax, [esi + eax + 1]
jmp 0x73beca
mov ebx, ebp
jmp 0x73c1d3
mov dword [esp], 1
call sym.operator_new_unsigned_int_
mov dword [ebp], eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
mov dword [esp + 0x18], eax
jmp 0x73cd38
mov dword [esp], 0x15
mov ecx, ebp
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
mov eax, dword [ebp + 0xc]
sub esp, 4
mov dword [esp + 0x18], eax
jmp 0x73bda5
mov ecx, edx
mov dword [esp], 0xa
mov dword [esp + 0x18], edx
call method.void_rapidjson::internal::Stack_rapidjson::CrtAllocator_.Expand_char__unsigned_int_
sub esp, 4
mov edx, dword [esp + 0x18]
mov esi, dword [edx + 0xc]
mov ebp, esi
jmp 0x73bfbf
mov ebx, 2
mov eax, dword [esp + 0x28]
mov ebp, 0x2e30
sub ebx, esi
mov esi, dword [esp + 0x50]
mov dword [esp + 8], eax
lea eax, [esi + ebx]
mov dword [esp + 4], esi
mov dword [esp], eax
call sym._memmove
cmp ebx, 2
mov word [esi], bp
je 0x73d5e0
mov ecx, ebx
lea edx, [esi + 2]
sub ecx, 2
je 0x73d5e0
xor eax, eax
mov byte [edx + eax], 0x30
add eax, 1
cmp eax, ecx
jb 0x73d5d5
mov eax, dword [esp + 0x48]
mov esi, dword [esp + 0x70]
neg eax
cmp esi, eax
jge 0x73d647
lea eax, [esi + 1]
cmp eax, 2
jle 0x73d626
mov ecx, dword [esp + 0x50]
cmp byte [ecx + esi + 1], 0x30
je 0x73d61e
jmp 0x73d525
mov esi, dword [esp + 0x50]
cmp byte [esi + eax], 0x30
jne 0x73d525
sub eax, 1
cmp eax, 2
jne 0x73d610
mov eax, dword [esp + 0x50]
add eax, 3
jmp 0x73beca
mov ecx, 0x2e30
mov byte [eax + 2], 0x30
add eax, 3
mov word [eax - 3], cx
jmp 0x73beca
mov eax, dword [esp + 0x28]
add eax, ebx
add eax, dword [esp + 0x50]
jmp 0x73beca
mov dword [esp], 1
call sym.operator_new_unsigned_int_
mov esi, dword [edi + 0xc]
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov ecx, dword [edi + 0x10]
jmp 0x73d21e
mov eax, ebx
mov esi, 0x64
cdq
idiv esi
add eax, 0x30
add edx, edx
mov byte [ecx], al
movzx eax, byte [edx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [ecx + 1], al
movzx edx, byte [edx + 0x8796c1]
lea eax, [ecx + 3]
mov byte [ecx + 2], dl
jmp 0x73beca
mov dword [esp], 1
call sym.operator_new_unsigned_int_
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov eax, dword [ebx + 0xc]
mov edx, dword [ebx + 8]
mov dword [esp + 0x28], eax
jmp 0x73d243
mov dword [esp], 1
call sym.operator_new_unsigned_int_
mov esi, dword [ebx + 0xc]
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov eax, dword [ebx + 8]
mov dword [esp + 0x20], esi
jmp 0x73d20b
mov dword [esp], 1
call sym.operator_new_unsigned_int_
mov esi, dword [edi + 0xc]
mov dword [edi + 4], eax
mov dword [edi + 8], eax
mov ecx, dword [edi + 0x10]
jmp 0x73d231
mov dword [esp], 1
call sym.operator_new_unsigned_int_
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov eax, dword [ebx + 0xc]
jmp 0x73d284
mov dword [esp], 1
call sym.operator_new_unsigned_int_
mov dword [ebx], eax
mov dword [ebx + 4], eax
mov eax, dword [ebx + 0xc]
jmp 0x73d296
mov ecx, esi
jmp 0x73c0c7
mov dword [esp], 1
call sym.operator_new_unsigned_int_
mov dword [ebp], eax
mov dword [ebp + 4], eax
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
mov dword [esp + 0x18], eax
jmp 0x73d44e
add ebx, ebx
movzx eax, byte [ebx + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov byte [ecx], al
movzx edx, byte [ebx + 0x8796c1]
lea eax, [ecx + 2]
mov byte [ecx + 1], dl
jmp 0x73beca
mov eax, dword [esp + 0x50]
lea eax, [eax + esi + 2]
jmp 0x73beca
test ebx, ebx
mov byte [eax + 1], 0x65
jns 0x73d05f
mov ebx, dword [esp + 0x28]
lea ecx, [eax + 3]
mov byte [eax + 2], 0x2d
sub ebx, esi
jmp 0x73d05f
mov dword [esp + 0x18], esi
mov ecx, dword [esp + 0x20]
jmp 0x73ce45
mov eax, esi
jmp 0x73bffd
mov eax, esi
jmp 0x73bf58