Function at 0x14001e8d0
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 - 0x300]
sub rsp, 0x400
mov rax, qword [0x14008c090]
xor rax, rsp
mov qword [rbp + 0x2f0], rax
mov r14, r9
mov qword [rbp - 0x68], r9
mov rsi, r8
mov rbx, rdx
mov r12, rcx
mov qword [rsp + 0x48], rcx
mov qword [rbp - 0x10], rcx
mov rdi, qword [rbp + 0x360]
mov qword [rbp - 0x70], rdi
xor r15d, r15d
mov dword [rsp + 0x38], r15d
mov qword [rbp + 0xb8], r15
mov qword [rbp + 0xc8], r15
mov qword [rbp + 0xd0], r15
lea r8d, [r15 + 2]
lea rdx, [0x14007a340]
lea rcx, [rbp + 0xb8]
call fcn.140008f30
nop
mov qword [rbp + 0xd8], r15
mov qword [rbp + 0xe8], r15
mov qword [rbp + 0xf0], r15
lea r8d, [r15 + 6]
lea rdx, str.__n_v_f_r_t
lea rcx, [rbp + 0xd8]
call fcn.140008f30
nop
lea rax, [0x14007a090]
mov qword [rbp + 0x1a0], rax
lea rax, [rbp + 0x1a0]
mov qword [rbp + 0x1d8], rax
cmp byte [rdi + 1], r15b
je 0x14001eb1d
lea rax, [0x14007a0e8]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x50]
mov qword [rbp - 0x78], rax
mov qword [rbp + 0x138], r15
mov rax, qword [0x14007a0f0]
lea rdx, [rbp + 0x100]
lea rcx, [rsp + 0x50]
call rax
mov rcx, rax
mov qword [rbp + 0x138], rax
mov r8, qword [rbp - 0x78]
test r8, r8
je 0x14001ea17
mov rax, qword [r8]
lea rcx, [rsp + 0x50]
cmp r8, rcx
setne dl
mov rcx, r8
call qword [rax + 0x20]
mov r8d, r15d
mov qword [rbp - 0x78], r15
mov rcx, qword [rbp + 0x138]
mov r9, qword [rbp + 0x1d8]
test r9, r9
je 0x14001ea87
lea rax, [rbp + 0x1a0]
cmp r9, rax
jne 0x14001ea79
mov rax, qword [r9]
lea rdx, [rsp + 0x50]
mov rcx, r9
call qword [rax + 8]
mov r8, rax
mov qword [rbp - 0x78], rax
mov rcx, qword [rbp + 0x1d8]
test rcx, rcx
je 0x14001ea70
mov rax, qword [rcx]
lea rdx, [rbp + 0x1a0]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp - 0x78]
mov rcx, qword [rbp + 0x138]
jmp 0x14001ea80
mov rcx, qword [rbp + 0x138]
jmp 0x14001ea87
mov r8, r9
mov qword [rbp - 0x78], r9
mov qword [rbp + 0x1d8], r15
test rcx, rcx
je 0x14001eb04
lea rax, [rbp + 0x100]
cmp rcx, rax
jne 0x14001ead7
mov rax, qword [rcx]
lea rdx, [rbp + 0x1a0]
call qword [rax + 8]
mov qword [rbp + 0x1d8], rax
mov rcx, qword [rbp + 0x138]
test rcx, rcx
je 0x14001ead1
mov rax, qword [rcx]
lea rdx, [rbp + 0x100]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp - 0x78]
jmp 0x14001eade
mov r8, qword [rbp - 0x78]
jmp 0x14001eae8
mov qword [rbp + 0x1d8], rcx
mov rcx, r15
mov qword [rbp + 0x138], rcx
test rcx, rcx
je 0x14001eb04
mov rax, qword [rcx]
lea rdx, [rbp + 0x100]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp - 0x78]
test r8, r8
je 0x14001eb1d
mov rax, qword [r8]
lea rcx, [rsp + 0x50]
cmp r8, rcx
setne dl
mov rcx, r8
call qword [rax + 0x20]
lea rax, [rbp + 0xd8]
mov qword [rbp + 0x40], rax
lea rax, [0x140071628]
mov qword [rbp + 0x160], rax
lea rax, [rbp + 0x160]
mov qword [rbp + 0x198], rax
cmp byte [rdi], 0
jne 0x14001ecb9
lea rax, [0x1400717a0]
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x50]
mov qword [rbp - 0x78], rax
mov qword [rbp + 0x138], r15
mov rax, qword [0x1400717a8]
lea rdx, [rbp + 0x100]
lea rcx, [rsp + 0x50]
call rax
mov rcx, rax
mov qword [rbp + 0x138], rax
mov r8, qword [rbp - 0x78]
test r8, r8
je 0x14001ebb3
mov rax, qword [r8]
lea rcx, [rsp + 0x50]
cmp r8, rcx
setne dl
mov rcx, r8
call qword [rax + 0x20]
mov r8, r15
mov qword [rbp - 0x78], r15
mov rcx, qword [rbp + 0x138]
mov r9, qword [rbp + 0x198]
test r9, r9
je 0x14001ec23
lea rax, [rbp + 0x160]
cmp r9, rax
jne 0x14001ec15
mov rax, qword [r9]
lea rdx, [rsp + 0x50]
mov rcx, r9
call qword [rax + 8]
mov r8, rax
mov qword [rbp - 0x78], rax
mov rcx, qword [rbp + 0x198]
test rcx, rcx
je 0x14001ec0c
mov rax, qword [rcx]
lea rdx, [rbp + 0x160]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp - 0x78]
mov rcx, qword [rbp + 0x138]
jmp 0x14001ec1c
mov rcx, qword [rbp + 0x138]
jmp 0x14001ec23
mov r8, r9
mov qword [rbp - 0x78], r9
mov qword [rbp + 0x198], r15
test rcx, rcx
je 0x14001eca0
lea rax, [rbp + 0x100]
cmp rcx, rax
jne 0x14001ec73
mov rax, qword [rcx]
lea rdx, [rbp + 0x160]
call qword [rax + 8]
mov qword [rbp + 0x198], rax
mov rcx, qword [rbp + 0x138]
test rcx, rcx
je 0x14001ec6d
mov rax, qword [rcx]
lea rdx, [rbp + 0x100]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp - 0x78]
jmp 0x14001ec7a
mov r8, qword [rbp - 0x78]
jmp 0x14001ec84
mov qword [rbp + 0x198], rcx
mov rcx, r15
mov qword [rbp + 0x138], rcx
test rcx, rcx
je 0x14001eca0
mov rax, qword [rcx]
lea rdx, [rbp + 0x100]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov r8, qword [rbp - 0x78]
test r8, r8
je 0x14001ecb9
mov rax, qword [r8]
lea rcx, [rsp + 0x50]
cmp r8, rcx
setne dl
mov rcx, r8
call qword [rax + 0x20]
lea rax, [rbp + 0x40]
mov qword [rbp - 0x40], rax
lea rax, [rbp + 0x1a0]
mov qword [rbp - 0x38], rax
mov r13, r15
mov qword [rsp + 0x40], r15
mov qword [rbp + 0x48], r15
xorps xmm0, xmm0
movups xmmword [r12], xmm0
mov qword [r12], r15
mov qword [r12 + 8], r15
mov qword [r12 + 0x10], r15
mov dword [rsp + 0x38], 1
movups xmmword [rbp + 0x80], xmm0
movdqu xmmword [rbp + 0x70], xmm0
mov qword [rbp + 0x80], r15
mov qword [rbp + 0x88], r15
mov qword [rbp + 0x90], r15
mov ecx, 0x10
call fcn.1400244c0
mov qword [rax + 8], r15
mov qword [rbp + 0x70], rax
lea rcx, [rbp + 0x70]
mov qword [rax], rcx
mov r15, qword [rbp + 0xb8]
cmp rbx, rsi
je 0x14001fcc7
lea r10, [rbp + 0xb8]
lea r11, [rbp + 0xb8]
cmp byte [rbx], 0
je 0x14001fcc7
cmp rbx, rsi
je 0x14001fcc7
mov rdx, qword [rbp + 0x40]
mov r9, qword [rdx + 0x18]
mov r8, qword [rdx + 0x10]
nop dword [rax]
movzx ecx, byte [rbx]
mov rdx, qword [rbp + 0x40]
cmp r9, 0x10
jb 0x14001ed88
mov rax, qword [rdx]
add rax, r8
mov rdx, qword [rdx]
jmp 0x14001ed8c
lea rax, [rdx + r8]
cmp rdx, rax
je 0x14001eda2
cmp byte [rdx], cl
je 0x14001ed9a
inc rdx
jmp 0x14001ed8c
inc rbx
cmp rbx, rsi
jne 0x14001ed70
cmp rbx, rsi
je 0x14001fcc7
movzx eax, byte [rbx]
test al, al
je 0x14001fcc7
cmp al, 0x2f
jne 0x14001eeaa
inc rbx
cmp rbx, rsi
jne 0x14001edce
mov rbx, rsi
jmp 0x14001ee93
cmp byte [rbx], 0x2f
jne 0x14001ee00
lea rcx, [rbx + 1]
mov r8b, 0xa
mov rdx, rsi
call fcn.140023dc0
mov rbx, rax
cmp rax, rsi
jne 0x14001edf2
mov rbx, rsi
jmp 0x14001ee93
lea r10, [rbp + 0xb8]
lea r11, [rbp + 0xb8]
cmp byte [rbx], 0x2a
jne 0x14001ee93
mov r14, qword [rbp + 0xc8]
cmp qword [rbp + 0xd0], 0x10
jb 0x14001ee1f
add r14, r15
jmp 0x14001ee25
add r14, r11
mov r15, r10
lea rdi, [rbx + 1]
mov rbx, rsi
sub r14, r15
mov rax, rsi
sub rax, rdi
cmp rax, r14
jl 0x14001ee7e
mov r12, rbx
sub r12, r14
mov r8, r14
mov rdx, rdi
mov rcx, r15
call fcn.140027040
test eax, eax
sete al
test al, al
jne 0x14001ee76
cmp rdi, r12
je 0x14001ee79
inc rdi
mov r8, r14
mov rdx, rdi
mov rcx, r15
call fcn.140027040
test eax, eax
sete al
test al, al
je 0x14001ee57
mov rbx, rdi
mov r12, qword [rsp + 0x48]
mov rax, rsi
sub rax, rbx
cmp rax, 2
jg 0x14001ee8f
mov rbx, rsi
jmp 0x14001ee93
add rbx, 2
cmp rbx, rsi
je 0x14001fe1b
cmp byte [rbx], 0
je 0x14001fe1b
jmp 0x14001fcad
cmp al, 0x7d
je 0x14001fbd8
cmp al, 0x22
jne 0x14001ef07
mov rdi, rbx
nop dword [rax]
lea rcx, [rdi + 1]
mov r8b, 0x22
mov rdx, rsi
call fcn.140023dc0
mov rdi, rax
cmp rax, rsi
sete dl
je 0x14001eefa
dec rax
cmp rax, rbx
je 0x14001eeef
cmp byte [rax], 0x5c
jne 0x14001eeef
dec rax
cmp rax, rbx
jne 0x14001eee2
mov rcx, rdi
sub rcx, rax
test cl, 1
je 0x14001eec0
test dl, dl
jne 0x14001fe3c
jmp 0x14001efb5
mov rcx, rbx
mov r11, qword [rbp + 0xf0]
mov r9, qword [rbp + 0xe8]
mov r10, qword [rbp + 0xd8]
nop
inc rcx
lea rax, [rbp + 0xd8]
cmp r11, 0x10
jb 0x14001ef39
lea rax, [r9 + r10]
mov r8, r10
jmp 0x14001ef43
add rax, r9
lea r8, [rbp + 0xd8]
mov rdi, rcx
cmp rcx, rsi
je 0x14001ef74
nop dword [rax + rax]
mov rcx, r8
cmp r8, rax
je 0x14001ef6c
movzx edx, byte [rdi]
nop dword [rax + rax]
cmp dl, byte [rcx]
je 0x14001ef74
inc rcx
cmp rcx, rax
jne 0x14001ef60
inc rdi
cmp rdi, rsi
jne 0x14001ef50
mov rcx, rdi
cmp rdi, rsi
sete r8b
je 0x14001efac
lea rax, [rdi - 1]
cmp rax, rbx
je 0x14001ef9d
nop dword [rax]
cmp byte [rax], 0x5c
jne 0x14001ef9d
dec rax
cmp rax, rbx
jne 0x14001ef90
mov rdx, rdi
sub rdx, rax
test dl, 1
je 0x14001ef20
test r8b, r8b
jne 0x14002000a
cmp byte [rbx], 0x22
jne 0x14001efbd
inc rbx
mov r8, rdi
mov rdx, rbx
lea rcx, [rbp + 0x50]
call fcn.140020f30
nop
mov rcx, qword [rbp + 0x198]
test rcx, rcx
je 0x140020004
mov rax, qword [rcx]
lea rdx, [rbp + 0x50]
call qword [rax + 0x10]
xor eax, eax
cmp byte [rdi], 0x22
sete al
lea r8, [rax + rdi]
mov qword [rbp + 0x20], r8
cmp r8, rsi
je 0x14001ffe3
mov r9, qword [rbp + 0x40]
mov r11, qword [r9 + 0x18]
mov r10, qword [r9 + 0x10]
nop dword [rax]
movzx ecx, byte [r8]
cmp r11, 0x10
jb 0x14001f025
mov rax, qword [r9]
add rax, r10
mov rdx, qword [r9]
jmp 0x14001f02c
lea rax, [r9 + r10]
mov rdx, r9
cmp rdx, rax
je 0x14001f042
cmp byte [rdx], cl
je 0x14001f03a
inc rdx
jmp 0x14001f02c
inc r8
cmp r8, rsi
jne 0x14001f010
mov qword [rbp + 0x20], r8
lea r8, [rbp + 0x350]
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.140020280
test al, al
jne 0x14001f0a9
mov rdx, qword [rbp + 0x68]
cmp rdx, 0x10
jb 0x14001f099
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f094
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ffbc
call fcn.140024220
mov rsi, qword [rbp + 0x350]
mov rbx, qword [rbp + 0x20]
jmp 0x14001fcad
mov rbx, qword [rbp + 0x20]
mov rsi, qword [rbp + 0x350]
cmp rbx, rsi
je 0x14001ffc2
cmp byte [rbx], 0x2f
jne 0x14001f23a
mov r13, qword [rbp + 0x40]
nop word [rax + rax]
lea rax, [rbx + 1]
mov rbx, rax
cmp rax, rsi
jne 0x14001f0e4
mov rbx, rsi
jmp 0x14001f1a7
cmp byte [rax], 0x2f
jne 0x14001f10c
lea rcx, [rax + 1]
mov r8b, 0xa
mov rdx, rsi
call fcn.140023dc0
mov rbx, rax
mov r13, qword [rbp + 0x40]
cmp rax, rsi
jne 0x14001f10c
mov rbx, rsi
jmp 0x14001f1a7
cmp byte [rbx], 0x2a
jne 0x14001f1a7
lea rcx, [rbp + 0xb8]
mov r14, qword [rbp + 0xc8]
cmp qword [rbp + 0xd0], 0x10
jb 0x14001f132
add r14, r15
jmp 0x14001f13c
add r14, rcx
lea r15, [rbp + 0xb8]
lea rdi, [rbx + 1]
mov rbx, rsi
sub r14, r15
mov rax, rsi
sub rax, rdi
cmp rax, r14
jl 0x14001f192
mov r12, rbx
sub r12, r14
mov r8, r14
mov rdx, rdi
mov rcx, r15
call fcn.140027040
test eax, eax
sete al
test al, al
jne 0x14001f18f
nop
cmp rdi, r12
je 0x14001f192
inc rdi
mov r8, r14
mov rdx, rdi
mov rcx, r15
call fcn.140027040
test eax, eax
sete al
test al, al
je 0x14001f170
mov rbx, rdi
mov rax, rsi
sub rax, rbx
cmp rax, 2
jg 0x14001f1a3
mov rbx, rsi
jmp 0x14001f1a7
add rbx, 2
cmp rbx, rsi
je 0x14001fec0
movzx ecx, byte [rbx]
cmp cl, 0x7d
je 0x14001fec0
cmp rbx, rsi
je 0x14001fe9f
mov r9, qword [r13 + 0x18]
mov r8, qword [r13 + 0x10]
nop dword [rax]
cmp r9, 0x10
jb 0x14001f1e3
mov rax, qword [r13]
add rax, r8
mov rdx, qword [r13]
jmp 0x14001f1ea
lea rax, [r8 + r13]
mov rdx, r13
cmp rdx, rax
je 0x14001f209
cmp byte [rdx], cl
je 0x14001f1f8
inc rdx
jmp 0x14001f1ea
inc rbx
cmp rbx, rsi
je 0x14001fe9f
movzx ecx, byte [rbx]
jmp 0x14001f1d0
cmp rbx, rsi
je 0x14001fe9f
movzx eax, byte [rbx]
cmp al, 0x7d
je 0x14001fe9f
cmp al, 0x2f
mov r15, qword [rbp + 0xb8]
je 0x14001f0d0
mov r12, qword [rsp + 0x48]
mov r13, qword [rsp + 0x40]
mov r14, qword [rbp - 0x68]
movzx eax, byte [rbx]
cmp al, 0x7b
je 0x14001fa0f
cmp rbx, rsi
je 0x14001ff95
cmp al, 0x22
jne 0x14001f2a7
mov rdi, rbx
nop word [rax + rax]
lea rcx, [rdi + 1]
mov r8b, 0x22
mov rdx, rsi
call fcn.140023dc0
mov rdi, rax
cmp rax, rsi
sete dl
je 0x14001f29a
dec rax
cmp rax, rbx
je 0x14001f28f
cmp byte [rax], 0x5c
jne 0x14001f28f
dec rax
cmp rax, rbx
jne 0x14001f282
mov rcx, rdi
sub rcx, rax
test cl, 1
je 0x14001f260
test dl, dl
jne 0x14001fe5d
jmp 0x14001f355
mov rcx, rbx
mov r11, qword [rbp + 0xf0]
mov r9, qword [rbp + 0xe8]
mov r10, qword [rbp + 0xd8]
nop
inc rcx
lea rax, [rbp + 0xd8]
cmp r11, 0x10
jb 0x14001f2d9
lea rax, [r10 + r9]
mov r8, r10
jmp 0x14001f2e3
add rax, r9
lea r8, [rbp + 0xd8]
mov rdi, rcx
cmp rcx, rsi
je 0x14001f314
nop dword [rax + rax]
mov rcx, r8
cmp r8, rax
je 0x14001f30c
movzx edx, byte [rdi]
nop dword [rax + rax]
cmp dl, byte [rcx]
je 0x14001f314
inc rcx
cmp rcx, rax
jne 0x14001f300
inc rdi
cmp rdi, rsi
jne 0x14001f2f0
mov rcx, rdi
cmp rdi, rsi
sete r8b
je 0x14001f34c
lea rax, [rdi - 1]
cmp rax, rbx
je 0x14001f33d
nop dword [rax]
cmp byte [rax], 0x5c
jne 0x14001f33d
dec rax
cmp rax, rbx
jne 0x14001f330
mov rdx, rdi
sub rdx, rax
test dl, 1
je 0x14001f2c0
test r8b, r8b
jne 0x14001ff74
cmp rdi, rsi
je 0x14001ff53
cmp byte [rbx], 0x22
jne 0x14001f366
inc rbx
cmp rbx, rsi
je 0x14001ff32
mov r8, rdi
mov rdx, rbx
lea rcx, [rbp + 0x98]
call fcn.140020f30
nop
mov rcx, qword [rbp + 0x198]
test rcx, rcx
je 0x14001ff2c
mov rax, qword [rcx]
lea rdx, [rbp + 0x98]
call qword [rax + 0x10]
xor eax, eax
cmp byte [rdi], 0x22
sete al
add rax, rdi
mov qword [rbp + 0x20], rax
lea r8, [rbp + 0x350]
lea rdx, [rbp + 0x20]
lea rcx, [rbp - 0x40]
call fcn.140020280
test al, al
jne 0x14001f477
mov rdx, qword [rbp + 0xb0]
cmp rdx, 0x10
jb 0x14001f40b
inc rdx
mov rcx, qword [rbp + 0x98]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f406
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ff05
call fcn.140024220
mov qword [rbp + 0xa8], 0
mov qword [rbp + 0xb0], 0xf
mov byte [rbp + 0x98], 0
mov rdx, qword [rbp + 0x68]
cmp rdx, 0x10
jb 0x14001f099
inc rdx
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f462
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001fee1
call fcn.140024220
mov rsi, qword [rbp + 0x350]
mov rbx, qword [rbp + 0x20]
jmp 0x14001fcad
lea rcx, [rbp + 0x50]
cmp qword [rbp + 0x68], 0x10
setae dil
cmovae rcx, qword [rbp + 0x50]
mov rbx, qword [rbp + 0x60]
cmp rbx, 8
jne 0x14001f4a6
mov r8, rbx
lea rdx, str.include
call fcn.140027040
test eax, eax
je 0x14001f4d3
lea rcx, [rbp + 0x50]
test dil, dil
cmovne rcx, qword [rbp + 0x50]
cmp rbx, 5
jne 0x14001f89f
mov r8, rbx
lea rdx, str.base
call fcn.140027040
test eax, eax
jne 0x14001f89f
mov rsi, qword [rbp - 0x70]
cmp byte [rsi + 2], 0
jne 0x14001f9bd
lea r8, [rbp + 0x98]
cmp qword [rbp + 0xb0], 0x10
setae r15b
cmovae r8, qword [rbp + 0x98]
movabs rdx, 0xcbf29ce484222325
xor ecx, ecx
mov rdi, qword [rbp + 0xa8]
test rdi, rdi
je 0x14001f539
movabs r12, 0x100000001b3
nop
movzx eax, byte [rcx + r8]
xor rdx, rax
imul rdx, r12
inc rcx
cmp rcx, rdi
jb 0x14001f520
mov r12, qword [rsp + 0x48]
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]
mov r14, qword [r14 + 8]
cmp rbx, r14
je 0x14001f5aa
add rcx, rcx
mov rsi, qword [rdx + rcx*8]
nop
lea rdx, [rbx + 0x10]
mov rax, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14001f572
mov rdx, qword [rdx]
lea rcx, [rbp + 0x98]
test r15b, r15b
cmovne rcx, qword [rbp + 0x98]
cmp rdi, rax
jne 0x14001f595
mov r8, rdi
call fcn.140027040
test eax, eax
je 0x14001f5a0
cmp rbx, rsi
je 0x14001f5a6
mov rbx, qword [rbx + 8]
jmp 0x14001f560
mov rsi, qword [rbp - 0x70]
jmp 0x14001f5ac
mov rsi, qword [rbp - 0x70]
xor ebx, ebx
test rbx, rbx
cmovne r14, rbx
mov r15, qword [rbp - 0x68]
cmp r14, qword [r15 + 8]
jne 0x14001f9bd
lea r8, [rbp + 0x98]
lea rdx, [rbp]
mov rcx, r15
call fcn.140021210
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp + 0x1e0]
call fcn.140026c00
nop
lea rdx, [rbp + 0x98]
lea rcx, [rbp - 0x30]
call fcn.1400064b0
nop
lea rdx, [rbp - 0x30]
lea rcx, [rbp + 0x1e0]
call fcn.140020970
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 0x10
jb 0x14001f646
inc rdx
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f641
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001fee7
call fcn.140024220
xor r14d, r14d
mov qword [rbp - 0x20], r14
mov qword [rbp - 0x18], 0xf
mov byte [rbp - 0x30], r14b
lea rdx, [rbp + 0x1e0]
lea rcx, [rbp + 0x140]
call fcn.14001db50
nop
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rbp + 0x28], xmm0
mov qword [rbp + 0x38], rax
lea rcx, [rbp + 0x140]
mov r8, qword [rbp + 0x150]
cmp qword [rbp + 0x158], 0x10
jb 0x14001f69e
mov rdx, qword [rbp + 0x140]
add r8, rdx
jmp 0x14001f6a8
add r8, rcx
lea rdx, [rbp + 0x140]
mov qword [rsp + 0x20], rsi
mov r9, r15
lea rcx, [rbp + 0x28]
call fcn.14001e8d0
nop
mov rbx, qword [rbp + 0x28]
mov rdi, qword [rbp + 0x30]
cmp rbx, rdi
je 0x14001f720
test r13, r13
setne sil
nop
test sil, sil
je 0x14001f6ef
mov rax, qword [rbx]
mov qword [rbx], r14
mov qword [rsp + 0x30], rax
lea rdx, [rsp + 0x30]
mov rcx, r13
call fcn.14001e2b0
jmp 0x14001f717
mov rdx, qword [r12 + 8]
cmp rdx, qword [r12 + 0x10]
je 0x14001f70c
mov rax, qword [rbx]
mov qword [rbx], r14
mov qword [rdx], rax
add qword [r12 + 8], 8
jmp 0x14001f717
mov r8, rbx
mov rcx, r12
call fcn.140021fa0
add rbx, 8
cmp rbx, rdi
jne 0x14001f6d0
lea rdx, [rbp + 0x98]
mov rcx, r15
call fcn.140021060
nop
mov rbx, qword [rbp + 0x28]
test rbx, rbx
je 0x14001f7b8
mov rsi, qword [rbp + 0x30]
cmp rbx, rsi
je 0x14001f76c
mov rdi, qword [rbx]
test rdi, rdi
je 0x14001f75f
mov rcx, rdi
call fcn.140019e70
mov edx, 0xa0
mov rcx, rdi
call fcn.140024220
add rbx, 8
cmp rbx, rsi
jne 0x14001f742
mov rbx, qword [rbp + 0x28]
mov rax, qword [rbp + 0x38]
sub rax, rbx
sar rax, 3
lea rdx, [rax*8]
mov rax, rbx
cmp rdx, 0x1000
jb 0x14001f7a4
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001feed
mov rcx, rbx
call fcn.140024220
xorps xmm0, xmm0
movdqu xmmword [rbp + 0x28], xmm0
mov qword [rbp + 0x38], r14
mov rdx, qword [rbp + 0x158]
cmp rdx, 0x10
jb 0x14001f7f9
inc rdx
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f7f4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001fef3
call fcn.140024220
mov qword [rbp + 0x150], r14
mov qword [rbp + 0x158], 0xf
mov byte [rbp + 0x140], 0
mov rax, qword [rbp + 0x1e0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x1e0], rax
mov rax, qword [rbp + 0x1e0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx + 0x1dc], edx
lea rcx, [rbp + 0x1f0]
call fcn.140005d50
mov rax, qword [rbp + 0x1e0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx + 0x1e0], rax
mov rax, qword [rbp + 0x1e0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx + 0x1dc], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x290], rax
lea rcx, [rbp + 0x290]
call fcn.140022c94
nop
jmp 0x14001f9bd
test r13, r13
je 0x14001ff0b
movups xmm0, xmmword [rbp + 0x98]
movups xmmword [rbp + 0x100], xmm0
movups xmm1, xmmword [rbp + 0xa8]
movups xmmword [rbp + 0x110], xmm1
xor r14d, r14d
mov qword [rbp + 0xa8], r14
mov qword [rbp + 0xb0], 0xf
mov byte [rbp + 0x98], r14b
lea rax, [rbp + 0x100]
mov qword [rsp + 0x30], rax
movups xmm0, xmmword [rbp + 0x50]
movups xmmword [rbp - 0x60], xmm0
movups xmm1, xmmword [rbp + 0x60]
movups xmmword [rbp - 0x50], xmm1
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], 0xf
mov byte [rbp + 0x50], r14b
lea rax, [rbp - 0x60]
mov qword [rbp + 0xf8], rax
lea rcx, [r13 + 0x20]
lea r9, [rbp + 0x100]
lea r8, [rbp - 0x60]
lea rdx, [rbp + 0x10]
call fcn.140021570
nop
mov rdx, qword [rbp - 0x48]
cmp rdx, 0x10
jb 0x14001f96b
inc rdx
mov rcx, qword [rbp - 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f966
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001fef9
call fcn.140024220
mov qword [rbp - 0x50], r14
mov qword [rbp - 0x48], 0xf
mov byte [rbp - 0x60], 0
mov rdx, qword [rbp + 0x118]
cmp rdx, 0x10
jb 0x14001f9bd
inc rdx
mov rcx, qword [rbp + 0x100]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f9b7
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001feff
call fcn.140024220
nop
mov rax, qword [rbp + 0xb0]
cmp rax, 0x10
jb 0x14001f9ff
lea rdx, [rax + 1]
mov rcx, qword [rbp + 0x98]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001f9fa
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ff05
call fcn.140024220
mov rsi, qword [rbp + 0x350]
mov rbx, qword [rbp + 0x20]
jmp 0x14001fb93
test r13, r13
je 0x14001facc
mov rdx, qword [rbp + 0x88]
mov r8, qword [rbp + 0x90]
lea eax, [r8 + rdx]
mov rcx, qword [rbp + 0x80]
test al, 1
jne 0x14001fa5f
lea rax, [r8 + 2]
shr rax, 1
cmp rcx, rax
ja 0x14001fa5f
lea rcx, [rbp + 0x70]
call fcn.140021b00
mov r8, qword [rbp + 0x90]
mov rdx, qword [rbp + 0x88]
mov rcx, qword [rbp + 0x80]
lea rax, [rcx*2 - 1]
and rdx, rax
mov qword [rbp + 0x88], rdx
lea rdi, [r8 + rdx]
dec rcx
mov rax, rdi
shr rax, 1
and rcx, rax
lea r14, [rcx*8]
mov rax, qword [rbp + 0x78]
cmp qword [rax + r14], 0
jne 0x14001faad
mov ecx, 0x10
call fcn.1400244c0
mov rcx, rax
mov rax, qword [rbp + 0x78]
mov qword [rax + r14], rcx
mov rax, qword [rbp + 0x78]
and edi, 1
mov rax, qword [rax + r14]
lea rcx, [rax + rdi*8]
mov rax, r13
xor r13d, r13d
mov qword [rbp + 0x48], r13
mov qword [rcx], rax
inc qword [rbp + 0x90]
mov ecx, 0xa0
call fcn.1400244c0
mov rdi, rax
mov qword [rbp - 8], rax
xor edx, edx
mov r8d, 0xa0
mov rcx, rax
call fcn.140026c00
mov rcx, rdi
call fcn.14001def0
mov r14, rax
or dword [rsp + 0x38], 2
mov qword [rsp + 0x40], rax
mov qword [rbp + 0x48], rax
test r13, r13
je 0x14001fb20
mov rcx, r13
call fcn.140019e70
mov edx, 0xa0
mov rcx, r13
call fcn.140024220
movups xmm0, xmmword [rbp + 0x50]
movups xmmword [rsp + 0x50], xmm0
movups xmm1, xmmword [rbp + 0x60]
movups xmmword [rsp + 0x60], xmm1
mov qword [rbp + 0x60], 0
mov qword [rbp + 0x68], 0xf
mov byte [rbp + 0x50], 0
lea rdx, [rsp + 0x50]
mov rcx, r14
call fcn.14000acf0
mov rdx, qword [rsp + 0x68]
cmp rdx, 0x10
jb 0x14001fb90
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001fb8b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ffb6
call fcn.140024220
inc rbx
mov rax, qword [rbp + 0x68]
cmp rax, 0x10
jb 0x14001fcad
lea rdx, [rax + 1]
mov rcx, qword [rbp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001fbce
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001ffbc
call fcn.140024220
jmp 0x14001fcad
test r13, r13
je 0x14002002b
mov rcx, qword [rbp + 0x90]
test rcx, rcx
je 0x14001fc5c
mov rdx, qword [rbp + 0x88]
dec rcx
add rdx, rcx
mov rcx, qword [rbp + 0x80]
dec rcx
mov rax, rdx
shr rax, 1
and rcx, rax
and edx, 1
mov rax, qword [rbp + 0x78]
mov rcx, qword [rax + rcx*8]
mov rdi, qword [rcx + rdx*8]
mov qword [rcx + rdx*8], 0
mov qword [rbp + 0xf8], rdi
lea rcx, [rbp + 0x70]
call fcn.140020b40
mov qword [rbp + 0x48], 0
mov qword [rsp + 0x30], r13
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.14001e2b0
mov rax, rdi
mov qword [rsp + 0x40], rax
mov qword [rbp + 0x48], rax
jmp 0x14001fcaa
mov rdx, qword [r12 + 8]
cmp rdx, qword [r12 + 0x10]
je 0x14001fc75
xor edi, edi
mov qword [rdx], r13
add qword [r12 + 8], 8
jmp 0x14001fc85
lea r8, [rbp + 0x48]
mov rcx, r12
call fcn.140021fa0
mov rdi, qword [rbp + 0x48]
xor eax, eax
mov qword [rsp + 0x40], rax
mov qword [rbp + 0x48], rax
test rdi, rdi
je 0x14001fcaa
mov rcx, rdi
call fcn.140019e70
mov edx, 0xa0
mov rcx, rdi
call fcn.140024220
inc rbx
mov r13, qword [rsp + 0x40]
mov r15, qword [rbp + 0xb8]
cmp rbx, rsi
je 0x14001fcc7
mov r14, qword [rbp - 0x68]
jmp 0x14001ed40
test r13, r13
jne 0x14001fe7e
cmp qword [rbp + 0x90], r13
jne 0x14001fe7e
lea rcx, [rbp + 0x70]
call fcn.140020860
nop
test r13, r13
je 0x14001fd02
mov rcx, r13
call fcn.140019e70
mov edx, 0xa0
mov rcx, r13
call fcn.140024220
nop
mov rcx, qword [rbp + 0x198]
test rcx, rcx
je 0x14001fd2c
mov rax, qword [rcx]
lea rdx, [rbp + 0x160]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
xor ebx, ebx
mov qword [rbp + 0x198], rbx
jmp 0x14001fd2e
xor ebx, ebx
mov rcx, qword [rbp + 0x1d8]
test rcx, rcx
je 0x14001fd54
mov rax, qword [rcx]
lea rdx, [rbp + 0x1a0]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rbp + 0x1d8], rbx
mov rdx, qword [rbp + 0xf0]
cmp rdx, 0x10
jb 0x14001fd95
inc rdx
mov rcx, qword [rbp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001fd90
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14002004c
call fcn.140024220
mov qword [rbp + 0xe8], rbx
mov qword [rbp + 0xf0], 0xf
mov byte [rbp + 0xd8], 0
mov rax, qword [rbp + 0xd0]
cmp rax, 0x10
jb 0x14001fde8
lea rdx, [rax + 1]
mov rax, r15
cmp rdx, 0x1000
jb 0x14001fde0
add rdx, 0x27
mov r15, qword [r15 - 8]
sub rax, r15
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001fe15
mov rcx, r15
call fcn.140024220
mov rax, r12
mov rcx, qword [rbp + 0x2f0]
xor rcx, rsp
call fcn.140024200
mov rbx, qword [rsp + 0x448]
add rsp, 0x400
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
call fcn.14002fc9c
nop
lea rdx, str.Unexpected_eof
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
int3
lea rdx, str.quote_was_opened_but_not_closed.
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
nop
lea rdx, str.quote_was_opened_but_not_closed.
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
nop
lea rdx, str.object_is_not_closed_with_
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
nop
lea rdx, str.key_declared__but_no_value
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
int3
lea rdx, str.key_declared__but_no_value
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
nop
call fcn.14002fc9c
nop
call fcn.14002fc9c
nop
call fcn.14002fc9c
nop
call fcn.14002fc9c
nop
call fcn.14002fc9c
nop
call fcn.14002fc9c
nop
call fcn.14002fc9c
nop
lea rdx, str.unexpected_key_without_object
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
int3
call fcn.1400226f0
nop
lea rdx, str.No_closed_word
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
int3
lea rdx, str.No_closed_word
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
int3
lea rdx, str.word_wasnt_properly_ended
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
int3
lea rdx, str.key_declared__but_no_value
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
int3
call fcn.14002fc9c
nop
call fcn.14002fc9c
nop
lea rdx, str.key_declared__but_no_value
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
int3
lea rdx, str.key_opened__but_never_closed
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
int3
call fcn.1400226f0
nop
lea rdx, str.word_wasnt_properly_ended
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
int3
lea rdx, str.unexpected_
lea rcx, [rbp + 0x28]
call fcn.14000db70
lea rdx, [0x14008a0e8]
lea rcx, [rbp + 0x28]
call fcn.140026478
nop
call fcn.14002fc9c
int3