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

Disassembly:
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x198]
sub rsp, 0x298
mov r13, rcx
xor ebx, ebx
mov dword [rsp + 0x40], ebx
mov rax, qword [rcx + 8]
mov r9, qword [rax + 0x108]
mov qword [rbp - 0x20], r9
mov eax, dword [0x1804c386c]
mov ecx, dword [0x1804da904]
add rcx, qword [rax + r8]
lea rdx, [rbp + 0x140]
call fcn.180227150
nop
mov rcx, rax
cmp qword [rax + 0x18], 7
jbe 0x1800b9387
mov rcx, qword [rax]
mov rax, qword [rax + 0x10]
mov qword [rbp - 0x40], rcx
mov qword [rbp - 0x38], rax
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x88]
call fcn.180211eb0
nop
mov rdx, qword [rbp + 0x158]
cmp rdx, 7
jbe 0x1800b93ea
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0x140]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b93e5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba63c
call fcn.180286270
movdqa xmm0, xmmword [0x1802f5610]
movdqu xmmword [rbp + 0x150], xmm0
mov word [rbp + 0x140], bx
mov ecx, dword [0x1804c3874]
add rcx, qword [rbp + 0x1f0]
lea rdx, [rbp + 0xc8]
call fcn.180227150
nop
mov rcx, rax
cmp qword [rax + 0x18], 7
jbe 0x1800b9428
mov rcx, qword [rax]
mov rax, qword [rax + 0x10]
mov qword [rbp - 0x40], rcx
mov qword [rbp - 0x38], rax
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x68]
call fcn.180211eb0
nop
mov rdx, qword [rbp + 0xe0]
cmp rdx, 7
jbe 0x1800b9488
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp + 0xc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b9483
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba642
call fcn.180286270
movdqa xmm0, xmmword [0x1802f5610]
movdqu xmmword [rbp + 0xd8], xmm0
mov word [rbp + 0xc8], bx
mov r14, qword [rbp + 0x78]
movabs r15, 0x7fffffffffffffff
mov rax, r15
sub rax, r14
cmp rax, 4
jb 0x1800ba648
lea r12, [rbp + 0x68]
cmp qword [rbp + 0x80], 0xf
cmova r12, qword [rbp + 0x68]
xorps xmm0, xmm0
movups xmmword [rbp - 0x70], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x60], xmm1
lea rsi, [r14 + 4]
mov ebx, 0xf
lea rdi, [rbp - 0x70]
movabs rax, 0x8000000000000000
lea ecx, [rbx + 7]
cmp rsi, rbx
jbe 0x1800b9566
mov rbx, rsi
or rbx, 0xf
cmp rbx, r15
jbe 0x1800b952e
mov rbx, r15
add rax, 0x27
mov rcx, rax
call fcn.180286234
test rax, rax
je 0x1800ba64e
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x1800b9562
cmp rbx, rcx
cmovb rbx, rcx
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1800b9551
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800ba630
jmp 0x1800b950f
test rcx, rcx
je 0x1800b9560
call fcn.180286234
mov rdi, rax
jmp 0x1800b9562
xor edi, edi
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x60], rsi
mov qword [rbp - 0x58], rbx
mov dword [rdi], 0x5f746567
lea rcx, [rdi + 4]
mov r8, r14
mov rdx, r12
call fcn.1802bc970
mov byte [rdi + rsi], 0
mov dword [rsp + 0x40], 4
lea rax, [rbp - 0x70]
cmp qword [rbp - 0x58], 0xf
cmova rax, qword [rbp - 0x70]
mov qword [rbp - 0x40], rax
mov rax, qword [rbp - 0x60]
mov qword [rbp - 0x38], rax
lea rdx, [rbp - 0x40]
mov rcx, qword [rbp + 0x1e8]
call fcn.180201a30
mov qword [rbp - 0x50], rax
mov esi, 4
and esi, 0xfffffffb
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp - 0x58]
cmp rdx, 0xf
jbe 0x1800b9604
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b95ff
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba654
call fcn.180286270
movdqa xmm0, xmmword [0x1802f5620]
movdqu xmmword [rbp - 0x60], xmm0
mov byte [rbp - 0x70], 0
lea rax, [rbp - 0x50]
mov qword [rsp + 0x70], rax
lea rax, [rbp - 0x20]
mov qword [rsp + 0x78], rax
lea rax, [rbp + 0x1f0]
mov qword [rbp - 0x80], rax
lea rdx, [rbp + 0x88]
cmp qword [rbp + 0xa0], 0xf
cmova rdx, qword [rbp + 0x88]
movabs rcx, 0xcbf29ce484222325
mov r8, qword [rbp + 0x98]
add r8, rdx
cmp rdx, r8
je 0x1800ba47f
movabs r9, 0x100000001b3
movsx rax, byte [rdx]
xor rcx, rax
imul rcx, r9
inc rdx
cmp rdx, r8
jne 0x1800b9670
movabs rax, 0x4769ea4ae78e66cb
cmp rcx, rax
je 0x1800ba460
movabs rax, 0x4b1b2d85250bcc80
cmp rcx, rax
je 0x1800b9d52
movabs rax, 0x561bbcf554ac3791
cmp rcx, rax
je 0x1800b9d33
movabs rax, 0xaf3c66bbcc10f6cf
cmp rcx, rax
je 0x1800b970f
movabs rax, 0xbff301ad16684c48
cmp rcx, rax
jne 0x1800ba47f
lea rax, [0x18032a1e4]
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], 5
movaps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x50]
lea rcx, [rsp + 0x70]
call fcn.1800b7900
jmp 0x1800ba56a
mov ecx, dword [0x1804dafe8]
mov rax, qword [rbp + 0x1f0]
mov rbx, qword [rcx + rax]
test rbx, rbx
je 0x1800b9c40
mov rdx, rbx
mov rcx, r13
call fcn.1800babe0
mov r14, rax
mov rdx, rbx
mov rcx, r13
call fcn.1800ba870
mov rbx, rax
test rax, rax
je 0x1800b9763
lea rcx, [rax + 8]
lea rdx, [rbp + 0xe8]
call fcn.1800b7a80
nop
or esi, 1
xor r12d, r12d
jmp 0x1800b9793
xorps xmm0, xmm0
movups xmmword [rsp + 0x50], xmm0
xor r12d, r12d
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], r12
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 0xf
mov byte [rsp + 0x50], r12b
lea rax, [rsp + 0x50]
or esi, 2
mov dword [rsp + 0x40], esi
mov qword [rbp - 0x60], r12
mov qword [rbp - 0x58], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x60], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
test sil, 2
je 0x1800b981a
and esi, 0xfffffffd
mov dword [rsp + 0x40], esi
mov rdx, qword [rsp + 0x68]
cmp rdx, 0xf
jbe 0x1800b9807
inc rdx
mov rcx, qword [rsp + 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b9802
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba65a
call fcn.180286270
mov qword [rsp + 0x60], r12
mov qword [rsp + 0x68], 0xf
mov byte [rsp + 0x50], 0
test sil, 1
je 0x1800b9833
and esi, 0xfffffffe
mov dword [rsp + 0x40], esi
lea rcx, [rbp + 0xe8]
call fcn.180013050
lea r13, [0x18032abd4]
test rbx, rbx
je 0x1800b9a6a
mov rcx, rbx
call fcn.1800b6fb0
mov rbx, rax
test rax, rax
je 0x1800b9a6a
nop word [rax + rax]
mov rcx, qword [rbx + 0x40]
test rcx, rcx
je 0x1800ba678
mov rax, qword [rcx]
lea rdx, [rbp - 0x18]
call qword [rax + 0x10]
bts esi, 0xd
mov dword [rsp + 0x40], esi
cmp qword [rbp - 8], 0
seta dil
btr esi, 0xd
mov dword [rsp + 0x40], esi
mov r8, qword [rbp]
cmp r8, 0xf
jbe 0x1800b98a7
mov rdx, qword [rbp - 0x18]
lea rcx, [rbp - 0x18]
call fcn.180015240
mov qword [rbp - 8], r12
mov qword [rbp], 0xf
mov byte [rbp - 0x18], 0
test dil, dil
je 0x1800b9a56
mov rcx, qword [rbx + 0x40]
test rcx, rcx
je 0x1800ba672
mov rax, qword [rcx]
lea rdx, [rbp + 0x28]
call qword [rax + 0x10]
bts esi, 0xe
mov dword [rsp + 0x40], esi
mov r8d, 2
mov rdx, r13
lea rcx, [rbp + 0x28]
call fcn.18002f050
xorps xmm0, xmm0
movups xmmword [rsp + 0x70], xmm0
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], r12
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x80], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts esi, 0xf
mov dword [rsp + 0x40], esi
lea rdx, [rbp - 0x70]
cmp qword [rbp - 0x58], 0xf
cmova rdx, qword [rbp - 0x70]
mov r8, qword [rbp - 0x60]
lea rcx, [rsp + 0x70]
call fcn.18002f050
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], r12
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x30], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], 0
bts esi, 0x10
mov dword [rsp + 0x40], esi
lea rdx, [rbp - 0x40]
lea rcx, [rbp - 0x70]
call fcn.18006d1e0
btr esi, 0x10
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp - 0x28]
cmp rdx, 0xf
jbe 0x1800b99c2
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b99bd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba666
call fcn.180286270
mov qword [rbp - 0x30], r12
mov qword [rbp - 0x28], 0xf
mov byte [rbp - 0x40], 0
btr esi, 0xf
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp - 0x78]
cmp rdx, 0xf
jbe 0x1800b9a16
inc rdx
mov rcx, qword [rsp + 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b9a11
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba66c
call fcn.180286270
mov qword [rbp - 0x80], r12
mov qword [rbp - 0x78], 0xf
mov byte [rsp + 0x70], 0
btr esi, 0xe
mov dword [rsp + 0x40], esi
mov r8, qword [rbp + 0x40]
cmp r8, 0xf
jbe 0x1800b9a46
mov rdx, qword [rbp + 0x28]
lea rcx, [rbp + 0x28]
call fcn.180015240
mov qword [rbp + 0x38], r12
mov qword [rbp + 0x40], 0xf
mov byte [rbp + 0x28], 0
mov rcx, rbx
call fcn.1800b6fb0
mov rbx, rax
test rax, rax
jne 0x1800b9860
mov rcx, r14
call fcn.1801fd640
mov rcx, rax
call fcn.1801fd780
mov rcx, qword [rbp - 0x50]
mov qword [rcx + 0x108], rax
mov ecx, dword [0x1804da908]
mov rax, qword [rbp + 0x1f0]
mov ebx, dword [rcx + rax]
mov rcx, qword [r14 + 0x40]
test rcx, rcx
je 0x1800ba660
mov rax, qword [rcx]
lea rdx, [rbp + 0x48]
call qword [rax + 0x10]
bts esi, 9
mov dword [rsp + 0x40], esi
mov rax, qword [rbp - 0x60]
sub r15, rax
cmp r15, 2
jb 0x1800ba67e
lea r9, [rbp - 0x70]
cmp qword [rbp - 0x58], 0xf
cmova r9, qword [rbp - 0x70]
mov qword [rsp + 0x30], 2
mov qword [rsp + 0x28], r13
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x70]
movzx edx, byte [rbp + 0x1f0]
lea rcx, [rbp + 0xc8]
call fcn.18009d780
bts esi, 0xb
mov dword [rsp + 0x40], esi
lea r9, [rbp + 0x48]
lea r8, [rbp + 0xc8]
movzx edx, byte [rbp + 0x1f0]
lea rcx, [rbp - 0x18]
call fcn.18009d580
bts esi, 0xc
mov dword [rsp + 0x40], esi
lea rax, [rbp - 0x18]
cmp qword [rbp], 0xf
cmova rax, qword [rbp - 0x18]
mov qword [rbp + 0x170], rax
mov rax, qword [rbp - 8]
mov qword [rbp + 0x178], rax
movabs rax, 0xc000000000000000
mov qword [rbp + 0x160], rax
mov dword [rbp + 0x180], ebx
movabs rax, 0x1000000000000010
mov qword [rbp + 0x168], rax
mov qword [rbp - 0x40], 2
lea rax, [rbp + 0x160]
mov qword [rbp - 0x38], rax
lea rax, str.return_____uintptr_t_this__0x:x__
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 0x29
movaps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x28]
call fcn.180025f00
bts esi, 0xa
mov dword [rsp + 0x40], esi
lea rdx, [rbp + 0x28]
cmp qword [rbp + 0x40], 0xf
cmova rdx, qword [rbp + 0x28]
mov rcx, qword [rbp - 0x50]
add rcx, 0x110
mov r8, qword [rbp + 0x38]
call fcn.18002f0e0
btr esi, 0xa
mov dword [rsp + 0x40], esi
lea rcx, [rbp + 0x28]
call fcn.180013050
btr esi, 0xc
mov dword [rsp + 0x40], esi
lea rcx, [rbp - 0x18]
call fcn.180013050
btr esi, 0xb
mov dword [rsp + 0x40], esi
lea rcx, [rbp + 0xc8]
call fcn.180013050
btr esi, 9
mov dword [rsp + 0x40], esi
lea rcx, [rbp + 0x48]
call fcn.180013050
nop
lea rcx, [rbp - 0x70]
call fcn.180013050
jmp 0x1800ba56d
lea rax, [0x18032a208]
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 4
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x50]
mov rcx, qword [rbp - 0x20]
call fcn.1801febb0
mov rcx, rax
call fcn.1801fd640
mov rcx, rax
call fcn.1801fd780
mov rcx, qword [rbp - 0x50]
mov qword [rcx + 0x108], rax
mov ecx, dword [0x1804da908]
mov rax, qword [rbp + 0x1f0]
mov edx, dword [rcx + rax]
mov dword [rsp + 0x78], edx
movabs rbx, 0x1000000000000000
mov qword [rsp + 0x70], rbx
mov qword [rbp - 0x40], 1
lea rax, [rsp + 0x70]
mov qword [rbp - 0x38], rax
lea rax, [0x18032ac08]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 0x2b
movaps xmm0, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x40], xmm0
movaps xmm1, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm1
lea r8, [rbp - 0x40]
lea rdx, [rsp + 0x50]
lea rcx, [rbp + 0x28]
call fcn.180025f00
bts esi, 0x12
mov dword [rsp + 0x40], esi
lea rdx, [rbp + 0x28]
cmp qword [rbp + 0x40], 0xf
cmova rdx, qword [rbp + 0x28]
mov rcx, qword [rbp - 0x50]
add rcx, 0x110
mov r8, qword [rbp + 0x38]
call fcn.18002f0e0
btr esi, 0x12
mov dword [rsp + 0x40], esi
lea rcx, [rbp + 0x28]
jmp 0x1800ba565
lea rax, str.double
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 6
movaps xmm0, xmmword [rsp + 0x50]
jmp 0x1800b96f5
mov eax, dword [0x1804dab28]
mov rcx, qword [rbp + 0x1f0]
movzx ebx, byte [rax + rcx]
mov eax, dword [0x1804dab2c]
movzx edi, byte [rax + rcx]
lea rax, str.bool
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 4
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x50]
mov rcx, qword [rbp - 0x20]
call fcn.1801febb0
mov rcx, qword [rbp - 0x50]
mov qword [rcx + 0x108], rax
mov ecx, dword [0x1804da908]
mov rax, qword [rbp + 0x1f0]
mov edx, dword [rcx + rax]
mov dword [rbp + 0x100], edx
movabs rax, 0x1000000000000000
mov qword [rbp + 0xe8], rax
mov dword [rbp + 0x1e0], ebx
mov dword [rbp + 0x104], ebx
movabs rax, 0x2000000000000004
mov qword [rbp + 0xf0], rax
mov eax, edi
mov dword [rbp + 0x1f8], eax
mov dword [rbp + 0x108], eax
movabs rax, 0x2000000000000008
mov qword [rbp + 0xf8], rax
mov qword [rsp + 0x50], 3
lea rax, [rbp + 0xe8]
mov qword [rsp + 0x58], rax
lea rax, str.return___uint8_t___uintptr_t_this__0x:x_________0_
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 0x3e
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 8]
call fcn.180025f00
or esi, 8
mov dword [rsp + 0x40], esi
lea rdx, [rbp + 8]
cmp qword [rbp + 0x20], 0xf
cmova rdx, qword [rbp + 8]
mov rcx, qword [rbp - 0x50]
add rcx, 0x110
mov r8, qword [rbp + 0x18]
call fcn.18002f0e0
and esi, 0xfffffff7
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp + 0x20]
cmp rdx, 0xf
jbe 0x1800b9ec7
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800b9ec2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba684
call fcn.180286270
movdqa xmm0, xmmword [0x1802f5620]
movdqu xmmword [rbp + 0x18], xmm0
mov byte [rbp + 8], 0
mov r13, qword [rbp + 0x78]
mov rax, r15
sub rax, r13
cmp rax, 4
jb 0x1800ba68a
lea r12, [rbp + 0x68]
cmp qword [rbp + 0x80], 0xf
cmova r12, qword [rbp + 0x68]
xorps xmm0, xmm0
movups xmmword [rbp - 0x70], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x60], xmm1
lea r14, [r13 + 4]
mov ebx, 0xf
lea rdi, [rbp - 0x70]
cmp r14, rbx
jbe 0x1800b9f98
mov rbx, r14
or rbx, 0xf
cmp rbx, r15
jbe 0x1800b9f5a
mov rbx, r15
movabs rax, 0x8000000000000000
add rax, 0x27
mov rcx, rax
call fcn.180286234
test rax, rax
je 0x1800ba690
lea rdi, [rax + 0x27]
and rdi, 0xffffffffffffffe0
mov qword [rdi - 8], rax
jmp 0x1800b9f94
cmp rbx, 0x16
mov eax, 0x16
cmovb rbx, rax
lea rcx, [rbx + 1]
cmp rcx, 0x1000
jb 0x1800b9f83
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1800ba636
jmp 0x1800b9f3b
test rcx, rcx
je 0x1800b9f92
call fcn.180286234
mov rdi, rax
jmp 0x1800b9f94
xor edi, edi
mov qword [rbp - 0x70], rdi
mov qword [rbp - 0x60], r14
mov qword [rbp - 0x58], rbx
mov dword [rdi], 0x5f746573
lea rcx, [rdi + 4]
mov r8, r13
mov rdx, r12
call fcn.1802bc970
mov byte [rdi + r14], 0
or esi, 0x10
mov dword [rsp + 0x40], esi
lea rax, [rbp - 0x70]
cmp qword [rbp - 0x58], 0xf
cmova rax, qword [rbp - 0x70]
mov qword [rsp + 0x50], rax
mov rax, qword [rbp - 0x60]
mov qword [rsp + 0x58], rax
lea rdx, [rsp + 0x50]
mov rcx, qword [rbp + 0x1e8]
call fcn.180201a30
mov rdi, rax
and esi, 0xffffffef
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp - 0x58]
cmp rdx, 0xf
jbe 0x1800ba033
inc rdx
mov rcx, qword [rbp - 0x70]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ba02e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba696
call fcn.180286270
movdqa xmm0, xmmword [0x1802f5620]
movdqu xmmword [rbp - 0x60], xmm0
mov byte [rbp - 0x70], 0
lea rax, [0x18032a208]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 4
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x50]
mov rcx, qword [rbp - 0x20]
call fcn.1801febb0
mov qword [rdi + 0x108], rax
lea rax, str.value
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 5
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x50]
mov rcx, rdi
call fcn.1801fe530
mov rbx, rax
lea rax, str.bool
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 4
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x50]
mov rcx, qword [rbp - 0x20]
call fcn.1801febb0
mov qword [rbx + 0x108], rax
mov ecx, dword [0x1804da908]
mov rax, qword [rbp + 0x1f0]
mov edx, dword [rcx + rax]
mov dword [rbp + 0x130], edx
movabs rbx, 0x1000000000000000
mov qword [rbp + 0x110], rbx
mov r14d, dword [rbp + 0x1e0]
mov dword [rbp + 0x134], r14d
movabs r15, 0x2000000000000004
mov qword [rbp + 0x118], r15
mov eax, dword [rbp + 0x1f8]
mov dword [rbp + 0x138], eax
movabs rcx, 0x2000000000000008
mov qword [rbp + 0x120], rcx
mov dword [rbp + 0x13c], eax
movabs rax, 0x200000000000000c
mov qword [rbp + 0x128], rax
mov qword [rsp + 0x50], 4
lea rax, [rbp + 0x110]
mov qword [rsp + 0x58], rax
lea rax, str._uint8_t___uintptr_t_this__0x:x______cur_value______value____:_0__
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 0x52
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x48]
call fcn.180025f00
or esi, 0x20
mov dword [rsp + 0x40], esi
mov ecx, dword [0x1804da908]
mov rax, qword [rbp + 0x1f0]
mov edx, dword [rcx + rax]
mov dword [rbp - 0x30], edx
mov qword [rbp - 0x40], rbx
mov dword [rbp - 0x2c], r14d
mov qword [rbp - 0x38], r15
mov qword [rsp + 0x50], 2
lea rax, [rbp - 0x40]
mov qword [rsp + 0x58], rax
lea rax, str.const_auto_cur_value___uint8_t___uintptr_t_this__0x:x____
mov qword [rsp + 0x70], rax
mov qword [rsp + 0x78], 0x42
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
movaps xmm1, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm1
lea r8, [rsp + 0x50]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 8]
call fcn.180025f00
or esi, 0x40
mov dword [rsp + 0x40], esi
mov rcx, qword [rbp + 0x18]
mov rdx, qword [rbp + 0x20]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x1800ba25d
lea rax, [rcx + 1]
mov qword [rbp + 0x18], rax
lea rax, [rbp + 8]
cmp rdx, 0xf
cmova rax, qword [rbp + 8]
mov word [rax + rcx], 0xa
lea rax, [rbp + 8]
jmp 0x1800ba283
mov qword [rsp + 0x20], 1
lea r9, [0x18032a4f0]
movzx r8d, byte [rbp + 0x1f0]
mov edx, 1
lea rcx, [rbp + 8]
call fcn.18001e240
xorps xmm0, xmm0
movdqu xmmword [rbp - 8], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x18], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 8], xmm1
xor r12d, r12d
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 0xf
mov byte [rax], r12b
bts esi, 7
mov dword [rsp + 0x40], esi
lea r9, [rbp + 0x48]
lea r8, [rbp - 0x18]
movzx edx, byte [rbp + 0x1f0]
lea rcx, [rbp + 0xa8]
call fcn.18009d580
bts esi, 8
mov dword [rsp + 0x40], esi
lea rdx, [rbp + 0xa8]
cmp qword [rbp + 0xc0], 0xf
cmova rdx, qword [rbp + 0xa8]
lea rcx, [rdi + 0x110]
mov r8, qword [rbp + 0xb8]
call fcn.18002f0e0
btr esi, 8
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp + 0xc0]
cmp rdx, 0xf
jbe 0x1800ba34a
inc rdx
mov rcx, qword [rbp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ba345
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba69c
call fcn.180286270
movdqa xmm0, xmmword [0x1802f5620]
movdqu xmmword [rbp + 0xb8], xmm0
mov byte [rbp + 0xa8], 0
btr esi, 7
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp]
cmp rdx, 0xf
jbe 0x1800ba3a4
inc rdx
mov rcx, qword [rbp - 0x18]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ba39f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba6a2
call fcn.180286270
movdqa xmm0, xmmword [0x1802f5620]
movdqu xmmword [rbp - 8], xmm0
mov byte [rbp - 0x18], 0
and esi, 0xffffffbf
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp + 0x20]
cmp rdx, 0xf
jbe 0x1800ba3f7
inc rdx
mov rcx, qword [rbp + 8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ba3f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba6a8
call fcn.180286270
movdqa xmm0, xmmword [0x1802f5620]
movdqu xmmword [rbp + 0x18], xmm0
mov byte [rbp + 8], 0
and esi, 0xffffffdf
mov dword [rsp + 0x40], esi
mov rdx, qword [rbp + 0x60]
cmp rdx, 0xf
jbe 0x1800ba44a
inc rdx
mov rcx, qword [rbp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ba445
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba6ae
call fcn.180286270
movdqa xmm0, xmmword [0x1802f5620]
movdqu xmmword [rbp + 0x58], xmm0
mov byte [rbp + 0x48], 0
jmp 0x1800ba56d
lea rax, str.int32_t
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 7
movaps xmm0, xmmword [rsp + 0x50]
jmp 0x1800b96f5
lea rax, [0x18032a208]
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x58], 4
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x50], xmm0
lea rdx, [rsp + 0x50]
mov rcx, qword [rbp - 0x20]
call fcn.1801febb0
mov rcx, rax
call fcn.1801fd640
mov rcx, qword [rbp - 0x50]
mov qword [rcx + 0x108], rax
mov ecx, dword [0x1804da908]
mov rax, qword [rbp + 0x1f0]
mov edx, dword [rcx + rax]
mov dword [rsp + 0x58], edx
movabs rax, 0x1000000000000000
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x70], 1
lea rax, [rsp + 0x50]
mov qword [rsp + 0x78], rax
lea rax, str.return__void___uintptr_t_this__0x:x__
mov qword [rbp - 0x40], rax
mov qword [rbp - 0x38], 0x29
movaps xmm0, xmmword [rsp + 0x70]
movdqa xmmword [rsp + 0x70], xmm0
movaps xmm1, xmmword [rbp - 0x40]
movdqa xmmword [rbp - 0x40], xmm1
lea r8, [rsp + 0x70]
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x48]
call fcn.180025f00
bts esi, 0x11
mov dword [rsp + 0x40], esi
lea rdx, [rbp + 0x48]
cmp qword [rbp + 0x60], 0xf
cmova rdx, qword [rbp + 0x48]
mov rcx, qword [rbp - 0x50]
add rcx, 0x110
mov r8, qword [rbp + 0x58]
call fcn.18002f0e0
btr esi, 0x11
mov dword [rsp + 0x40], esi
lea rcx, [rbp + 0x48]
call fcn.180013050
xor r12d, r12d
mov rdx, qword [rbp + 0x80]
cmp rdx, 0xf
jbe 0x1800ba5ab
inc rdx
mov rcx, qword [rbp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ba5a6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba6b4
call fcn.180286270
mov qword [rbp + 0x78], r12
mov qword [rbp + 0x80], 0xf
mov byte [rbp + 0x68], 0
mov rdx, qword [rbp + 0xa0]
cmp rdx, 0xf
jbe 0x1800ba5fb
inc rdx
mov rcx, qword [rbp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1800ba5f6
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1800ba62a
call fcn.180286270
mov qword [rbp + 0x98], r12
mov qword [rbp + 0xa0], 0xf
mov byte [rbp + 0x88], 0
xor eax, eax
add rsp, 0x298
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.18028ddc0
nop
call fcn.180015400
nop
call fcn.180015400
nop
call fcn.18028ddc0
nop
call fcn.18028ddc0
nop
call fcn.180015510
int3
call fcn.18028ddc0
nop
call fcn.18028ddc0
nop
call fcn.18028ddc0
nop
call fcn.1802819a4
nop
call fcn.18028ddc0
nop
call fcn.18028ddc0
int3
call fcn.1802819a4
nop
call fcn.1802819a4
nop
call fcn.180015510
nop
call fcn.18028ddc0
nop
call fcn.180015510
int3
call fcn.18028ddc0
nop
call fcn.18028ddc0
nop
call fcn.18028ddc0
nop
call fcn.18028ddc0
nop
call fcn.18028ddc0
nop
call fcn.18028ddc0
nop
call fcn.18028ddc0
int3