Function at 0x4f4730
Capabilities:
Encode data using xor
Hash data using fnv

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x566fec
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x328
mov eax, dword [0x5ca1c0]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov eax, dword fs:[0x2c]
mov esi, dword [eax]
mov eax, dword [0x93be40]
cmp eax, dword [esi + 4]
jle 0x4f47ea
push 0x93be40
call fcn.0052459e
add esp, 4
cmp dword [0x93be40], 0xffffffff
jne 0x4f47ea
push ecx
mov dword [ebp - 4], 0
xorps xmm0, xmm0
push str._d1_2___d1_2___d4__s_d1_2_:_d1_2_
mov ecx, 0x933870
mov dword [0x933880], 0
movups xmmword [0x933870], xmm0
call fcn.004148a0
push 0x56bb20
call fcn.00524a42
add esp, 4
mov dword [ebp - 4], 0xffffffff
push 0x93be40
call fcn.0052454d
add esp, 4
mov eax, dword [0x933408]
cmp eax, dword [esi + 4]
jle 0x4f4859
push 0x933408
call fcn.0052459e
add esp, 4
cmp dword [0x933408], 0xffffffff
jne 0x4f4859
push ecx
mov dword [ebp - 4], 1
xorps xmm0, xmm0
push str._d1_2_._d1_2_._d4__s_d1_2_:_d1_2_
mov ecx, 0x930058
mov dword [0x930068], 0
movups xmmword [0x930058], xmm0
call fcn.004148a0
push 0x56baf0
call fcn.00524a42
add esp, 4
mov dword [ebp - 4], 0xffffffff
push 0x933408
call fcn.0052454d
add esp, 4
mov eax, dword [0x9329e0]
cmp eax, dword [esi + 4]
jle 0x4f48c8
push 0x9329e0
call fcn.0052459e
add esp, 4
cmp dword [0x9329e0], 0xffffffff
jne 0x4f48c8
push ecx
mov dword [ebp - 4], 2
xorps xmm0, xmm0
push str._d4___w___d1_2__s_d1_2_:_d1_2_
mov ecx, 0x93c3bc
mov dword [0x93c3cc], 0
movups xmmword [0x93c3bc], xmm0
call fcn.004148a0
push 0x56bac0
call fcn.00524a42
add esp, 4
mov dword [ebp - 4], 0xffffffff
push 0x9329e0
call fcn.0052454d
add esp, 4
mov eax, dword [0x9315a8]
cmp eax, dword [esi + 4]
jle 0x4f4c42
push 0x9315a8
call fcn.0052459e
add esp, 4
cmp dword [0x9315a8], 0xffffffff
jne 0x4f4c42
mov dword [ebp - 4], 3
lea ecx, [ebp - 0x338]
xorps xmm0, xmm0
mov dword [ebp - 0x328], 0
push 3
push 0x5adbcc
movups xmmword [0x93be20], xmm0
mov dword [ebp - 0x324], 0
movups xmmword [0x93be30], xmm0
movups xmmword [ebp - 0x338], xmm0
call fcn.0040f680
mov dword [ebp - 0x320], 0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x31c]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x30c], 0
push 0x5adbdc
movups xmmword [ebp - 0x31c], xmm0
mov dword [ebp - 0x308], 0
call fcn.0040f680
mov dword [ebp - 0x304], 1
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x300]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x2f0], 0
push 0x5adbd8
movups xmmword [ebp - 0x300], xmm0
mov dword [ebp - 0x2ec], 0
call fcn.0040f680
mov dword [ebp - 0x2e8], 2
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x2e4]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x2d4], 0
push 0x5adbe4
movups xmmword [ebp - 0x2e4], xmm0
mov dword [ebp - 0x2d0], 0
call fcn.0040f680
mov dword [ebp - 0x2cc], 3
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x2c8]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x2b8], 0
push 0x5adbe0
movups xmmword [ebp - 0x2c8], xmm0
mov dword [ebp - 0x2b4], 0
call fcn.0040f680
mov dword [ebp - 0x2b0], 4
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x2ac]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x29c], 0
push 0x5adbec
movups xmmword [ebp - 0x2ac], xmm0
mov dword [ebp - 0x298], 0
call fcn.0040f680
mov dword [ebp - 0x294], 5
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x290]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x280], 0
push 0x5adbe8
movups xmmword [ebp - 0x290], xmm0
mov dword [ebp - 0x27c], 0
call fcn.0040f680
mov dword [ebp - 0x278], 6
mov byte [ebp - 4], 0xa
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x264], 0
push 0x5adbf4
lea ecx, [ebp - 0x274]
mov dword [ebp - 0x260], 0
movups xmmword [ebp - 0x274], xmm0
call fcn.0040f680
mov dword [ebp - 0x25c], 7
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x258]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x248], 0
push 0x5adbf0
movups xmmword [ebp - 0x258], xmm0
mov dword [ebp - 0x244], 0
call fcn.0040f680
mov dword [ebp - 0x240], 8
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x23c]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x22c], 0
push 0x5adbfc
movups xmmword [ebp - 0x23c], xmm0
mov dword [ebp - 0x228], 0
call fcn.0040f680
mov dword [ebp - 0x224], 9
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x220]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x210], 0
push 0x5adbf8
movups xmmword [ebp - 0x220], xmm0
mov dword [ebp - 0x20c], 0
call fcn.0040f680
mov dword [ebp - 0x208], 0xa
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x204]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x1f4], 0
push 0x5adc10
movups xmmword [ebp - 0x204], xmm0
mov dword [ebp - 0x1f0], 0
call fcn.0040f680
mov dword [ebp - 0x1ec], 0xb
lea eax, [ebp - 0x1e8]
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x338]
push eax
push ecx
mov ecx, 0x93be20
call fcn.0048ed10
push fcn.004166d0
push 0xc
push 0x1c
lea eax, [ebp - 0x338]
mov byte [ebp - 4], 3
push eax
call fcn.00524c8e
push 0x56ba90
call fcn.00524a42
add esp, 4
mov dword [ebp - 4], 0xffffffff
push 0x9315a8
call fcn.0052454d
add esp, 4
push 0x58
push str.1Exception_3thrown_from_1time_t_get_number_of_seconds_from_date_and_time_string____
mov edx, edi
lea ecx, [ebp - 0x158]
call fcn.004195c0
mov dword [ebp - 4], 0x10
movups xmm0, xmmword [ebp - 0x158]
mov esi, dword [0x5de260]
mov byte [ebp - 0x158], 0
movups xmmword [ebp - 0x198], xmm0
movq xmm0, qword [ebp - 0x148]
movq qword [ebp - 0x180], xmm0
mov dword [ebp - 0x148], 0
mov dword [ebp - 0x144], 0xf
call fcn.0052207c
xorps xmm0, xmm0
mov dword [ebp - 0x178], eax
movups xmmword [ebp - 0x170], xmm0
mov dword [ebp - 0x174], esi
movups xmm0, xmmword [ebp - 0x198]
movups xmmword [ebp - 0x170], xmm0
movq xmm0, qword [ebp - 0x180]
movq qword [ebp - 0x160], xmm0
push 0x38
lea eax, [ebp - 0x140]
push 0
push eax
call fcn.00532960
xorps xmm0, xmm0
mov dword [ebp - 0x140], 0
add esp, 0x14
mov byte [ebp - 0x13c], 0
movups xmmword [ebp - 0x138], xmm0
mov dword [ebp - 0x128], 0
mov byte [ebp - 0x124], 0
mov dword [ebp - 0x120], 0
mov dword [ebp - 0x11c], 0
mov byte [ebp - 0x118], 0
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0
mov byte [ebp - 0x10c], 0
push 0x38
lea eax, [ebp - 0x108]
push 0
push eax
call fcn.00532960
xorps xmm0, xmm0
mov dword [ebp - 0x108], 0
add esp, 0xc
mov byte [ebp - 0x104], 0
movups xmmword [ebp - 0x100], xmm0
mov dword [ebp - 0xf0], 0
mov byte [ebp - 0xec], 0
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0xe4], 0
mov byte [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xd8], 0
mov byte [ebp - 0xd4], 0
push 0x38
lea eax, [ebp - 0xd0]
push 0
push eax
call fcn.00532960
xorps xmm0, xmm0
mov dword [ebp - 0xd0], 0
mov byte [ebp - 0xcc], 0
movups xmmword [ebp - 0xc8], xmm0
mov dword [ebp - 0xb8], 0
mov byte [ebp - 0xb4], 0
mov dword [ebp - 0xb0], 0
mov dword [ebp - 0xac], 0
mov byte [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 0
mov byte [ebp - 0x9c], 0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
movups xmmword [ebp - 0x74], xmm0
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
movups xmmword [ebp - 0x44], xmm0
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
add esp, 8
mov byte [ebp - 4], 0x18
lea edx, [ebp - 0x140]
mov dword [ebp - 0x78], 0
mov ecx, edi
movups xmmword [ebp - 0x98], xmm0
push 0x933870
movups xmmword [ebp - 0x88], xmm0
call fcn.00502530
add esp, 8
test al, al
je 0x4f558e
mov ecx, dword [ebp - 0x134]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x138]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0x114]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jbe 0x4f4eee
lea ecx, [esi + 0xc]
cmp byte [ecx + 8], 0
je 0x4f4f03
mov edx, dword [ecx + 4]
mov eax, dword [ecx]
mov ecx, edx
mov dword [ebp - 0x17c], edx
jmp 0x4f4f09
xor eax, eax
xor edx, edx
xor ecx, ecx
mov dword [ebp - 0x190], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
movups xmmword [ebp - 0x1a0], xmm0
cmp eax, edx
jne 0x4f4f3e
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
jmp 0x4f4f4d
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040f680
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x5c]
call fcn.00416720
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0xf
jbe 0x4f4f96
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f4f8c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov esi, dword [ebp - 0x4c]
mov edi, 1
test esi, esi
je 0x4f4fda
mov ecx, dword [ebp - 0x48]
lea eax, [ebp - 0x5c]
cmp ecx, 0xf
cmova eax, dword [ebp - 0x5c]
cmp byte [eax], 0x30
jne 0x4f4fda
cmp esi, edi
lea edx, [ebp - 0x5c]
mov eax, edi
cmovb eax, esi
cmp ecx, 0xf
cmova edx, dword [ebp - 0x5c]
sub esi, eax
add eax, edx
lea ecx, [esi + 1]
push ecx
push eax
push edx
call fcn.005323e0
add esp, 0xc
mov dword [ebp - 0x4c], esi
call fcn.005371d8
cmp dword [ebp - 0x48], 0xf
lea esi, [ebp - 0x5c]
mov dword [ebp - 0x17c], eax
cmova esi, dword [ebp - 0x5c]
mov dword [eax], 0
lea eax, [ebp - 0x184]
push 0xa
push eax
push esi
call fcn.00536a0f
add esp, 0xc
mov ecx, eax
cmp esi, dword [ebp - 0x184]
je 0x4f647a
mov eax, dword [ebp - 0x17c]
cmp dword [eax], 0x22
je 0x4f6484
mov esi, dword [ebp - 0x138]
mov eax, 0x2aaaaaab
mov dword [ebp - 0x8c], ecx
mov ecx, dword [ebp - 0x134]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0x114]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
jbe 0x4f5057
lea ecx, [esi + 0x18]
cmp byte [ecx + 8], 0
je 0x4f506c
mov edx, dword [ecx + 4]
mov eax, dword [ecx]
mov ecx, edx
mov dword [ebp - 0x17c], edx
jmp 0x4f5072
xor eax, eax
xor edx, edx
xor ecx, ecx
mov dword [ebp - 0x190], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
movups xmmword [ebp - 0x1a0], xmm0
cmp eax, edx
jne 0x4f50a7
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
jmp 0x4f50b6
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040f680
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x74]
call fcn.00416720
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0xf
jbe 0x4f50ff
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f50f5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov esi, dword [ebp - 0x64]
test esi, esi
je 0x4f513f
mov ecx, dword [ebp - 0x60]
lea eax, [ebp - 0x74]
cmp ecx, 0xf
cmova eax, dword [ebp - 0x74]
cmp byte [eax], 0x30
jne 0x4f513f
cmp esi, 1
lea edx, [ebp - 0x74]
mov eax, edi
cmovb eax, esi
cmp ecx, 0xf
cmova edx, dword [ebp - 0x74]
sub esi, eax
add eax, edx
lea ecx, [esi + 1]
push ecx
push eax
push edx
call fcn.005323e0
add esp, 0xc
mov dword [ebp - 0x64], esi
call fcn.005371d8
cmp dword [ebp - 0x60], 0xf
lea esi, [ebp - 0x74]
mov dword [ebp - 0x184], eax
cmova esi, dword [ebp - 0x74]
mov dword [eax], 0
lea eax, [ebp - 0x17c]
push 0xa
push eax
push esi
call fcn.00536a0f
add esp, 0xc
mov ecx, eax
cmp esi, dword [ebp - 0x17c]
je 0x4f648e
mov eax, dword [ebp - 0x184]
cmp dword [eax], 0x22
je 0x4f6498
mov esi, dword [ebp - 0x138]
lea eax, [ecx - 1]
mov ecx, dword [ebp - 0x134]
mov dword [ebp - 0x88], eax
sub ecx, esi
mov eax, 0x2aaaaaab
imul ecx
lea ecx, [ebp - 0x114]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 3
jbe 0x4f51bf
lea ecx, [esi + 0x24]
cmp byte [ecx + 8], 0
je 0x4f51d4
mov edx, dword [ecx + 4]
mov eax, dword [ecx]
mov ecx, edx
mov dword [ebp - 0x17c], edx
jmp 0x4f51da
xor eax, eax
xor edx, edx
xor ecx, ecx
mov dword [ebp - 0x1a8], 0
xorps xmm0, xmm0
mov dword [ebp - 0x1a4], 0
movups xmmword [ebp - 0x1b8], xmm0
cmp eax, edx
jne 0x4f5219
mov dword [ebp - 0x1a8], 0
mov dword [ebp - 0x1a4], 0xf
mov byte [ebp - 0x1b8], 0
jmp 0x4f5228
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x1b8]
call fcn.0040f680
mov byte [ebp - 4], 0x19
call fcn.005371d8
cmp dword [ebp - 0x1a4], 0xf
lea esi, [ebp - 0x1b8]
mov dword [ebp - 0x184], eax
cmova esi, dword [ebp - 0x1b8]
mov dword [eax], 0
lea eax, [ebp - 0x17c]
push 0xa
push eax
push esi
call fcn.00536a0f
add esp, 0xc
mov ecx, eax
cmp esi, dword [ebp - 0x17c]
je 0x4f64a2
mov eax, dword [ebp - 0x184]
cmp dword [eax], 0x22
je 0x4f64ac
lea eax, [ecx - 0x76c]
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x1a4]
mov dword [ebp - 0x84], eax
cmp ecx, 0xf
jbe 0x4f52ca
mov edx, dword [ebp - 0x1b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f52c0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f64b6
push ecx
push edx
call fcn.00524a57
add esp, 8
mov ecx, dword [ebp - 0x134]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x138]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0x114]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 4
jbe 0x4f52f6
lea ecx, [esi + 0x30]
cmp byte [ecx + 8], 0
je 0x4f530d
mov eax, dword [ecx]
mov esi, eax
mov ecx, dword [ecx + 4]
mov edx, eax
mov dword [ebp - 0x17c], ecx
jmp 0x4f5315
xor eax, eax
xor ecx, ecx
xor esi, esi
xor edx, edx
mov dword [ebp - 0x190], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
movups xmmword [ebp - 0x1a0], xmm0
cmp esi, ecx
jne 0x4f534a
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
jmp 0x4f5359
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040f680
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x44]
call fcn.00416720
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0xf
jbe 0x4f53a2
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f5398
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x4f53e2
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x44]
cmp ecx, 0xf
cmova eax, dword [ebp - 0x44]
cmp byte [eax], 0x30
jne 0x4f53e2
cmp esi, 1
lea edx, [ebp - 0x44]
mov eax, edi
cmovb eax, esi
cmp ecx, 0xf
cmova edx, dword [ebp - 0x44]
sub esi, eax
add eax, edx
lea ecx, [esi + 1]
push ecx
push eax
push edx
call fcn.005323e0
add esp, 0xc
mov dword [ebp - 0x34], esi
call fcn.005371d8
cmp dword [ebp - 0x30], 0xf
lea esi, [ebp - 0x44]
mov dword [ebp - 0x184], eax
cmova esi, dword [ebp - 0x44]
mov dword [eax], 0
lea eax, [ebp - 0x17c]
push 0xa
push eax
push esi
call fcn.00536a0f
add esp, 0xc
mov ecx, eax
cmp esi, dword [ebp - 0x17c]
je 0x4f64bb
mov eax, dword [ebp - 0x184]
cmp dword [eax], 0x22
je 0x4f64c5
mov esi, dword [ebp - 0x138]
mov eax, 0x2aaaaaab
mov dword [ebp - 0x90], ecx
mov ecx, dword [ebp - 0x134]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0x114]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
jbe 0x4f545f
lea ecx, [esi + 0x3c]
cmp byte [ecx + 8], 0
je 0x4f5476
mov eax, dword [ecx]
mov esi, eax
mov ecx, dword [ecx + 4]
mov edx, eax
mov dword [ebp - 0x17c], ecx
jmp 0x4f547e
xor eax, eax
xor ecx, ecx
xor esi, esi
xor edx, edx
mov dword [ebp - 0x190], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
movups xmmword [ebp - 0x1a0], xmm0
cmp esi, ecx
jne 0x4f54b3
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
jmp 0x4f54c2
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040f680
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x2c]
call fcn.00416720
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0xf
jbe 0x4f550b
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f5501
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov esi, dword [ebp - 0x1c]
test esi, esi
je 0x4f554a
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x2c]
cmp ecx, 0xf
cmova eax, dword [ebp - 0x2c]
cmp byte [eax], 0x30
jne 0x4f554a
cmp esi, 1
lea edx, [ebp - 0x2c]
cmovb edi, esi
cmp ecx, 0xf
cmova edx, dword [ebp - 0x2c]
sub esi, edi
lea ecx, [esi + 1]
push ecx
lea eax, [edx + edi]
push eax
push edx
call fcn.005323e0
add esp, 0xc
mov dword [ebp - 0x1c], esi
call fcn.005371d8
cmp dword [ebp - 0x18], 0xf
lea esi, [ebp - 0x2c]
mov edi, eax
lea eax, [ebp - 0x17c]
cmova esi, dword [ebp - 0x2c]
push 0xa
push eax
push esi
mov dword [edi], 0
call fcn.00536a0f
add esp, 0xc
cmp esi, dword [ebp - 0x17c]
je 0x4f64cf
cmp dword [edi], 0x22
je 0x4f64d9
jmp 0x4f62b5
push ecx
push 0x930058
lea edx, [ebp - 0x108]
mov ecx, edi
call fcn.00502530
add esp, 8
test al, al
je 0x4f5c1b
mov ecx, dword [ebp - 0xfc]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x100]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0xdc]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jbe 0x4f55d8
lea ecx, [esi + 0xc]
cmp byte [ecx + 8], 0
je 0x4f55ed
mov edx, dword [ecx + 4]
mov eax, dword [ecx]
mov ecx, edx
mov dword [ebp - 0x17c], edx
jmp 0x4f55f3
xor eax, eax
xor edx, edx
xor ecx, ecx
mov dword [ebp - 0x190], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
movups xmmword [ebp - 0x1a0], xmm0
cmp eax, edx
jne 0x4f5628
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
jmp 0x4f5637
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040f680
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x5c]
call fcn.00416720
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0xf
jbe 0x4f5680
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f5676
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov esi, dword [ebp - 0x4c]
mov edi, 1
test esi, esi
je 0x4f56c4
mov ecx, dword [ebp - 0x48]
lea eax, [ebp - 0x5c]
cmp ecx, 0xf
cmova eax, dword [ebp - 0x5c]
cmp byte [eax], 0x30
jne 0x4f56c4
cmp esi, edi
lea edx, [ebp - 0x5c]
mov eax, edi
cmovb eax, esi
cmp ecx, 0xf
cmova edx, dword [ebp - 0x5c]
sub esi, eax
add eax, edx
lea ecx, [esi + 1]
push ecx
push eax
push edx
call fcn.005323e0
add esp, 0xc
mov dword [ebp - 0x4c], esi
call fcn.005371d8
cmp dword [ebp - 0x48], 0xf
lea esi, [ebp - 0x5c]
mov dword [ebp - 0x184], eax
cmova esi, dword [ebp - 0x5c]
mov dword [eax], 0
lea eax, [ebp - 0x17c]
push 0xa
push eax
push esi
call fcn.00536a0f
add esp, 0xc
mov ecx, eax
cmp esi, dword [ebp - 0x17c]
je 0x4f64e3
mov eax, dword [ebp - 0x184]
cmp dword [eax], 0x22
je 0x4f64ed
mov esi, dword [ebp - 0x100]
mov eax, 0x2aaaaaab
mov dword [ebp - 0x8c], ecx
mov ecx, dword [ebp - 0xfc]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0xdc]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
jbe 0x4f5741
lea ecx, [esi + 0x18]
cmp byte [ecx + 8], 0
je 0x4f5756
mov edx, dword [ecx + 4]
mov eax, dword [ecx]
mov ecx, edx
mov dword [ebp - 0x17c], edx
jmp 0x4f575c
xor eax, eax
xor edx, edx
xor ecx, ecx
mov dword [ebp - 0x190], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
movups xmmword [ebp - 0x1a0], xmm0
cmp eax, edx
jne 0x4f5791
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
jmp 0x4f57a0
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040f680
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x74]
call fcn.00416720
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0xf
jbe 0x4f57e9
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f57df
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov esi, dword [ebp - 0x64]
test esi, esi
je 0x4f5829
mov ecx, dword [ebp - 0x60]
lea eax, [ebp - 0x74]
cmp ecx, 0xf
cmova eax, dword [ebp - 0x74]
cmp byte [eax], 0x30
jne 0x4f5829
cmp esi, 1
lea edx, [ebp - 0x74]
mov eax, edi
cmovb eax, esi
cmp ecx, 0xf
cmova edx, dword [ebp - 0x74]
sub esi, eax
add eax, edx
lea ecx, [esi + 1]
push ecx
push eax
push edx
call fcn.005323e0
add esp, 0xc
mov dword [ebp - 0x64], esi
call fcn.005371d8
cmp dword [ebp - 0x60], 0xf
lea esi, [ebp - 0x74]
mov dword [ebp - 0x184], eax
cmova esi, dword [ebp - 0x74]
mov dword [eax], 0
lea eax, [ebp - 0x17c]
push 0xa
push eax
push esi
call fcn.00536a0f
add esp, 0xc
mov ecx, eax
cmp esi, dword [ebp - 0x17c]
je 0x4f64f7
mov eax, dword [ebp - 0x184]
cmp dword [eax], 0x22
je 0x4f6501
mov esi, dword [ebp - 0x100]
lea eax, [ecx - 1]
mov ecx, dword [ebp - 0xfc]
mov dword [ebp - 0x88], eax
sub ecx, esi
mov eax, 0x2aaaaaab
imul ecx
lea ecx, [ebp - 0xdc]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 3
jbe 0x4f58a9
lea ecx, [esi + 0x24]
cmp byte [ecx + 8], 0
je 0x4f58be
mov edx, dword [ecx + 4]
mov eax, dword [ecx]
mov ecx, edx
mov dword [ebp - 0x17c], edx
jmp 0x4f58c4
xor eax, eax
xor edx, edx
xor ecx, ecx
mov dword [ebp - 0x1c0], 0
xorps xmm0, xmm0
mov dword [ebp - 0x1bc], 0
movups xmmword [ebp - 0x1d0], xmm0
cmp eax, edx
jne 0x4f5903
mov dword [ebp - 0x1c0], 0
mov dword [ebp - 0x1bc], 0xf
mov byte [ebp - 0x1d0], 0
jmp 0x4f5912
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x1d0]
call fcn.0040f680
mov byte [ebp - 4], 0x1a
call fcn.005371d8
cmp dword [ebp - 0x1bc], 0xf
lea esi, [ebp - 0x1d0]
mov dword [ebp - 0x184], eax
cmova esi, dword [ebp - 0x1d0]
mov dword [eax], 0
lea eax, [ebp - 0x17c]
push 0xa
push eax
push esi
call fcn.00536a0f
add esp, 0xc
mov ecx, eax
cmp esi, dword [ebp - 0x17c]
je 0x4f650b
mov eax, dword [ebp - 0x184]
cmp dword [eax], 0x22
je 0x4f6515
lea eax, [ecx - 0x76c]
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x1bc]
mov dword [ebp - 0x84], eax
cmp ecx, 0xf
jbe 0x4f59b4
mov edx, dword [ebp - 0x1d0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f59aa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f651f
push ecx
push edx
call fcn.00524a57
add esp, 8
mov ecx, dword [ebp - 0xfc]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0x100]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0xdc]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 4
jbe 0x4f59e0
lea ecx, [esi + 0x30]
cmp byte [ecx + 8], 0
je 0x4f59f7
mov eax, dword [ecx]
mov esi, eax
mov ecx, dword [ecx + 4]
mov edx, eax
mov dword [ebp - 0x17c], ecx
jmp 0x4f59ff
xor eax, eax
xor ecx, ecx
xor esi, esi
xor edx, edx
mov dword [ebp - 0x190], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
movups xmmword [ebp - 0x1a0], xmm0
cmp esi, ecx
jne 0x4f5a34
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
jmp 0x4f5a43
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040f680
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x44]
call fcn.00416720
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0xf
jbe 0x4f5a8c
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f5a82
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x4f5acc
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x44]
cmp ecx, 0xf
cmova eax, dword [ebp - 0x44]
cmp byte [eax], 0x30
jne 0x4f5acc
cmp esi, 1
lea edx, [ebp - 0x44]
mov eax, edi
cmovb eax, esi
cmp ecx, 0xf
cmova edx, dword [ebp - 0x44]
sub esi, eax
add eax, edx
lea ecx, [esi + 1]
push ecx
push eax
push edx
call fcn.005323e0
add esp, 0xc
mov dword [ebp - 0x34], esi
call fcn.005371d8
cmp dword [ebp - 0x30], 0xf
lea esi, [ebp - 0x44]
mov dword [ebp - 0x184], eax
cmova esi, dword [ebp - 0x44]
mov dword [eax], 0
lea eax, [ebp - 0x17c]
push 0xa
push eax
push esi
call fcn.00536a0f
add esp, 0xc
mov ecx, eax
cmp esi, dword [ebp - 0x17c]
je 0x4f6524
mov eax, dword [ebp - 0x184]
cmp dword [eax], 0x22
je 0x4f652e
mov esi, dword [ebp - 0x100]
mov eax, 0x2aaaaaab
mov dword [ebp - 0x90], ecx
mov ecx, dword [ebp - 0xfc]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0xdc]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
jbe 0x4f5b49
lea ecx, [esi + 0x3c]
cmp byte [ecx + 8], 0
je 0x4f5b60
mov eax, dword [ecx]
mov esi, eax
mov ecx, dword [ecx + 4]
mov edx, eax
mov dword [ebp - 0x17c], ecx
jmp 0x4f5b68
xor eax, eax
xor ecx, ecx
xor esi, esi
xor edx, edx
mov dword [ebp - 0x190], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
movups xmmword [ebp - 0x1a0], xmm0
cmp esi, ecx
jne 0x4f5b9d
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
jmp 0x4f5bac
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040f680
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x2c]
call fcn.00416720
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0xf
jbe 0x4f5bf5
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f5beb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov esi, dword [ebp - 0x1c]
test esi, esi
je 0x4f554a
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x2c]
cmp ecx, 0xf
cmova eax, dword [ebp - 0x2c]
cmp byte [eax], 0x30
jne 0x4f554a
jmp 0x4f5524
push ecx
push 0x93c3bc
lea edx, [ebp - 0xd0]
mov ecx, edi
call fcn.00502530
add esp, 8
test al, al
je 0x4f62bb
mov ecx, dword [ebp - 0xc4]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0xc8]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0xa4]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 1
jbe 0x4f5c65
lea ecx, [esi + 0xc]
cmp byte [ecx + 8], 0
je 0x4f5c7a
mov edx, dword [ecx + 4]
mov eax, dword [ecx]
mov ecx, edx
mov dword [ebp - 0x17c], edx
jmp 0x4f5c80
xor eax, eax
xor edx, edx
xor ecx, ecx
mov dword [ebp - 0x1d8], 0
xorps xmm0, xmm0
mov dword [ebp - 0x1d4], 0
movups xmmword [ebp - 0x1e8], xmm0
cmp eax, edx
jne 0x4f5cbf
mov dword [ebp - 0x1d8], 0
mov dword [ebp - 0x1d4], 0xf
mov byte [ebp - 0x1e8], 0
jmp 0x4f5cce
sub ecx, eax
push ecx
push eax
lea ecx, [ebp - 0x1e8]
call fcn.0040f680
mov byte [ebp - 4], 0x1b
call fcn.005371d8
cmp dword [ebp - 0x1d4], 0xf
lea esi, [ebp - 0x1e8]
mov edi, eax
lea eax, [ebp - 0x17c]
cmova esi, dword [ebp - 0x1e8]
push 0xa
push eax
push esi
mov dword [edi], 0
call fcn.00536a0f
add esp, 0xc
cmp esi, dword [ebp - 0x17c]
je 0x4f64cf
cmp dword [edi], 0x22
je 0x4f6538
add eax, 0xfffff894
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x1d4]
mov dword [ebp - 0x84], eax
cmp ecx, 0xf
jbe 0x4f5d63
mov edx, dword [ebp - 0x1e8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f5d59
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6542
push ecx
push edx
call fcn.00524a57
add esp, 8
mov ecx, dword [ebp - 0xc4]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0xc8]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0xa4]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 2
jbe 0x4f5d8f
lea ecx, [esi + 0x18]
cmp byte [ecx + 8], 0
je 0x4f5da6
mov eax, dword [ecx]
mov esi, eax
mov ecx, dword [ecx + 4]
mov edx, eax
mov dword [ebp - 0x17c], ecx
jmp 0x4f5dae
xor eax, eax
xor ecx, ecx
xor esi, esi
xor edx, edx
mov dword [ebp - 0x190], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
movups xmmword [ebp - 0x1a0], xmm0
cmp esi, ecx
jne 0x4f5de3
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
jmp 0x4f5df2
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040f680
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x74]
call fcn.00416720
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0xf
jbe 0x4f5e3b
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f5e31
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
cmp dword [ebp - 0x60], 0xf
lea edi, [ebp - 0x74]
mov esi, dword [ebp - 0x64]
mov edx, 0x811c9dc5
cmova edi, dword [ebp - 0x74]
xor ecx, ecx
test esi, esi
je 0x4f5e65
movzx eax, byte [ecx + edi]
inc ecx
xor eax, edx
imul edx, eax, 0x1000193
cmp ecx, esi
jb 0x4f5e54
push edx
lea eax, [ebp - 0x74]
mov ecx, 0x93be20
push eax
lea eax, [ebp - 0x180]
push eax
call fcn.00435bd0
cmp dword [eax + 4], 0
je 0x4f5ed7
cmp dword [ebp - 0x60], 0xf
lea edi, [ebp - 0x74]
mov ecx, 0x811c9dc5
cmova edi, dword [ebp - 0x74]
xor edx, edx
test esi, esi
je 0x4f5ea8
movzx eax, byte [edi + edx]
inc edx
xor eax, ecx
imul ecx, eax, 0x1000193
cmp edx, esi
jb 0x4f5e97
push ecx
lea eax, [ebp - 0x74]
mov ecx, 0x93be20
push eax
lea eax, [ebp - 0x180]
push eax
call fcn.00435bd0
mov eax, dword [ebp - 0x17c]
test eax, eax
je 0x4f6547
mov eax, dword [eax + 0x20]
mov dword [ebp - 0x88], eax
jmp 0x4f5ee1
mov dword [ebp - 0x88], 0
mov ecx, dword [ebp - 0xc4]
mov eax, 0x2aaaaaab
mov esi, dword [ebp - 0xc8]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0xa4]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 3
jbe 0x4f5f0d
lea ecx, [esi + 0x24]
cmp byte [ecx + 8], 0
je 0x4f5f24
mov eax, dword [ecx]
mov esi, eax
mov ecx, dword [ecx + 4]
mov edx, eax
mov dword [ebp - 0x17c], ecx
jmp 0x4f5f2c
xor eax, eax
xor ecx, ecx
xor esi, esi
xor edx, edx
mov dword [ebp - 0x190], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
movups xmmword [ebp - 0x1a0], xmm0
cmp esi, ecx
jne 0x4f5f61
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
jmp 0x4f5f70
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040f680
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x5c]
call fcn.00416720
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0xf
jbe 0x4f5fb9
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f5faf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov esi, dword [ebp - 0x4c]
mov edi, 1
test esi, esi
je 0x4f5ffd
mov ecx, dword [ebp - 0x48]
lea eax, [ebp - 0x5c]
cmp ecx, 0xf
cmova eax, dword [ebp - 0x5c]
cmp byte [eax], 0x30
jne 0x4f5ffd
cmp esi, edi
lea edx, [ebp - 0x5c]
mov eax, edi
cmovb eax, esi
cmp ecx, 0xf
cmova edx, dword [ebp - 0x5c]
sub esi, eax
add eax, edx
lea ecx, [esi + 1]
push ecx
push eax
push edx
call fcn.005323e0
add esp, 0xc
mov dword [ebp - 0x4c], esi
call fcn.005371d8
cmp dword [ebp - 0x48], 0xf
lea esi, [ebp - 0x5c]
mov dword [ebp - 0x184], eax
cmova esi, dword [ebp - 0x5c]
mov dword [eax], 0
lea eax, [ebp - 0x17c]
push 0xa
push eax
push esi
call fcn.00536a0f
add esp, 0xc
mov ecx, eax
cmp esi, dword [ebp - 0x17c]
je 0x4f64cf
mov eax, dword [ebp - 0x184]
cmp dword [eax], 0x22
je 0x4f6551
mov esi, dword [ebp - 0xc8]
mov eax, 0x2aaaaaab
mov dword [ebp - 0x8c], ecx
mov ecx, dword [ebp - 0xc4]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0xa4]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 4
jbe 0x4f607a
lea ecx, [esi + 0x30]
cmp byte [ecx + 8], 0
je 0x4f6091
mov eax, dword [ecx]
mov esi, eax
mov ecx, dword [ecx + 4]
mov edx, eax
mov dword [ebp - 0x17c], ecx
jmp 0x4f6099
xor eax, eax
xor ecx, ecx
xor esi, esi
xor edx, edx
mov dword [ebp - 0x190], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
movups xmmword [ebp - 0x1a0], xmm0
cmp esi, ecx
jne 0x4f60ce
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
jmp 0x4f60dd
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040f680
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x44]
call fcn.00416720
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0xf
jbe 0x4f6126
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f611c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov esi, dword [ebp - 0x34]
test esi, esi
je 0x4f6166
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x44]
cmp ecx, 0xf
cmova eax, dword [ebp - 0x44]
cmp byte [eax], 0x30
jne 0x4f6166
cmp esi, 1
lea edx, [ebp - 0x44]
mov eax, edi
cmovb eax, esi
cmp ecx, 0xf
cmova edx, dword [ebp - 0x44]
sub esi, eax
add eax, edx
lea ecx, [esi + 1]
push ecx
push eax
push edx
call fcn.005323e0
add esp, 0xc
mov dword [ebp - 0x34], esi
call fcn.005371d8
cmp dword [ebp - 0x30], 0xf
lea esi, [ebp - 0x44]
mov dword [ebp - 0x184], eax
cmova esi, dword [ebp - 0x44]
mov dword [eax], 0
lea eax, [ebp - 0x17c]
push 0xa
push eax
push esi
call fcn.00536a0f
add esp, 0xc
mov ecx, eax
cmp esi, dword [ebp - 0x17c]
je 0x4f64cf
mov eax, dword [ebp - 0x184]
cmp dword [eax], 0x22
je 0x4f655b
mov esi, dword [ebp - 0xc8]
mov eax, 0x2aaaaaab
mov dword [ebp - 0x90], ecx
mov ecx, dword [ebp - 0xc4]
sub ecx, esi
imul ecx
lea ecx, [ebp - 0xa4]
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp eax, 5
jbe 0x4f61e3
lea ecx, [esi + 0x3c]
cmp byte [ecx + 8], 0
je 0x4f61fa
mov eax, dword [ecx]
mov esi, eax
mov ecx, dword [ecx + 4]
mov edx, eax
mov dword [ebp - 0x17c], ecx
jmp 0x4f6202
xor eax, eax
xor ecx, ecx
xor esi, esi
xor edx, edx
mov dword [ebp - 0x190], 0
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
movups xmmword [ebp - 0x1a0], xmm0
cmp esi, ecx
jne 0x4f6237
mov dword [ebp - 0x18c], 0xf
mov byte [ebp - 0x1a0], 0
jmp 0x4f6246
sub ecx, edx
push ecx
push eax
lea ecx, [ebp - 0x1a0]
call fcn.0040f680
lea eax, [ebp - 0x1a0]
push eax
lea ecx, [ebp - 0x2c]
call fcn.00416720
mov ecx, dword [ebp - 0x18c]
cmp ecx, 0xf
jbe 0x4f628f
mov edx, dword [ebp - 0x1a0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f6285
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov esi, dword [ebp - 0x1c]
test esi, esi
je 0x4f554a
mov ecx, dword [ebp - 0x18]
lea eax, [ebp - 0x2c]
cmp ecx, 0xf
cmova eax, dword [ebp - 0x2c]
cmp byte [eax], 0x30
jne 0x4f554a
jmp 0x4f5524
mov dword [ebp - 0x94], eax
lea eax, [ebp - 0x98]
push eax
call fcn.0053e292
mov ecx, dword [ebp - 0x18]
add esp, 4
mov esi, edx
mov edi, eax
mov dword [ebp - 0x17c], esi
cmp ecx, 0xf
jbe 0x4f630e
mov esi, dword [ebp - 0x2c]
inc ecx
mov eax, esi
cmp ecx, 0x1000
jb 0x4f62fe
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push esi
call fcn.00524a57
mov esi, dword [ebp - 0x17c]
add esp, 8
mov ecx, dword [ebp - 0x30]
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0xf
mov byte [ebp - 0x2c], 0
cmp ecx, 0xf
jbe 0x4f6354
mov edx, dword [ebp - 0x44]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f634a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov ecx, dword [ebp - 0x60]
mov dword [ebp - 0x34], 0
mov dword [ebp - 0x30], 0xf
mov byte [ebp - 0x44], 0
cmp ecx, 0xf
jbe 0x4f639a
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f6390
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
cmp ecx, 0xf
jbe 0x4f63e0
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f63d6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
lea ecx, [ebp - 0xc8]
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0xf
mov byte [ebp - 0x5c], 0
call fcn.00414800
lea ecx, [ebp - 0x100]
call fcn.00414800
lea ecx, [ebp - 0x138]
call fcn.00414800
lea ecx, [ebp - 0x178]
call fcn.00447cb0
mov ecx, dword [ebp - 0x144]
cmp ecx, 0xf
jbe 0x4f6458
mov edx, dword [ebp - 0x158]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4f644e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x4f6565
push ecx
push edx
call fcn.00524a57
add esp, 8
mov eax, edi
mov edx, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0052450f
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push str.invalid_stoi_argument
call fcn.00521fd6
push str.stoi_argument_out_of_range
call fcn.00522016
push str.invalid_stoi_argument
call fcn.00521fd6
push str.stoi_argument_out_of_range
call fcn.00522016
push str.invalid_stoi_argument
call fcn.00521fd6
push str.stoi_argument_out_of_range
call fcn.00522016
call fcn.0053ce3a
push str.invalid_stoi_argument
call fcn.00521fd6
push str.stoi_argument_out_of_range
call fcn.00522016
push str.invalid_stoi_argument
call fcn.00521fd6
push str.stoi_argument_out_of_range
call fcn.00522016
push str.invalid_stoi_argument
call fcn.00521fd6
push str.stoi_argument_out_of_range
call fcn.00522016
push str.invalid_stoi_argument
call fcn.00521fd6
push str.stoi_argument_out_of_range
call fcn.00522016
push str.invalid_stoi_argument
call fcn.00521fd6
push str.stoi_argument_out_of_range
call fcn.00522016
call fcn.0053ce3a
push str.invalid_stoi_argument
call fcn.00521fd6
push str.stoi_argument_out_of_range
call fcn.00522016
push str.stoi_argument_out_of_range
call fcn.00522016
call fcn.0053ce3a
push str.invalid_unordered_map_K__T__key
call fcn.00522016
push str.stoi_argument_out_of_range
call fcn.00522016
push str.stoi_argument_out_of_range
call fcn.00522016
call fcn.0053ce3a
int3