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

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], r8
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x360]
sub rsp, 0x460
mov rax, qword [0x140071100]
xor rax, rsp
mov qword [rbp + 0x350], rax
mov r14, r9
mov qword [rsp + 0x48], r9
mov rdi, r8
mov rbx, rdx
mov r15, rcx
mov qword [rsp + 0x50], rcx
mov qword [rbp + 0x10], rcx
mov rsi, qword [rbp + 0x3c0]
mov qword [rsp + 0x58], rsi
xor r12d, r12d
mov dword [rsp + 0x30], r12d
xorps xmm0, xmm0
movups xmmword [rbp + 0x118], xmm0
mov qword [rbp + 0x128], r12
mov qword [rbp + 0x130], r12
lea r8d, [r12 + 2]
lea rdx, [0x140060600]
lea rcx, [rbp + 0x118]
call fcn.140004330
nop
xorps xmm0, xmm0
movups xmmword [rbp + 0xf8], xmm0
mov qword [rbp + 0x108], r12
mov qword [rbp + 0x110], r12
lea r8d, [r12 + 6]
lea rdx, str.__n_v_f_r_t
lea rcx, [rbp + 0xf8]
call fcn.140004330
nop
lea rax, [0x1400694c0]
mov qword [rbp + 0x180], rax
lea rax, [rbp + 0x180]
mov qword [rbp + 0x1b8], rax
cmp byte [rsi + 1], r12b
je 0x1400144ed
lea rax, fcn.140017e70
mov qword [rbp - 0x70], rax
lea rax, [rbp - 0x70]
mov qword [rbp - 0x38], rax
mov qword [rbp + 0x1f8], r12
lea rdx, [rbp + 0x1c0]
lea rcx, [rbp - 0x70]
call fcn.140017e70
mov rcx, rax
mov qword [rbp + 0x1f8], rax
mov r8, qword [rbp - 0x38]
test r8, r8
je 0x1400143e9
mov rax, qword [r8]
lea rcx, [rbp - 0x70]
cmp r8, rcx
setne dl
mov rcx, r8
call qword [rax + 0x20]
mov r8d, r12d
mov qword [rbp - 0x38], r12
mov rcx, qword [rbp + 0x1f8]
mov r9, qword [rbp + 0x1b8]
test r9, r9
je 0x140014458
lea rax, [rbp + 0x180]
cmp r9, rax
jne 0x14001444a
mov rax, qword [r9]
lea rdx, [rbp - 0x70]
mov rcx, r9
call qword [rax + 8]
mov r8, rax
mov qword [rbp - 0x38], rax
mov rcx, qword [rbp + 0x1b8]
test rcx, rcx
je 0x140014441
mov rax, qword [rcx]
lea rdx, [rbp + 0x180]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp - 0x38]
mov rcx, qword [rbp + 0x1f8]
jmp 0x140014451
mov rcx, qword [rbp + 0x1f8]
jmp 0x140014458
mov r8, r9
mov qword [rbp - 0x38], r9
mov qword [rbp + 0x1b8], r12
test rcx, rcx
je 0x1400144d5
lea rax, [rbp + 0x1c0]
cmp rcx, rax
jne 0x1400144a8
mov rax, qword [rcx]
lea rdx, [rbp + 0x180]
call qword [rax + 8]
mov qword [rbp + 0x1b8], rax
mov rcx, qword [rbp + 0x1f8]
test rcx, rcx
je 0x1400144a2
mov rax, qword [rcx]
lea rdx, [rbp + 0x1c0]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp - 0x38]
jmp 0x1400144af
mov r8, qword [rbp - 0x38]
jmp 0x1400144b9
mov qword [rbp + 0x1b8], rcx
mov rcx, r12
mov qword [rbp + 0x1f8], rcx
test rcx, rcx
je 0x1400144d5
mov rax, qword [rcx]
lea rdx, [rbp + 0x1c0]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp - 0x38]
test r8, r8
je 0x1400144ed
mov rax, qword [r8]
lea rcx, [rbp - 0x70]
cmp r8, rcx
setne dl
mov rcx, r8
call qword [rax + 0x20]
lea rax, [rbp + 0xf8]
mov qword [rbp + 0x80], rax
lea rax, [0x140060bb0]
mov qword [rbp + 0x140], rax
lea rax, [rbp + 0x140]
mov qword [rbp + 0x178], rax
cmp byte [rsi], 0
jne 0x140014682
lea rax, fcn.140017e40
mov qword [rbp - 0x30], rax
lea rax, [rbp - 0x30]
mov qword [rbp + 8], rax
mov qword [rbp + 0x238], r12
lea rdx, [rbp + 0x200]
lea rcx, [rbp - 0x30]
call fcn.140017e40
mov rcx, rax
mov qword [rbp + 0x238], rax
mov r8, qword [rbp + 8]
test r8, r8
je 0x14001457e
mov rax, qword [r8]
lea rcx, [rbp - 0x30]
cmp r8, rcx
setne dl
mov rcx, r8
call qword [rax + 0x20]
mov r8, r12
mov qword [rbp + 8], r12
mov rcx, qword [rbp + 0x238]
mov r9, qword [rbp + 0x178]
test r9, r9
je 0x1400145ed
lea rax, [rbp + 0x140]
cmp r9, rax
jne 0x1400145df
mov rax, qword [r9]
lea rdx, [rbp - 0x30]
mov rcx, r9
call qword [rax + 8]
mov r8, rax
mov qword [rbp + 8], rax
mov rcx, qword [rbp + 0x178]
test rcx, rcx
je 0x1400145d6
mov rax, qword [rcx]
lea rdx, [rbp + 0x140]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp + 8]
mov rcx, qword [rbp + 0x238]
jmp 0x1400145e6
mov rcx, qword [rbp + 0x238]
jmp 0x1400145ed
mov r8, r9
mov qword [rbp + 8], r9
mov qword [rbp + 0x178], r12
test rcx, rcx
je 0x14001466a
lea rax, [rbp + 0x200]
cmp rcx, rax
jne 0x14001463d
mov rax, qword [rcx]
lea rdx, [rbp + 0x140]
call qword [rax + 8]
mov qword [rbp + 0x178], rax
mov rcx, qword [rbp + 0x238]
test rcx, rcx
je 0x140014637
mov rax, qword [rcx]
lea rdx, [rbp + 0x200]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp + 8]
jmp 0x140014644
mov r8, qword [rbp + 8]
jmp 0x14001464e
mov qword [rbp + 0x178], rcx
mov rcx, r12
mov qword [rbp + 0x238], rcx
test rcx, rcx
je 0x14001466a
mov rax, qword [rcx]
lea rdx, [rbp + 0x200]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp + 8]
test r8, r8
je 0x140014682
mov rax, qword [r8]
lea rcx, [rbp - 0x30]
cmp r8, rcx
setne dl
mov rcx, r8
call qword [rax + 0x20]
lea rax, [rbp + 0x80]
mov qword [rbp - 0x80], rax
lea rax, [rbp + 0x180]
mov qword [rbp - 0x78], rax
mov r13, r12
mov qword [rsp + 0x40], r12
mov qword [rbp + 0x88], r12
xorps xmm0, xmm0
movups xmmword [r15], xmm0
mov qword [r15], r12
mov qword [r15 + 8], r12
mov qword [r15 + 0x10], r12
mov r12d, 1
mov dword [rsp + 0x30], r12d
xor eax, eax
movups xmmword [rbp + 0xa0], xmm0
movdqu xmmword [rbp + 0x90], xmm0
mov qword [rbp + 0xa0], rax
mov qword [rbp + 0xa8], rax
mov qword [rbp + 0xb0], rax
lea ecx, [rax + 0x10]
call fcn.140019d18
mov qword [rax + 8], 0
mov qword [rbp + 0x90], rax
lea rcx, [rbp + 0x90]
mov qword [rax], rcx
cmp rbx, rdi
je 0x1400157b1
cmp byte [rbx], 0
je 0x1400157b1
cmp rbx, rdi
je 0x1400157b1
mov rdx, qword [rbp + 0x80]
mov r9, qword [rdx + 0x18]
mov r8, qword [rdx + 0x10]
nop word [rax + rax]
movzx ecx, byte [rbx]
mov rdx, qword [rbp + 0x80]
cmp r9, 0xf
jbe 0x14001475b
mov rax, qword [rdx]
add rax, r8
mov rdx, qword [rdx]
jmp 0x14001475f
lea rax, [rdx + r8]
cmp rdx, rax
je 0x14001477a
cmp byte [rdx], cl
je 0x140014772
inc rdx
cmp rdx, rax
jne 0x140014764
jmp 0x14001477a
inc rbx
cmp rbx, rdi
jne 0x140014740
cmp rbx, rdi
je 0x1400157b1
movzx eax, byte [rbx]
test al, al
je 0x1400157b1
cmp al, 0x2f
jne 0x140014886
inc rbx
cmp rbx, rdi
jne 0x1400147a6
mov rbx, rdi
jmp 0x14001486f
cmp byte [rbx], 0x2f
jne 0x1400147ca
lea rcx, [rbx + 1]
mov r8b, 0xa
mov rdx, rdi
call fcn.140019790
mov rbx, rax
cmp rax, rdi
jne 0x1400147ca
mov rbx, rdi
jmp 0x14001486f
cmp byte [rbx], 0x2a
jne 0x14001486f
lea rcx, [rbp + 0x118]
mov r14, qword [rbp + 0x128]
cmp qword [rbp + 0x130], 0xf
jbe 0x1400147f7
mov r15, qword [rbp + 0x118]
add r14, r15
jmp 0x140014801
add r14, rcx
lea r15, [rbp + 0x118]
lea rsi, [rbx + 1]
mov rbx, rdi
sub r14, r15
mov rax, rdi
sub rax, rsi
cmp rax, r14
jl 0x14001485a
mov r12, rbx
sub r12, r14
mov r8, r14
mov rdx, rsi
mov rcx, r15
call fcn.140042420
test eax, eax
sete al
test al, al
jne 0x140014852
cmp rsi, r12
je 0x140014855
inc rsi
mov r8, r14
mov rdx, rsi
mov rcx, r15
call fcn.140042420
test eax, eax
sete al
test al, al
je 0x140014833
mov rbx, rsi
mov r12d, dword [rsp + 0x30]
mov rax, rdi
sub rax, rbx
cmp rax, 2
jg 0x14001486b
mov rbx, rdi
jmp 0x14001486f
add rbx, 2
cmp rbx, rdi
je 0x140015911
cmp byte [rbx], 0
je 0x140015911
jmp 0x140015798
cmp al, 0x7d
je 0x1400156b6
cmp al, 0x22
jne 0x1400148e6
mov rsi, rbx
nop word [rax + rax]
lea rcx, [rsi + 1]
mov r8b, 0x22
mov rdx, rdi
call fcn.140019790
mov rsi, rax
cmp rax, rdi
je 0x1400148d8
dec rax
cmp rax, rbx
je 0x1400148cd
nop
cmp byte [rax], 0x5c
jne 0x1400148cd
dec rax
cmp rax, rbx
jne 0x1400148c0
mov rcx, rsi
sub rcx, rax
test cl, 1
je 0x1400148a0
cmp rsi, rdi
je 0x140015932
jmp 0x140014995
mov rcx, rbx
mov r11, qword [rbp + 0x110]
mov r9, qword [rbp + 0x108]
mov r10, qword [rbp + 0xf8]
nop
inc rcx
lea rax, [rbp + 0xf8]
cmp r11, 0xf
jbe 0x140014919
lea rax, [r9 + r10]
mov r8, r10
jmp 0x140014923
add rax, r9
lea r8, [rbp + 0xf8]
mov rsi, rcx
cmp rcx, rdi
je 0x140014954
nop dword [rax + rax]
mov rcx, r8
cmp r8, rax
je 0x14001494c
movzx edx, byte [rsi]
nop dword [rax + rax]
cmp dl, byte [rcx]
je 0x140014954
inc rcx
cmp rcx, rax
jne 0x140014940
inc rsi
cmp rsi, rdi
jne 0x140014930
mov rcx, rsi
cmp rsi, rdi
je 0x140015b00
lea rax, [rsi - 1]
cmp rax, rbx
je 0x14001497d
nop dword [rax]
cmp byte [rax], 0x5c
jne 0x14001497d
dec rax
cmp rax, rbx
jne 0x140014970
mov rdx, rsi
sub rdx, rax
test dl, 1
je 0x140014900
cmp rsi, rdi
je 0x140015b00
cmp byte [rbx], 0x22
jne 0x14001499d
inc rbx
mov r8, rsi
mov rdx, rbx
lea rcx, [rbp + 0xd8]
call fcn.1400169f0
nop
mov rcx, qword [rbp + 0x178]
test rcx, rcx
je 0x140015afa
mov rax, qword [rcx]
lea rdx, [rbp + 0xd8]
call qword [rax + 0x10]
xor eax, eax
cmp byte [rsi], 0x22
sete al
lea r8, [rsi + rax]
mov qword [rbp + 0x40], r8
cmp r8, rdi
je 0x140015ad9
mov r9, qword [rbp + 0x80]
mov r11, qword [r9 + 0x18]
mov r10, qword [r9 + 0x10]
movzx ecx, byte [r8]
cmp r11, 0xf
jbe 0x140014a0a
mov rax, qword [r9]
add rax, r10
mov rdx, qword [r9]
jmp 0x140014a11
lea rax, [r9 + r10]
mov rdx, r9
cmp rdx, rax
je 0x140014a2c
cmp byte [rdx], cl
je 0x140014a24
inc rdx
cmp rdx, rax
jne 0x140014a16
jmp 0x140014a2c
inc r8
cmp r8, rdi
jne 0x1400149f5
mov qword [rbp + 0x40], r8
lea r8, [rbp + 0x3b0]
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 0x80]
call fcn.140015d70
test al, al
jne 0x140014a99
mov rdx, qword [rbp + 0xf0]
cmp rdx, 0xf
jbe 0x140014a89
inc rdx
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140014a84
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015ab2
call fcn.140019bf0
mov rdi, qword [rbp + 0x3b0]
mov rbx, qword [rbp + 0x40]
jmp 0x140015798
mov rbx, qword [rbp + 0x40]
mov rdi, qword [rbp + 0x3b0]
cmp rbx, rdi
je 0x140015ab8
cmp byte [rbx], 0x2f
jne 0x140014c24
mov r13, qword [rbp + 0x80]
nop dword [rax]
lea rax, [rbx + 1]
mov rbx, rax
cmp rax, rdi
jne 0x140014ad4
mov rbx, rdi
jmp 0x140014b9f
cmp byte [rax], 0x2f
jne 0x140014aff
lea rcx, [rax + 1]
mov r8b, 0xa
mov rdx, rdi
call fcn.140019790
mov rbx, rax
mov r13, qword [rbp + 0x80]
cmp rax, rdi
jne 0x140014aff
mov rbx, rdi
jmp 0x140014b9f
cmp byte [rbx], 0x2a
jne 0x140014b9f
lea rcx, [rbp + 0x118]
mov r14, qword [rbp + 0x128]
cmp qword [rbp + 0x130], 0xf
jbe 0x140014b2c
mov r15, qword [rbp + 0x118]
add r14, r15
jmp 0x140014b36
add r14, rcx
lea r15, [rbp + 0x118]
lea rsi, [rbx + 1]
mov rbx, rdi
sub r14, r15
mov rax, rdi
sub rax, rsi
cmp rax, r14
jl 0x140014b8a
mov r12, rbx
sub r12, r14
mov r8, r14
mov rdx, rsi
mov rcx, r15
call fcn.140042420
test eax, eax
sete al
test al, al
jne 0x140014b87
cmp rsi, r12
je 0x140014b8a
inc rsi
mov r8, r14
mov rdx, rsi
mov rcx, r15
call fcn.140042420
test eax, eax
sete al
test al, al
je 0x140014b68
mov rbx, rsi
mov rax, rdi
sub rax, rbx
cmp rax, 2
jg 0x140014b9b
mov rbx, rdi
jmp 0x140014b9f
add rbx, 2
cmp rbx, rdi
je 0x1400159b6
movzx ecx, byte [rbx]
cmp cl, 0x7d
je 0x1400159b6
cmp rbx, rdi
je 0x140015995
mov r9, qword [r13 + 0x18]
mov r8, qword [r13 + 0x10]
cmp r9, 0xf
jbe 0x140014bd8
mov rax, qword [r13]
add rax, r8
mov rdx, qword [r13]
jmp 0x140014bdf
lea rax, [r8 + r13]
mov rdx, r13
cmp rdx, rax
je 0x140014bf4
cmp byte [rdx], cl
je 0x140014c86
inc rdx
cmp rdx, rax
jne 0x140014be4
cmp rbx, rdi
je 0x140015995
movzx eax, byte [rbx]
cmp al, 0x7d
je 0x140015995
cmp al, 0x2f
je 0x140014ac0
mov r15, qword [rsp + 0x50]
mov r13, qword [rsp + 0x40]
mov r12d, dword [rsp + 0x30]
mov r14, qword [rsp + 0x48]
movzx eax, byte [rbx]
cmp al, 0x7b
je 0x1400154b8
cmp rbx, rdi
je 0x140015a8b
cmp al, 0x22
jne 0x140014c9a
mov rsi, rbx
nop
lea rcx, [rsi + 1]
mov r8b, 0x22
mov rdx, rdi
call fcn.140019790
mov rsi, rax
cmp rax, rdi
je 0x140014c78
dec rax
cmp rax, rbx
je 0x140014c6d
nop
cmp byte [rax], 0x5c
jne 0x140014c6d
dec rax
cmp rax, rbx
jne 0x140014c60
mov rcx, rsi
sub rcx, rax
test cl, 1
je 0x140014c40
cmp rsi, rdi
je 0x140015953
jmp 0x140014d55
inc rbx
cmp rbx, rdi
je 0x140015995
movzx ecx, byte [rbx]
jmp 0x140014bc5
mov rcx, rbx
mov r11, qword [rbp + 0x110]
mov r9, qword [rbp + 0x108]
mov r10, qword [rbp + 0xf8]
nop dword [rax]
nop word [rax + rax]
inc rcx
lea rax, [rbp + 0xf8]
cmp r11, 0xf
jbe 0x140014cd9
lea rax, [r9 + r10]
mov r8, r10
jmp 0x140014ce3
add rax, r9
lea r8, [rbp + 0xf8]
mov rsi, rcx
cmp rcx, rdi
je 0x140014d14
nop dword [rax + rax]
mov rcx, r8
cmp r8, rax
je 0x140014d0c
movzx edx, byte [rsi]
nop dword [rax + rax]
cmp dl, byte [rcx]
je 0x140014d14
inc rcx
cmp rcx, rax
jne 0x140014d00
inc rsi
cmp rsi, rdi
jne 0x140014cf0
mov rcx, rsi
cmp rsi, rdi
je 0x140015a6a
lea rax, [rsi - 1]
cmp rax, rbx
je 0x140014d3d
nop dword [rax]
cmp byte [rax], 0x5c
jne 0x140014d3d
dec rax
cmp rax, rbx
jne 0x140014d30
mov rdx, rsi
sub rdx, rax
test dl, 1
je 0x140014cc0
cmp rsi, rdi
je 0x140015a6a
cmp rsi, rdi
je 0x140015a49
cmp byte [rbx], 0x22
jne 0x140014d66
inc rbx
cmp rbx, rdi
je 0x140015a28
mov r8, rsi
mov rdx, rbx
lea rcx, [rbp + 0xb8]
call fcn.1400169f0
nop
mov rcx, qword [rbp + 0x178]
test rcx, rcx
je 0x140015a22
mov rax, qword [rcx]
lea rdx, [rbp + 0xb8]
call qword [rax + 0x10]
xor eax, eax
cmp byte [rsi], 0x22
sete al
add rax, rsi
mov qword [rbp + 0x40], rax
lea r8, [rbp + 0x3b0]
lea rdx, [rbp + 0x40]
lea rcx, [rbp - 0x80]
call fcn.140015d70
test al, al
jne 0x140014e7d
mov rdx, qword [rbp + 0xd0]
cmp rdx, 0xf
jbe 0x140014e0b
inc rdx
mov rcx, qword [rbp + 0xb8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140014e06
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400159fb
call fcn.140019bf0
mov qword [rbp + 0xc8], 0
mov qword [rbp + 0xd0], 0xf
mov byte [rbp + 0xb8], 0
mov rdx, qword [rbp + 0xf0]
cmp rdx, 0xf
jbe 0x140014a89
inc rdx
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140014e68
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400159d7
call fcn.140019bf0
mov rdi, qword [rbp + 0x3b0]
mov rbx, qword [rbp + 0x40]
jmp 0x140015798
lea rcx, [rbp + 0xd8]
cmp qword [rbp + 0xf0], 0xf
seta dil
cmova rcx, qword [rbp + 0xd8]
mov rbx, qword [rbp + 0xe8]
cmp rbx, 8
jne 0x140014eb8
mov r8, rbx
lea rdx, str.include
call fcn.140042420
test eax, eax
je 0x140014eeb
lea rcx, [rbp + 0xd8]
test dil, dil
cmovne rcx, qword [rbp + 0xd8]
cmp rbx, 5
jne 0x140015341
mov r8, rbx
lea rdx, str.base
call fcn.140042420
test eax, eax
jne 0x140015341
mov rsi, qword [rsp + 0x58]
cmp byte [rsi + 2], 0
jne 0x140015462
lea r8, [rbp + 0xb8]
cmp qword [rbp + 0xd0], 0xf
cmova r8, qword [rbp + 0xb8]
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
mov rdi, qword [rbp + 0xc8]
test rdi, rdi
je 0x140014f59
movabs r15, 0x100000001b3
nop dword [rax]
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
xor rdx, rax
imul rdx, r15
inc rcx
cmp rcx, rdi
jb 0x140014f40
mov r15, qword [rsp + 0x50]
mov rcx, qword [r14 + 0x30]
and rcx, rdx
mov rdx, qword [r14 + 0x18]
mov rax, rcx
add rax, rax
mov rbx, qword [rdx + rax*8 + 8]
cmp rbx, qword [r14 + 8]
je 0x140014fe6
add rcx, rcx
mov rsi, qword [rdx + rcx*8]
cmp qword [rbp + 0xd0], 0xf
seta r14b
nop dword [rax + rax]
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0xf
jbe 0x140014fa2
mov rdx, qword [rdx]
lea rcx, [rbp + 0xb8]
test r14b, r14b
cmovne rcx, qword [rbp + 0xb8]
cmp rdi, rax
jne 0x140014fc5
mov r8, rdi
call fcn.140042420
test eax, eax
je 0x140014fd0
cmp rbx, rsi
je 0x140014fdc
mov rbx, qword [rbx + 8]
jmp 0x140014f90
mov r14, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x58]
jmp 0x140014fe8
mov r14, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x58]
xor ebx, ebx
test rbx, rbx
jne 0x140014ff1
mov rbx, qword [r14 + 8]
cmp rbx, qword [r14 + 8]
jne 0x140015462
lea r8, [rbp + 0xb8]
lea rdx, [rbp + 0x20]
mov rcx, r14
call fcn.140016ce0
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp + 0x240]
call fcn.140041fe0
nop
lea rdx, [rbp + 0xb8]
lea rcx, [rsp + 0x60]
call fcn.1400032d0
nop
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x240]
call fcn.140016410
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x140015084
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001507f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400159dd
call fcn.140019bf0
xorps xmm0, xmm0
movups xmmword [rbp + 0x60], xmm0
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x78], 0xf
mov byte [rbp + 0x60], 0
or r12d, 4
mov dword [rsp + 0x30], r12d
mov r8d, 2
lea rcx, [rbp + 0x240]
call fcn.140013e70
lea rdx, [rsp + 0x60]
lea rcx, [rbp + 0x240]
call fcn.140013d90
mov rdx, qword [rax + 8]
add rdx, qword [rax]
xor r8d, r8d
lea rcx, [rbp + 0x60]
call fcn.140012880
mov rax, qword [rbp + 0x70]
test rax, rax
jne 0x1400150f1
xor r12d, r12d
mov dword [rsp + 0x30], r12d
jmp 0x14001512a
xor r8d, r8d
lea rcx, [rbp + 0x240]
call fcn.140013e70
lea rdx, [rbp + 0x60]
cmp qword [rbp + 0x78], 0xf
cmova rdx, qword [rbp + 0x60]
mov r8, qword [rbp + 0x70]
lea rcx, [rbp + 0x240]
call fcn.140014060
xor r12d, r12d
mov dword [rsp + 0x30], r12d
mov rax, qword [rbp + 0x70]
xorps xmm0, xmm0
xor ecx, ecx
movups xmmword [rbp + 0x48], xmm0
mov qword [rbp + 0x58], rcx
lea rcx, [rbp + 0x60]
cmp qword [rbp + 0x78], 0xf
jbe 0x14001514c
mov rdx, qword [rbp + 0x60]
lea r8, [rax + rdx]
jmp 0x140015154
lea r8, [rcx + rax]
lea rdx, [rbp + 0x60]
mov qword [rsp + 0x20], rsi
mov r9, r14
lea rcx, [rbp + 0x48]
call fcn.1400142a0
nop
mov rbx, qword [rbp + 0x48]
mov rdi, qword [rbp + 0x50]
cmp rbx, rdi
je 0x1400151cd
test r13, r13
setne sil
nop word [rax + rax]
test sil, sil
je 0x14001519f
mov rax, qword [rbx]
mov qword [rbx], r12
mov qword [rsp + 0x38], rax
lea rdx, [rsp + 0x38]
mov rcx, r13
call fcn.140013c80
jmp 0x1400151c4
mov rdx, qword [r15 + 8]
cmp rdx, qword [r15 + 0x10]
je 0x1400151b9
mov rax, qword [rbx]
mov qword [rbx], r12
mov qword [rdx], rax
add qword [r15 + 8], 8
jmp 0x1400151c4
mov r8, rbx
mov rcx, r15
call fcn.140017a40
add rbx, 8
cmp rbx, rdi
jne 0x140015180
lea rdx, [rbp + 0xb8]
mov rcx, r14
call fcn.140016b20
nop
mov rbx, qword [rbp + 0x48]
test rbx, rbx
je 0x140015269
mov rsi, qword [rbp + 0x50]
cmp rbx, rsi
je 0x14001521d
mov rdi, qword [rbx]
test rdi, rdi
je 0x140015210
mov rcx, rdi
call fcn.1400105f0
mov edx, 0xa0
mov rcx, rdi
call fcn.140019bf0
add rbx, 8
cmp rbx, rsi
jne 0x1400151f3
mov rbx, qword [rbp + 0x48]
mov rax, qword [rbp + 0x58]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140015255
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400159e3
mov rcx, rbx
call fcn.140019bf0
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x48], xmm0
mov qword [rbp + 0x58], r12
mov rdx, qword [rbp + 0x78]
cmp rdx, 0xf
jbe 0x1400152a4
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001529f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400159e9
call fcn.140019bf0
mov qword [rbp + 0x70], r12
mov qword [rbp + 0x78], 0xf
mov byte [rbp + 0x60], 0
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x240], rax
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x23c], edx
lea rcx, [rbp + 0x250]
call fcn.140002ec0
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x240], rax
mov rax, qword [rbp + 0x240]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx + 0x23c], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x2f0], rax
lea rcx, [rbp + 0x2f0]
call fcn.1400186d4
nop
jmp 0x140015462
test r13, r13
je 0x140015a01
movups xmm0, xmmword [rbp + 0xb8]
movups xmmword [rsp + 0x60], xmm0
movups xmm1, xmmword [rbp + 0xc8]
movups xmmword [rsp + 0x70], xmm1
xor r12d, r12d
mov qword [rbp + 0xc8], r12
mov qword [rbp + 0xd0], 0xf
mov byte [rbp + 0xb8], r12b
lea rax, [rsp + 0x60]
mov qword [rsp + 0x38], rax
movups xmm0, xmmword [rbp + 0xd8]
movups xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [rbp + 0xe8]
movups xmmword [rbp + 0x70], xmm1
mov qword [rbp + 0xe8], r12
mov qword [rbp + 0xf0], 0xf
mov byte [rbp + 0xd8], r12b
lea rax, [rbp + 0x60]
mov qword [rbp + 0x138], rax
lea rcx, [r13 + 0x20]
lea r9, [rsp + 0x60]
lea r8, [rbp + 0x60]
lea rdx, [rbp + 0x30]
call fcn.140017010
nop
mov rdx, qword [rbp + 0x78]
cmp rdx, 0xf
jbe 0x140015414
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001540f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400159ef
call fcn.140019bf0
mov qword [rbp + 0x70], r12
mov qword [rbp + 0x78], 0xf
mov byte [rbp + 0x60], 0
mov rdx, qword [rsp + 0x78]
cmp rdx, 0xf
jbe 0x140015462
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001545c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400159f5
call fcn.140019bf0
nop
mov rdx, qword [rbp + 0xd0]
cmp rdx, 0xf
jbe 0x1400154a3
inc rdx
mov rcx, qword [rbp + 0xb8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001549e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400159fb
call fcn.140019bf0
mov rdi, qword [rbp + 0x3b0]
mov rbx, qword [rbp + 0x40]
mov r12d, dword [rsp + 0x30]
jmp 0x14001566b
test r13, r13
je 0x140015593
mov rdx, qword [rbp + 0xa8]
mov r8, qword [rbp + 0xb0]
lea eax, [r8 + rdx]
mov rcx, qword [rbp + 0xa0]
test al, 1
jne 0x14001550b
lea rax, [r8 + 2]
shr rax, 1
cmp rcx, rax
ja 0x14001550b
lea rcx, [rbp + 0x90]
call fcn.140017590
mov r8, qword [rbp + 0xb0]
mov rdx, qword [rbp + 0xa8]
mov rcx, qword [rbp + 0xa0]
lea rax, [rcx*2 - 1]
and rdx, rax
mov qword [rbp + 0xa8], rdx
lea rsi, [r8 + rdx]
mov r14, rsi
shr r14, 1
lea rax, [rcx - 1]
and rax, r14
lea r15, [rax*8]
mov rdx, qword [rbp + 0x98]
cmp qword [rdx + r15], 0
jne 0x14001556a
mov ecx, 0x10
call fcn.140019d18
mov rcx, rax
mov rax, qword [rbp + 0x98]
mov qword [rax + r15], rcx
mov rcx, qword [rbp + 0xa0]
mov rdx, qword [rbp + 0x98]
lea rax, [rcx - 1]
and rax, r14
and esi, 1
mov rax, qword [rdx + rax*8]
lea rcx, [rax + rsi*8]
mov rax, r13
xor r13d, r13d
mov qword [rbp + 0x88], r13
mov qword [rcx], rax
inc qword [rbp + 0xb0]
mov ecx, 0xa0
call fcn.140019d18
mov rsi, rax
mov qword [rbp + 0x18], rax
xor edx, edx
mov r8d, 0xa0
mov rcx, rax
call fcn.140041fe0
mov rcx, rsi
call fcn.1400138b0
mov r14, rax
or r12d, 2
mov dword [rsp + 0x30], r12d
mov qword [rsp + 0x40], rax
mov qword [rbp + 0x88], rax
test r13, r13
je 0x1400155ee
mov rcx, r13
call fcn.1400105f0
mov edx, 0xa0
mov rcx, r13
call fcn.140019bf0
movups xmm0, xmmword [rbp + 0xd8]
movups xmmword [rbp + 0x60], xmm0
movups xmm1, xmmword [rbp + 0xe8]
movups xmmword [rbp + 0x70], xmm1
mov qword [rbp + 0xe8], 0
mov qword [rbp + 0xf0], 0xf
mov byte [rbp + 0xd8], 0
lea rdx, [rbp + 0x60]
mov rcx, r14
call fcn.1400048d0
mov rdx, qword [rbp + 0x78]
cmp rdx, 0xf
jbe 0x140015668
inc rdx
mov rcx, qword [rbp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140015663
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015aac
call fcn.140019bf0
inc rbx
mov rax, qword [rbp + 0xf0]
cmp rax, 0xf
jbe 0x140015798
lea rdx, [rax + 1]
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400156ac
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015ab2
call fcn.140019bf0
jmp 0x140015798
test r13, r13
je 0x140015b21
mov rcx, qword [rbp + 0xb0]
test rcx, rcx
je 0x140015741
mov rdx, qword [rbp + 0xa8]
dec rcx
add rdx, rcx
mov rcx, rdx
shr rcx, 1
mov rax, qword [rbp + 0xa0]
dec rax
and rcx, rax
and edx, 1
mov rax, qword [rbp + 0x98]
mov rcx, qword [rax + rcx*8]
mov rsi, qword [rcx + rdx*8]
xor r14d, r14d
mov qword [rcx + rdx*8], r14
mov qword [rbp + 0x138], rsi
lea rcx, [rbp + 0x90]
call fcn.140016600
mov qword [rbp + 0x88], r14
mov qword [rsp + 0x38], r13
lea rdx, [rsp + 0x38]
mov rcx, rsi
call fcn.140013c80
mov rax, rsi
mov qword [rsp + 0x40], rax
mov qword [rbp + 0x88], rax
jmp 0x140015795
mov rdx, qword [r15 + 8]
cmp rdx, qword [r15 + 0x10]
je 0x140015757
xor esi, esi
mov qword [rdx], r13
add qword [r15 + 8], 8
jmp 0x14001576d
lea r8, [rbp + 0x88]
mov rcx, r15
call fcn.140017a40
mov rsi, qword [rbp + 0x88]
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rbp + 0x88], rax
test rsi, rsi
je 0x140015795
mov rcx, rsi
call fcn.1400105f0
mov edx, 0xa0
mov rcx, rsi
call fcn.140019bf0
inc rbx
mov r15, qword [rsp + 0x50]
mov r13, qword [rsp + 0x40]
cmp rbx, rdi
je 0x1400157b1
mov r14, qword [rsp + 0x48]
jmp 0x140014714
test r13, r13
jne 0x140015974
cmp qword [rbp + 0xb0], r13
jne 0x140015974
lea rcx, [rbp + 0x90]
call fcn.140016300
nop
test r13, r13
je 0x1400157ef
mov rcx, r13
call fcn.1400105f0
mov edx, 0xa0
mov rcx, r13
call fcn.140019bf0
nop
mov rcx, qword [rbp + 0x178]
test rcx, rcx
je 0x140015819
mov rax, qword [rcx]
lea rdx, [rbp + 0x140]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0x178], 0
mov rcx, qword [rbp + 0x1b8]
test rcx, rcx
je 0x140015843
mov rax, qword [rcx]
lea rdx, [rbp + 0x180]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0x1b8], 0
mov rdx, qword [rbp + 0x110]
cmp rdx, 0xf
jbe 0x140015884
inc rdx
mov rcx, qword [rbp + 0xf8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001587f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140015b42
call fcn.140019bf0
mov qword [rbp + 0x108], 0
mov qword [rbp + 0x110], 0xf
mov byte [rbp + 0xf8], 0
mov rdx, qword [rbp + 0x130]
cmp rdx, 0xf
jbe 0x1400158de
inc rdx
mov rcx, qword [rbp + 0x118]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400158d9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001590b
call fcn.140019bf0
mov rax, r15
mov rcx, qword [rbp + 0x350]
xor rcx, rsp
call fcn.140019bd0
mov rbx, qword [rsp + 0x4a8]
add rsp, 0x460
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.140025b1c
nop
lea rdx, str.Unexpected_eof
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
int3
lea rdx, str.quote_was_opened_but_not_closed.
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
nop
lea rdx, str.quote_was_opened_but_not_closed.
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
nop
lea rdx, str.object_is_not_closed_with_
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
nop
lea rdx, str.key_declared__but_no_value
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
int3
lea rdx, str.key_declared__but_no_value
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
nop
call fcn.140025b1c
nop
call fcn.140025b1c
nop
call fcn.140025b1c
nop
call fcn.140025b1c
nop
call fcn.140025b1c
nop
call fcn.140025b1c
nop
call fcn.140025b1c
nop
lea rdx, str.unexpected_key_without_object
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
int3
call fcn.1400181ac
nop
lea rdx, str.No_closed_word
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
int3
lea rdx, str.No_closed_word
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
int3
lea rdx, str.word_wasnt_properly_ended
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
int3
lea rdx, str.key_declared__but_no_value
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
int3
call fcn.140025b1c
nop
call fcn.140025b1c
nop
lea rdx, str.key_declared__but_no_value
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
int3
lea rdx, str.key_opened__but_never_closed
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
int3
call fcn.1400181ac
nop
lea rdx, str.word_wasnt_properly_ended
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
int3
lea rdx, str.unexpected_
lea rcx, [rbp + 0x48]
call fcn.140005590
lea rdx, [0x14006fb08]
lea rcx, [rbp + 0x48]
call fcn.14001baac
nop
call fcn.140025b1c
int3