Function at 0x4773d0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x514797
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xd4
push ebx
push esi
push edi
mov esi, ecx
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 4], 0
xor ebx, ebx
mov dword [ebp - 0x6c], ebx
mov dword [ebp - 4], 2
lea eax, [esi + 0x30]
mov edi, dword [ebp + 8]
mov dword [ebp - 0x2c], eax
mov eax, dword [esi + 0x28]
dec eax
cmp eax, 0xd
ja case.0x477431.10
jmp dword [eax*4 + 0x47814c]
mov eax, dword [edi + 8]
sub eax, dword [edi + 4]
mov ecx, dword [edi + 0x5c]
sar eax, 2
mov byte [ebp + 8], 0
mov dword [ebp - 0x68], eax
test ecx, ecx
je 0x47812d
mov eax, dword [ecx]
mov edx, dword [eax + 8]
lea eax, [edi + 0x68]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x68]
push eax
call edx
mov byte [ebp - 0xd], al
lea ecx, [edi + 0x10]
lea eax, [ebp - 0xd]
push eax
call fcn.004725d0
push ecx
lea eax, [ebp - 0xd]
mov byte [ebp - 0xd], 1
push eax
lea eax, [ebp - 0xc0]
mov ecx, edi
push eax
call fcn.0047c9a0
mov edx, dword [edi + 8]
lea ecx, [edi + 4]
cmp edx, dword [ecx + 8]
je 0x4774a5
mov eax, dword [ebp - 0xbc]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x4774b2
lea eax, [ebp - 0xbc]
push eax
push edx
call fcn.00475ff0
lea ecx, [esi + 0x30]
call fcn.00472220
mov dword [esi + 0x28], eax
cmp eax, 0xb
jne 0x4774ce
mov ecx, edi
call fcn.00479590
jmp 0x477647
cmp eax, 4
jne 0x4778ac
lea eax, [esi + 0x5c]
mov ecx, edi
push eax
call fcn.004797f0
test al, al
je 0x477b14
lea ebx, [esi + 0x30]
mov ecx, ebx
call fcn.00472220
mov dword [esi + 0x28], eax
cmp eax, 0xc
jne 0x477759
lea eax, [ebp + 0xb]
mov byte [ebp + 0xb], 0
push eax
lea ecx, [ebp - 0x78]
call fcn.004725d0
mov ecx, ebx
call fcn.00472220
mov ebx, dword [ebp - 0x6c]
mov dword [esi + 0x28], eax
jmp 0x477424
mov eax, dword [edi + 8]
sub eax, dword [edi + 4]
mov ecx, dword [edi + 0x5c]
sar eax, 2
mov byte [ebp + 8], 2
mov dword [ebp - 0x68], eax
test ecx, ecx
je 0x47812d
mov eax, dword [ecx]
mov edx, dword [eax + 8]
lea eax, [edi + 0x68]
push eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x68]
push eax
call edx
mov byte [ebp - 0xd], al
lea ecx, [edi + 0x10]
lea eax, [ebp - 0xd]
push eax
call fcn.004725d0
push ecx
lea eax, [ebp - 0xd]
mov byte [ebp - 0xd], 2
push eax
lea eax, [ebp - 0x34]
mov ecx, edi
push eax
call fcn.0047c9a0
mov edx, dword [edi + 8]
lea ecx, [edi + 4]
cmp edx, dword [ecx + 8]
je 0x477589
mov eax, dword [ebp - 0x30]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x477593
lea eax, [ebp - 0x30]
push eax
push edx
call fcn.00475ff0
lea ecx, [esi + 0x30]
call fcn.00472220
mov dword [esi + 0x28], eax
cmp eax, 0xa
jne 0x4775af
mov ecx, edi
call fcn.00479470
jmp 0x477647
lea eax, [ebp + 0xb]
mov byte [ebp + 0xb], 1
push eax
lea ecx, [ebp - 0x78]
call fcn.004725d0
mov ebx, dword [ebp - 0x6c]
jmp 0x477424
fld qword [esi + 0x88]
sub esp, 8
fstp qword [esp]
call fcn.004e5937
add esp, 8
test ax, ax
jg 0x4779a3
fld qword [esi + 0x88]
sub esp, 0xc
mov ecx, edi
fstp qword [esp]
call fcn.00479960
jmp 0x477647
push 0
mov ecx, edi
call fcn.004799c0
jmp 0x477647
mov ecx, edi
call fcn.004799e0
jmp 0x477647
push 1
mov ecx, edi
call fcn.004799c0
jmp 0x477647
push dword [esi + 0x7c]
mov ecx, edi
push dword [esi + 0x78]
call fcn.004799a0
jmp 0x477647
lea eax, [esi + 0x5c]
mov ecx, edi
push eax
call fcn.00479940
jmp 0x477647
push dword [esi + 0x84]
mov ecx, edi
push dword [esi + 0x80]
call fcn.00479980
test al, al
je 0x477b14
nop
test ebx, ebx
je 0x477f07
mov eax, dword [ebp - 0x78]
lea ecx, [ebp - 0xb0]
push ebx
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], 0
call fcn.00473a80
mov ecx, dword [ebp - 0xac]
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xb4], ecx
lea ecx, [ebp - 0xb8]
push 0xffffffffffffffff
mov dword [ebp - 0xb8], eax
call fcn.00473a80
mov eax, dword [ebp - 0xb8]
mov edx, 1
mov ecx, dword [ebp - 0xb4]
shl edx, cl
lea ecx, [esi + 0x30]
test dword [eax], edx
je 0x4776d9
call fcn.00472220
mov dword [esi + 0x28], eax
cmp eax, 0xd
je 0x477749
cmp eax, 0xa
jne 0x477b1b
mov ecx, edi
call fcn.00479470
jmp 0x4776f6
call fcn.00472220
mov dword [esi + 0x28], eax
cmp eax, 0xd
je 0x47770e
cmp eax, 0xb
jne 0x477c08
mov ecx, edi
call fcn.00479590
test al, al
je 0x477b14
lea ecx, [ebp - 0x78]
call fcn.00479bc0
mov ebx, dword [ebp - 0x6c]
jmp 0x477650
lea ecx, [esi + 0x30]
call fcn.00472220
mov dword [esi + 0x28], eax
cmp eax, 4
jne 0x477e10
lea eax, [esi + 0x5c]
mov ecx, edi
push eax
call fcn.004797f0
test al, al
je 0x477b14
lea ecx, [esi + 0x30]
call fcn.00472220
mov dword [esi + 0x28], eax
cmp eax, 0xc
jne 0x477cf7
lea ecx, [esi + 0x30]
call fcn.00472220
mov dword [esi + 0x28], eax
jmp 0x477424
xor eax, eax
mov dword [ebp + 8], 0x1f
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004030f0
mov ecx, dword [ebp + 8]
mov edx, eax
mov dword [ebp - 0x14], ecx
add esp, 8
mov ecx, dword [str.object_separator]
mov dword [ebp - 0x28], edx
mov dword [edx], ecx
mov ecx, dword [0x520f20]
mov dword [edx + 4], ecx
mov eax, dword [0x520f24]
mov dword [edx + 8], eax
mov eax, dword [0x520f28]
mov dword [edx + 0xc], eax
mov dword [ebp - 0x18], 0x10
mov byte [edx + 0x10], 0
mov byte [ebp - 4], 0x15
lea eax, [ebp - 0x28]
push eax
push 0xc
lea eax, [ebp - 0xa8]
mov ecx, esi
push eax
call fcn.004712c0
mov byte [ebp - 4], 0x16
mov ecx, dword [esi + 0x44]
mov dword [ebp - 0x38], ecx
mov ecx, dword [esi + 0x48]
mov dword [ebp - 0x34], ecx
mov ecx, dword [esi + 0x4c]
push eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x30], ecx
push eax
lea ecx, [ebp - 0x64]
call fcn.00408270
add esp, 8
mov esi, eax
mov byte [ebp - 4], 0x17
lea eax, [ebp - 0x90]
push eax
mov ecx, ebx
call fcn.00471990
mov byte [ebp - 4], 0x18
mov ecx, edi
push esi
sub esp, 8
call fcn.00478190
mov bl, al
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x90]
call fcn.00402c80
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x54]
mov dword [ebp - 0x68], eax
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x50]
push eax
mov dword [ebp - 0x54], vtable.std::exception.0
call fcn.004e0c7d
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x60]
mov dword [ebp - 0x64], vtable.std::exception.0
push eax
call fcn.004e0c7d
add esp, 8
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0xa8]
call fcn.00402c80
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x4780f2
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4780e8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x478128
jmp 0x4780e8
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x1c], eax
mov eax, dword [str.object_key]
mov dword [ebp - 0x28], eax
mov eax, dword [0x520f14]
mov dword [ebp - 0x24], eax
mov ax, word [0x520f18]
mov dword [ebp - 0x18], 0xa
mov dword [ebp - 0x14], 0xf
mov word [ebp - 0x20], ax
mov byte [ebp - 0x1e], 0
mov byte [ebp - 4], 9
lea eax, [ebp - 0x28]
push eax
push 4
lea eax, [ebp - 0x90]
mov ecx, esi
push eax
call fcn.004712c0
mov byte [ebp - 4], 0xa
mov ecx, dword [esi + 0x44]
mov dword [ebp - 0x38], ecx
mov ecx, dword [esi + 0x48]
mov dword [ebp - 0x34], ecx
mov ecx, dword [esi + 0x4c]
push eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x30], ecx
push eax
lea ecx, [ebp - 0x64]
call fcn.00408270
add esp, 8
mov esi, eax
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x2c]
push eax
call fcn.00471990
mov byte [ebp - 4], 0xc
mov ecx, edi
push esi
sub esp, 8
call fcn.00478190
mov bl, al
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0xa8]
call fcn.00402c80
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x54]
mov dword [ebp + 8], eax
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x50]
push eax
mov dword [ebp - 0x54], vtable.std::exception.0
call fcn.004e0c7d
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x60]
push eax
mov dword [ebp - 0x64], vtable.std::exception.0
call fcn.004e0c7d
add esp, 8
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x90]
jmp 0x47786c
mov ebx, dword [ebp - 0x2c]
lea eax, [ebp - 0x90]
push eax
mov ecx, ebx
call fcn.00471990
mov byte [ebp - 4], 0x25
mov edx, str.number_overflow_parsing_
push eax
lea ecx, [ebp - 0x44]
call fcn.0046d240
mov byte [ebp - 4], 0x26
mov edx, eax
push 0x520084
lea ecx, [ebp - 0x28]
call fcn.0046d100
mov byte [ebp - 4], 0x27
mov edx, 0x196
push eax
lea ecx, [ebp - 0xe0]
call fcn.00408ae0
add esp, 0xc
mov esi, eax
mov byte [ebp - 4], 0x28
lea eax, [ebp - 0xa8]
push eax
mov ecx, ebx
call fcn.00471990
mov byte [ebp - 4], 0x29
cmp byte [edi + 0x60], 0
mov byte [edi + 0x34], 1
jne 0x478132
xor bl, bl
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0xa8]
call fcn.00402c80
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0xd0]
mov dword [ebp + 8], eax
mov byte [ebp - 4], 0x2b
lea eax, [ebp - 0xcc]
push eax
mov dword [ebp - 0xd0], vtable.std::exception.0
call fcn.004e0c7d
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0xdc]
push eax
mov dword [ebp - 0xe0], vtable.std::exception.0
call fcn.004e0c7d
add esp, 8
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x477aa4
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x477a9a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x478128
push ecx
push edx
call fcn.004dfaf3
add esp, 8
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x30]
cmp ecx, 0xf
jbe 0x477aee
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x477ae4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x478128
push ecx
push edx
call fcn.004dfaf3
add esp, 8
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x90]
call fcn.00402c80
jmp 0x478104
xor bl, bl
jmp 0x478104
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov eax, dword [str.array]
mov dword [ebp - 0x28], eax
mov al, byte [0x5200c4]
mov dword [ebp - 0x18], 5
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x24], al
mov byte [ebp - 0x23], 0
mov byte [ebp - 4], 0x56
lea eax, [ebp - 0x28]
push eax
push 0xa
lea eax, [ebp - 0x90]
mov ecx, esi
push eax
call fcn.004712c0
mov byte [ebp - 4], 0x57
mov ecx, dword [esi + 0x44]
mov dword [ebp - 0x38], ecx
mov ecx, dword [esi + 0x48]
mov dword [ebp - 0x34], ecx
mov ecx, dword [esi + 0x4c]
push eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x30], ecx
push eax
lea ecx, [ebp - 0x64]
call fcn.00408270
add esp, 8
mov esi, eax
mov byte [ebp - 4], 0x58
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x2c]
push eax
call fcn.00471990
mov byte [ebp - 4], 0x59
mov ecx, edi
push esi
sub esp, 8
call fcn.00478190
mov bl, al
mov byte [ebp - 4], 0x58
lea ecx, [ebp - 0xa8]
call fcn.00402c80
mov byte [ebp - 4], 0x5b
lea eax, [ebp - 0x54]
mov dword [ebp + 8], eax
mov byte [ebp - 4], 0x5b
lea eax, [ebp - 0x50]
push eax
mov dword [ebp - 0x54], vtable.std::exception.0
call fcn.004e0c7d
mov byte [ebp - 4], 0x57
lea eax, [ebp - 0x60]
push eax
mov dword [ebp - 0x64], vtable.std::exception.0
call fcn.004e0c7d
add esp, 8
mov byte [ebp - 4], 0x56
lea ecx, [ebp - 0x90]
jmp 0x47786c
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov eax, dword [str.object]
mov dword [ebp - 0x28], eax
mov ax, word [0x5200bc]
mov dword [ebp - 0x18], 6
mov dword [ebp - 0x14], 0xf
mov word [ebp - 0x24], ax
mov byte [ebp - 0x22], 0
mov byte [ebp - 4], 0x78
lea eax, [ebp - 0x28]
push eax
push 0xb
lea eax, [ebp - 0x90]
mov ecx, esi
push eax
call fcn.004712c0
mov byte [ebp - 4], 0x79
mov ecx, dword [esi + 0x44]
mov dword [ebp - 0x38], ecx
mov ecx, dword [esi + 0x48]
mov dword [ebp - 0x34], ecx
mov ecx, dword [esi + 0x4c]
push eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x30], ecx
push eax
lea ecx, [ebp - 0x64]
call fcn.00408270
add esp, 8
mov esi, eax
mov byte [ebp - 4], 0x7a
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x2c]
push eax
call fcn.00471990
mov byte [ebp - 4], 0x7b
mov ecx, edi
push esi
sub esp, 8
call fcn.00478190
mov bl, al
mov byte [ebp - 4], 0x7a
lea ecx, [ebp - 0xa8]
call fcn.00402c80
mov byte [ebp - 4], 0x7d
lea eax, [ebp - 0x54]
mov dword [ebp + 8], eax
mov byte [ebp - 4], 0x7d
lea eax, [ebp - 0x50]
push eax
mov dword [ebp - 0x54], vtable.std::exception.0
call fcn.004e0c7d
mov byte [ebp - 4], 0x79
lea eax, [ebp - 0x60]
push eax
mov dword [ebp - 0x64], vtable.std::exception.0
call fcn.004e0c7d
add esp, 8
mov byte [ebp - 4], 0x78
lea ecx, [ebp - 0x90]
jmp 0x47786c
xor eax, eax
mov dword [ebp + 8], 0x1f
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
lea eax, [ebp + 8]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004030f0
mov ecx, dword [ebp + 8]
mov edx, eax
mov dword [ebp - 0x14], ecx
add esp, 8
mov ecx, dword [str.object_separator]
mov dword [ebp - 0x28], edx
mov dword [edx], ecx
mov ecx, dword [0x520f20]
mov dword [edx + 4], ecx
mov eax, dword [0x520f24]
mov dword [edx + 8], eax
mov eax, dword [0x520f28]
mov dword [edx + 0xc], eax
mov dword [ebp - 0x18], 0x10
mov byte [edx + 0x10], 0
mov byte [ebp - 4], 0x6c
lea eax, [ebp - 0x28]
push eax
push 0xc
lea eax, [ebp - 0x90]
mov ecx, esi
push eax
call fcn.004712c0
mov byte [ebp - 4], 0x6d
mov ecx, dword [esi + 0x44]
mov dword [ebp - 0x38], ecx
mov ecx, dword [esi + 0x48]
mov dword [ebp - 0x34], ecx
mov ecx, dword [esi + 0x4c]
push eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x30], ecx
push eax
lea ecx, [ebp - 0x64]
call fcn.00408270
add esp, 8
mov esi, eax
mov byte [ebp - 4], 0x6e
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x2c]
push eax
call fcn.00471990
mov byte [ebp - 4], 0x6f
mov ecx, edi
push esi
sub esp, 8
call fcn.00478190
mov bl, al
mov byte [ebp - 4], 0x6e
lea ecx, [ebp - 0xa8]
call fcn.00402c80
mov byte [ebp - 4], 0x71
lea eax, [ebp - 0x54]
mov dword [ebp - 0x68], eax
mov byte [ebp - 4], 0x71
lea eax, [ebp - 0x50]
push eax
mov dword [ebp - 0x54], vtable.std::exception.0
call fcn.004e0c7d
mov byte [ebp - 4], 0x6d
lea eax, [ebp - 0x60]
mov dword [ebp - 0x64], vtable.std::exception.0
push eax
call fcn.004e0c7d
add esp, 8
mov byte [ebp - 4], 0x6c
lea ecx, [ebp - 0x90]
jmp 0x47786c
xor eax, eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x1c], eax
mov eax, dword [str.object_key]
mov dword [ebp - 0x28], eax
mov eax, dword [0x520f14]
mov dword [ebp - 0x24], eax
mov ax, word [0x520f18]
mov dword [ebp - 0x18], 0xa
mov dword [ebp - 0x14], 0xf
mov word [ebp - 0x20], ax
mov byte [ebp - 0x1e], 0
mov byte [ebp - 4], 0x60
lea eax, [ebp - 0x28]
push eax
push 4
lea eax, [ebp - 0x90]
mov ecx, esi
push eax
call fcn.004712c0
mov byte [ebp - 4], 0x61
mov ecx, dword [esi + 0x44]
mov dword [ebp - 0x38], ecx
mov ecx, dword [esi + 0x48]
mov dword [ebp - 0x34], ecx
mov ecx, dword [esi + 0x4c]
push eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x30], ecx
push eax
lea ecx, [ebp - 0x64]
call fcn.00408270
add esp, 8
mov esi, eax
mov byte [ebp - 4], 0x62
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x2c]
push eax
call fcn.00471990
mov byte [ebp - 4], 0x63
mov ecx, edi
push esi
sub esp, 8
call fcn.00478190
mov bl, al
mov byte [ebp - 4], 0x62
lea ecx, [ebp - 0xa8]
call fcn.00402c80
mov byte [ebp - 4], 0x65
lea eax, [ebp - 0x54]
mov dword [ebp + 8], eax
mov byte [ebp - 4], 0x65
lea eax, [ebp - 0x50]
push eax
mov dword [ebp - 0x54], vtable.std::exception.0
call fcn.004e0c7d
mov byte [ebp - 4], 0x61
lea eax, [ebp - 0x60]
push eax
mov dword [ebp - 0x64], vtable.std::exception.0
call fcn.004e0c7d
add esp, 8
mov byte [ebp - 4], 0x60
lea ecx, [ebp - 0x90]
jmp 0x47786c
mov bl, 1
jmp 0x478104
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov eax, dword [str.value]
mov dword [ebp - 0x28], eax
mov al, byte [0x51fdd0]
mov dword [ebp - 0x18], 5
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x24], al
mov byte [ebp - 0x23], 0
mov byte [ebp - 4], 0x3e
lea eax, [ebp - 0x28]
push eax
push 0
lea eax, [ebp - 0x90]
mov ecx, esi
push eax
call fcn.004712c0
mov byte [ebp - 4], 0x3f
mov ecx, dword [esi + 0x44]
mov dword [ebp - 0x38], ecx
mov ecx, dword [esi + 0x48]
mov dword [ebp - 0x34], ecx
mov ecx, dword [esi + 0x4c]
push eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x30], ecx
push eax
lea ecx, [ebp - 0x64]
call fcn.00408270
add esp, 8
mov esi, eax
mov byte [ebp - 4], 0x40
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x2c]
push eax
call fcn.00471990
mov byte [ebp - 4], 0x41
mov ecx, edi
push esi
sub esp, 8
call fcn.00478190
mov bl, al
mov byte [ebp - 4], 0x40
lea ecx, [ebp - 0xa8]
call fcn.00402c80
mov byte [ebp - 4], 0x43
lea eax, [ebp - 0x54]
mov dword [ebp + 8], eax
mov byte [ebp - 4], 0x43
lea eax, [ebp - 0x50]
push eax
mov dword [ebp - 0x54], vtable.std::exception.0
call fcn.004e0c7d
mov byte [ebp - 4], 0x3f
lea eax, [ebp - 0x60]
push eax
mov dword [ebp - 0x64], vtable.std::exception.0
call fcn.004e0c7d
add esp, 8
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x90]
jmp 0x47786c
xor eax, eax
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], eax
mov eax, dword [str.value]
mov dword [ebp - 0x28], eax
mov al, byte [0x51fdd0]
mov dword [ebp - 0x18], 5
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x24], al
mov byte [ebp - 0x23], 0
mov byte [ebp - 4], 0x48
lea eax, [ebp - 0x28]
push eax
push 0x10
lea eax, [ebp - 0x90]
mov ecx, esi
push eax
call fcn.004712c0
mov byte [ebp - 4], 0x49
mov ecx, dword [esi + 0x44]
mov dword [ebp - 0x38], ecx
mov ecx, dword [esi + 0x48]
mov dword [ebp - 0x34], ecx
mov ecx, dword [esi + 0x4c]
push eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x30], ecx
push eax
lea ecx, [ebp - 0x64]
call fcn.00408270
add esp, 8
mov esi, eax
mov byte [ebp - 4], 0x4a
lea eax, [ebp - 0xa8]
mov ecx, dword [ebp - 0x2c]
push eax
call fcn.00471990
mov byte [ebp - 4], 0x4b
mov ecx, edi
push esi
sub esp, 8
call fcn.00478190
mov bl, al
mov byte [ebp - 4], 0x4a
lea ecx, [ebp - 0xa8]
call fcn.00402c80
mov byte [ebp - 4], 0x4d
lea eax, [ebp - 0x54]
mov dword [ebp + 8], eax
mov byte [ebp - 4], 0x4d
lea eax, [ebp - 0x50]
push eax
mov dword [ebp - 0x54], vtable.std::exception.0
call fcn.004e0c7d
mov byte [ebp - 4], 0x49
lea eax, [ebp - 0x60]
push eax
mov dword [ebp - 0x64], vtable.std::exception.0
call fcn.004e0c7d
add esp, 8
mov byte [ebp - 4], 0x48
lea ecx, [ebp - 0x90]
jmp 0x47786c
push ecx
push edx
call fcn.004dfaf3
add esp, 8
mov byte [ebp - 0x28], 0
mov dword [ebp - 0x14], 0xf
mov dword [ebp - 0x18], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x78]
call fcn.00465990
mov ecx, dword [ebp - 0xc]
mov al, bl
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 4
call fcn.004e4d70
call fcn.004ddeb8
push esi
lea ecx, [ebp - 0x60]
call fcn.00479fd0
push 0x53ddd4
lea eax, [ebp - 0x60]
push eax
call fcn.004e12fb
lea ecx, [ecx]
or eax, 0xf9004776
jne 4686234
add byte [esi + esi*2], al
inc edi
add byte [edi], ah
jbe 0x4781a2
add byte [esi + esi*2], dh
inc edi
add byte [eax], bl
jbe 0x4781aa
add bh, al
jne 0x4781ae
add byte [edx], ah
jne 0x4781b2
add byte [eax], bh
je 0x4781b6
add bl, bh
jg 0x4781ba
add bl, bh
jg 0x4781be
add bl, bh
jg 0x4781c2
add bl, bh
jg 0x4781c6
add byte [esi], cl
jg 0x4781ca
add ah, cl
int3
inc ecx
xor al, 1
cmp byte [ecx + 0x60], 0
jne 0x4781ab
or byte [edx], dh
ror byte [ebx + 0xcc25de5], 0
xor al, al
mov esp, ebp
pop ebp
ret 0xc
add bh, bh
jne 0x4781be
push dword [ebp + 0x10]
lea ecx, [esp + 4]
call fcn.0046b760
push 0x53de98
lea eax, [esp + 4]
jmp [eax - 0x68]
push ebx
add byte [ebp + 0x50042444], cl
and al, 4
push eax
call fcn.004e12fb
xor eax, 0xcc000691
int3
int3
int3