Function at 0x140002130
Capabilities:
Encode data using base64

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x2c8
movaps xmmword [rsp + 0x2b0], xmm6
lea rax, [0x14012d847]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0x70]
mov rcx, qword [rsp + 0x70]
movabs rdx, 0xdc5abe8be559213c
mov qword [rsp + 0x70], rdx
mov rdx, qword [rsp + 0x70]
call fcn.140001000
mov ecx, 0x8aa081a6
xor ecx, dword [rax]
mov dword [rsp + 0x30], ecx
lea rsi, [rsp + 0x70]
lea rdx, [rsp + 0x30]
mov r8d, 4
mov rcx, rsi
call fcn.1400ec200
cmp byte [rsp + 0x88], 3
jne 0x140003cd1
mov r14, qword [rsp + 0x70]
mov r15, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x80]
lea rax, [0x1401312a5]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xb04841260ea6384b
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.140001d30
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x76], 0
movabs rcx, 0x3e38386e4b4ca22a
xor rcx, qword [rax]
mov qword [rsp + 0x70], rcx
mov ecx, 0x1f897a74
xor ecx, dword [rax + 8]
mov dword [rsp + 0x78], ecx
movzx eax, word [rax + 0xc]
mov ecx, eax
shr ecx, 8
xor al, 0xf7
xor cl, 0xa0
mov byte [rsp + 0x7c], al
mov byte [rsp + 0x7d], cl
mov qword [rsp + 0x20], 0xe
lea rsi, [rsp + 0x290]
lea r9, [rsp + 0x70]
mov rcx, rsi
mov rdx, r15
mov r8, rbx
call fcn.1400ef970
mov rcx, rsi
call fcn.1400ceac0
mov r8, rdx
lea rbx, [rsp + 0x70]
mov rcx, rbx
mov rdx, rax
call fcn.1400f19b0
cmp dword [rsp + 0x70], 2
jne 0x1400022cd
mov rdi, qword [rsp + 0x78]
mov eax, edi
and eax, 3
cmp eax, 1
jne 0x1400022bc
lea rsi, [rdi - 1]
mov rcx, qword [rdi - 1]
mov rax, qword [rdi + 7]
call qword [rax]
mov rax, qword [rdi + 7]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x1400022a9
mov r8, qword [rax + 0x10]
mov rcx, qword [rsi]
call fcn.14000dd90
mov edx, 0x18
mov r8d, 8
mov rcx, rsi
call fcn.14000dd90
call fcn.1400f1f10
cmp qword [rax], 0
je 0x14000231f
add rax, 8
jmp 0x140002329
mov rdx, qword [rsp + 0x290]
test rdx, rdx
je 0x1400022ed
mov rcx, qword [rsp + 0x298]
mov r8d, 1
call fcn.14000dd90
test r14, r14
je 0x140002303
mov r8d, 1
mov rcx, r15
mov rdx, r14
call fcn.14000dd90
movaps xmm6, xmmword [rsp + 0x2b0]
add rsp, 0x2c8
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret
mov rcx, rax
xor edx, edx
call fcn.140005c20
movups xmm0, xmmword [rax]
inc qword [rax]
xorps xmm1, xmm1
movaps xmmword [rsp + 0x1a0], xmm1
mov qword [rsp + 0x1b0], 0
lea rax, [0x1401331e0]
mov qword [rsp + 0x1b8], rax
movaps xmmword [rsp + 0x1c0], xmm0
lea rax, [0x14013079e]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xc98fba0e67f1437f
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.140001a40
mov esi, dword [rax]
mov ecx, 4
mov edx, 1
call fcn.14000dd80
test rax, rax
je 0x140003cf2
xor esi, 0x1ed86cc0
mov qword [rsp + 0x30], 4
mov qword [rsp + 0x38], rax
mov dword [rax], esi
mov qword [rsp + 0x40], 4
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], 0
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x1a0]
lea r8, [rsp + 0x30]
lea rbx, [rsp + 0x70]
mov r9, rbx
call fcn.140005820
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x140002425
mov rdx, qword [rsp + 0x120]
test rdx, rdx
je 0x140002425
mov r8d, 1
call fcn.14000dd90
lea rax, [0x14012ecdd]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xef700c91187b122a
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.140001b90
mov edi, dword [rax]
movzx esi, word [rax + 4]
mov ecx, 6
mov edx, 1
call fcn.14000dd80
test rax, rax
je 0x140003cf9
mov ecx, esi
shr ecx, 8
xor cl, 0x99
xor sil, 0x43
xor edi, 0xd3ea73e8
mov qword [rsp + 0x30], 6
mov qword [rsp + 0x38], rax
mov dword [rax], edi
mov byte [rax + 4], sil
mov byte [rax + 5], cl
mov qword [rsp + 0x40], 6
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], 0
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x1a0]
lea r8, [rsp + 0x30]
lea rbx, [rsp + 0x70]
mov r9, rbx
call fcn.140005820
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x140002504
mov rdx, qword [rsp + 0x120]
test rdx, rdx
je 0x140002504
mov r8d, 1
call fcn.14000dd90
lea rax, [0x14012760c]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xcd65d2a1050a2c84
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.140001c70
mov rdi, qword [rax]
movzx esi, word [rax + 8]
movzx ebx, byte [rax + 0xa]
mov ecx, 0xb
mov edx, 1
call fcn.14000dd80
test rax, rax
je 0x140003d00
shl ebx, 0x10
or esi, ebx
mov ecx, esi
shr ecx, 0x10
xor cl, 0x18
mov edx, esi
shr edx, 8
xor dl, 0x56
xor sil, 0x6d
movabs r8, 0xdcea31bc4aee02e
xor rdi, r8
mov qword [rsp + 0x30], 0xb
mov qword [rsp + 0x38], rax
mov qword [rax], rdi
mov byte [rax + 8], sil
mov byte [rax + 9], dl
mov byte [rax + 0xa], cl
mov qword [rsp + 0x40], 0xb
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], 0
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x1a0]
lea r8, [rsp + 0x30]
lea rbx, [rsp + 0x70]
mov r9, rbx
call fcn.140005820
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x140002600
mov rdx, qword [rsp + 0x120]
test rdx, rdx
je 0x140002600
mov r8d, 1
call fcn.14000dd90
lea rax, [0x1401243df]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xffc13f2b15594c27
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.1400011c0
mov rdi, qword [rax]
mov esi, dword [rax + 8]
mov ecx, 0xc
mov edx, 1
call fcn.14000dd80
test rax, rax
je 0x140003cd5
xor esi, 0x4831fdf2
movabs rcx, 0x5994ada2a06e8941
xor rdi, rcx
mov qword [rsp + 0x30], 0xc
mov qword [rsp + 0x38], rax
mov qword [rax], rdi
mov dword [rax + 8], esi
mov qword [rsp + 0x40], 0xc
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], 0
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x1a0]
lea r8, [rsp + 0x30]
lea rbx, [rsp + 0x70]
mov r9, rbx
call fcn.140005820
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x1400026dd
mov rdx, qword [rsp + 0x120]
test rdx, rdx
je 0x1400026dd
mov r8d, 1
call fcn.14000dd90
lea rax, [0x14012d7bb]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xce586e8b1bcc3594
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.140001310
mov rdi, qword [rax]
mov esi, dword [rax + 8]
mov ecx, 0xc
mov edx, 1
call fcn.14000dd80
test rax, rax
je 0x140003cd5
xor esi, 0x5584caa6
movabs rcx, 0xea98fce46a6e4147
xor rdi, rcx
mov qword [rsp + 0x30], 0xc
mov qword [rsp + 0x38], rax
mov qword [rax], rdi
mov dword [rax + 8], esi
mov qword [rsp + 0x40], 0xc
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], 0
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x1a0]
lea r8, [rsp + 0x30]
lea rbx, [rsp + 0x70]
mov r9, rbx
call fcn.140005820
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x1400027ba
mov rdx, qword [rsp + 0x120]
test rdx, rdx
je 0x1400027ba
mov r8d, 1
call fcn.14000dd90
lea rax, [0x140124854]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xa27314ea6928691c
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.140001380
mov rdi, qword [rax]
mov rsi, qword [rax + 8]
movzx ebx, byte [rax + 0x10]
mov ecx, 0x11
mov edx, 1
call fcn.14000dd80
test rax, rax
je 0x140003d07
xor bl, 0xbb
movabs rcx, 0xd75c2ad8deecd397
xor rsi, rcx
movabs rcx, 0xb9c5ba363921e606
xor rdi, rcx
mov qword [rsp + 0x30], 0x11
mov qword [rsp + 0x38], rax
mov qword [rax], rdi
mov qword [rax + 8], rsi
mov byte [rax + 0x10], bl
mov qword [rsp + 0x40], 0x11
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], 0
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x1a0]
lea r8, [rsp + 0x30]
lea rbx, [rsp + 0x70]
mov r9, rbx
call fcn.140005820
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x1400028aa
mov rdx, qword [rsp + 0x120]
test rdx, rdx
je 0x1400028aa
mov r8d, 1
call fcn.14000dd90
lea rax, [0x14012ed2e]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0x74dddae855bb10f2
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.140001480
mov rdi, qword [rax]
mov esi, dword [rax + 8]
mov ecx, 0xc
mov edx, 1
call fcn.14000dd80
test rax, rax
je 0x140003cd5
xor esi, 0x8ed80be5
movabs rcx, 0x3479816fc64a9a0a
xor rdi, rcx
mov qword [rsp + 0x30], 0xc
mov qword [rsp + 0x38], rax
mov qword [rax], rdi
mov dword [rax + 8], esi
mov qword [rsp + 0x40], 0xc
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], 0
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x1a0]
lea r8, [rsp + 0x30]
lea rbx, [rsp + 0x70]
mov r9, rbx
call fcn.140005820
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x140002987
mov rdx, qword [rsp + 0x120]
test rdx, rdx
je 0x140002987
mov r8d, 1
call fcn.14000dd90
lea rax, [0x14012c114]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xdb7a5cd28f04dd7b
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.140001140
mov rsi, qword [rax]
movzx ebx, byte [rax + 8]
mov ecx, 9
mov edx, 1
call fcn.14000dd80
test rax, rax
je 0x140003d0e
xor bl, 0x5c
movabs rcx, 0x1d9c1ba86b62923a
xor rsi, rcx
mov qword [rsp + 0x30], 9
mov qword [rsp + 0x38], rax
mov qword [rax], rsi
mov byte [rax + 8], bl
mov qword [rsp + 0x40], 9
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], 0
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x1a0]
lea r8, [rsp + 0x30]
lea rbx, [rsp + 0x70]
mov r9, rbx
call fcn.140005820
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x140002a62
mov rdx, qword [rsp + 0x120]
test rdx, rdx
je 0x140002a62
mov r8d, 1
call fcn.14000dd90
lea rax, [0x14012398d]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xb1770464389818fe
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.1400015a0
mov rbx, qword [rax]
mov rdi, qword [rax + 8]
movzx esi, word [rax + 0x10]
mov ecx, 0x12
mov edx, 1
call fcn.14000dd80
test rax, rax
je 0x140003d15
mov qword [rsp + 0x1d0], r15
mov qword [rsp + 0x1d8], r14
mov ecx, esi
shr ecx, 8
xor cl, 0xb
xor sil, 0x68
movabs rdx, 0xcb066556e344b5a
xor rdi, rdx
movabs rdx, 0x2947a6d4181888d5
xor rbx, rdx
mov qword [rsp + 0x30], 0x12
mov qword [rsp + 0x38], rax
mov qword [rax], rbx
mov qword [rax + 8], rdi
mov byte [rax + 0x10], sil
mov byte [rax + 0x11], cl
mov qword [rsp + 0x40], 0x12
mov qword [rsp + 0x70], 0
mov qword [rsp + 0x78], 1
mov qword [rsp + 0x80], 0
lea rcx, [rsp + 0x120]
lea rdx, [rsp + 0x1a0]
lea r8, [rsp + 0x30]
lea rbx, [rsp + 0x70]
mov r9, rbx
call fcn.140005820
mov rcx, qword [rsp + 0x128]
test rcx, rcx
je 0x140002b6f
mov rdx, qword [rsp + 0x120]
test rdx, rdx
je 0x140002b6f
mov r8d, 1
call fcn.14000dd90
mov r9, qword [rsp + 0x1a0]
mov r15, qword [rsp + 0x1b0]
mov r8, qword [rsp + 0x1b8]
lea rcx, [r9 + 1]
movdqa xmm0, xmmword [r8]
test r9, r9
je 0x140002baf
mov edx, 0x30
mov rax, rcx
mul rdx
jo 0x140002bab
add r9, 0x11
add r9, rax
jae 0x140002bb3
xor edx, edx
jmp 0x140002bb8
xor edx, edx
jmp 0x140002bbe
mov edx, 0x10
mov r10, r8
sub r10, rax
lea rax, [r8 + 0x10]
pmovmskb r11d, xmm0
not r11d
add rcx, r8
mov qword [rsp + 0x120], rax
mov qword [rsp + 0x128], rcx
mov qword [rsp + 0x130], r8
mov word [rsp + 0x138], r11w
mov qword [rsp + 0x140], r15
mov qword [rsp + 0x148], r10
mov qword [rsp + 0x150], r9
mov qword [rsp + 0x158], rdx
test r15, r15
je 0x140003b19
lea r12, [rsp + 0x1e0]
xorps xmm6, xmm6
xor eax, eax
mov qword [rsp + 0x178], rax
jmp 0x140002c3f
mov r12, rbx
mov rbx, r14
test r15, r15
je 0x140003b19
movzx ecx, word [rsp + 0x138]
test cx, cx
je 0x140002c70
mov rax, qword [rsp + 0x130]
lea edx, [rcx - 1]
and edx, ecx
mov word [rsp + 0x138], dx
test rax, rax
jne 0x140002cc0
jmp 0x140003b19
mov rdx, qword [rsp + 0x120]
mov rax, qword [rsp + 0x130]
movdqa xmm0, xmmword [rdx]
pmovmskb ecx, xmm0
add rax, 0xfffffffffffffd00
add rdx, 0x10
cmp cx, 0xffff
je 0x140002c80
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x120], rdx
mov edx, 0xfffffffe
sub edx, ecx
not ecx
mov r8d, ecx
and r8d, edx
mov word [rsp + 0x138], r8w
dec r15
mov qword [rsp + 0x140], r15
tzcnt ecx, ecx
neg rcx
lea rcx, [rcx + rcx*2]
shl rcx, 4
mov rsi, qword [rax + rcx - 0x28]
test rsi, rsi
je 0x140003b19
mov r14, rbx
mov rbx, r12
lea rdx, [rax + rcx]
add rdx, 0xffffffffffffffd0
mov rdi, qword [rax + rcx - 0x30]
mov r13, qword [rax + rcx - 0x18]
mov rbp, qword [rax + rcx - 0x10]
mov r12, qword [rax + rcx - 8]
mov r8, qword [rdx + 0x10]
lea rcx, [rsp + 0x220]
mov rdx, rsi
call fcn.1400ec200
test rdi, rdi
je 0x140002d34
mov r8d, 1
mov rcx, rsi
mov rdx, rdi
call fcn.14000dd90
movzx eax, byte [rsp + 0x238]
cmp eax, 2
je 0x140002ed0
cmp eax, 3
jne 0x140002eb0
mov rsi, qword [rsp + 0x220]
mov rdi, qword [rsp + 0x228]
mov r8, qword [rsp + 0x230]
mov qword [rsp + 0x20], r12
mov r12, rbx
mov rcx, rbx
mov rdx, rdi
mov r9, rbp
call fcn.1400ef970
test r13, r13
je 0x140002d92
mov r8d, 1
mov rcx, rbp
mov rdx, r13
call fcn.14000dd90
test rsi, rsi
mov rbx, r14
je 0x140002dab
mov r8d, 1
mov rcx, rdi
mov rdx, rsi
call fcn.14000dd90
mov rcx, r12
call fcn.1400ceac0
mov r8, rdx
mov rcx, rbx
mov rdx, rax
call fcn.1400f19b0
cmp dword [rsp + 0x70], 2
lea r14, [rsp + 0x30]
jne 0x140002eef
mov rsi, qword [rsp + 0x78]
mov eax, esi
and eax, 3
cmp eax, 1
jne 0x140002e1b
lea r13, [rsi - 1]
mov rcx, qword [rsi - 1]
mov rax, qword [rsi + 7]
call qword [rax]
mov rax, qword [rsi + 7]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x140002e08
mov r8, qword [rax + 0x10]
mov rcx, qword [r13]
call fcn.14000dd90
mov edx, 0x18
mov r8d, 8
mov rcx, r13
call fcn.14000dd90
mov rcx, r12
call fcn.1400ceac0
mov r8, rdx
mov rcx, rbx
mov rdx, rax
call fcn.1400f19b0
cmp dword [rsp + 0x70], 2
jne 0x140002f29
mov rdi, qword [rsp + 0x78]
mov eax, edi
and eax, 3
cmp eax, 1
jne 0x140002e85
lea rsi, [rdi - 1]
mov rcx, qword [rdi - 1]
mov rax, qword [rdi + 7]
call qword [rax]
mov rax, qword [rdi + 7]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x140002e72
mov r8, qword [rax + 0x10]
mov rcx, qword [rsi]
call fcn.14000dd90
mov edx, 0x18
mov r8d, 8
mov rcx, rsi
call fcn.14000dd90
mov rdx, qword [rsp + 0x1e0]
test rdx, rdx
je 0x140002c36
mov rcx, qword [rsp + 0x1e8]
mov r8d, 1
call fcn.14000dd90
jmp 0x140002c36
mov rdx, qword [rsp + 0x220]
test rdx, rdx
je 0x140002ed0
mov rcx, qword [rsp + 0x228]
mov r8d, 1
call fcn.14000dd90
test r13, r13
je 0x140002c30
mov r8d, 1
mov rcx, rbp
mov rdx, r13
call fcn.14000dd90
jmp 0x140002c30
mov rsi, qword [rsp + 0x1e8]
mov r13, qword [rsp + 0x1f0]
test r13, r13
je 0x14000302f
js 0x140003cdc
mov edx, 1
mov rcx, r13
call fcn.14000dd80
test rax, rax
jne 0x140003034
jmp 0x140003ce3
mov rcx, r12
call fcn.1400ceac0
mov r13, rax
mov rbp, rdx
lea rax, [0x14012f062]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xea140c87da20d570
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.140001ad0
mov dword [rsp + 0x70], 0
mov dword [rsp + 0x73], 0
mov ecx, dword [rax]
mov edx, 0x77fe0899
xor ecx, edx
mov dword [rsp + 0x70], ecx
movzx ecx, word [rax + 4]
movzx eax, byte [rax + 6]
mov edx, ecx
shr edx, 8
xor cl, 0xf
xor dl, 0xe
mov byte [rsp + 0x74], cl
mov byte [rsp + 0x75], dl
xor al, 0x43
mov byte [rsp + 0x76], al
mov qword [rsp + 0x20], 7
lea rcx, [rsp + 0x200]
mov rdx, r13
mov r8, rbp
mov r9, rbx
call fcn.1400ef970
mov rcx, rbx
call fcn.1400ec340
cmp byte [rsp + 0x88], 2
je 0x140003cd1
movdqu xmm0, xmmword [rsp + 0x70]
movups xmm1, xmmword [rsp + 0x80]
movaps xmmword [rsp + 0x40], xmm1
movdqa xmmword [rsp + 0x30], xmm0
mov rsi, qword [rsp + 0x208]
mov r13, qword [rsp + 0x210]
test r13, r13
lea r15, [rsp + 0x260]
je 0x1400030dc
js 0x140003cdc
mov edx, 1
mov rcx, r13
call fcn.14000dd80
test rax, rax
jne 0x1400030e1
jmp 0x140003ce3
mov eax, 1
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], rax
mov rcx, rax
mov rdx, rsi
mov r8, r13
call fcn.14012ca80
mov qword [rsp + 0x80], r13
movzx eax, byte [rsp + 0x1f8]
mov byte [rsp + 0x88], al
call fcn.14000e4f0
mov byte [rsp + 0x30], al
mov rcx, rbx
call fcn.1400ceac0
mov r8, rdx
mov rcx, r14
mov rdx, rax
call fcn.1400f4450
mov rbp, rax
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x14000309f
mov rcx, qword [rsp + 0x78]
mov r8d, 1
call fcn.14000dd90
test rbp, rbp
je 0x140002e1b
mov eax, ebp
and eax, 3
cmp eax, 1
jne 0x140002e1b
mov r13, rbp
dec r13
mov rcx, qword [rbp - 1]
mov rax, qword [rbp + 7]
call qword [rax]
mov rax, qword [rbp + 7]
mov rdx, qword [rax + 8]
test rdx, rdx
jne 0x140002dfb
jmp 0x140002e08
mov eax, 1
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], rax
mov rcx, rax
mov rdx, rsi
mov r8, r13
call fcn.14012ca80
mov qword [rsp + 0x80], r13
movzx eax, byte [rsp + 0x218]
mov byte [rsp + 0x88], al
mov rcx, r14
call fcn.1400ceac0
mov rsi, rax
mov rdi, rdx
mov rcx, rbx
call fcn.1400ceac0
mov qword [rsp + 0x20], rdx
mov rcx, r15
mov rdx, rsi
mov r8, rdi
mov r9, rax
call fcn.1400f1d60
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x140003156
mov rcx, qword [rsp + 0x78]
mov r8d, 1
call fcn.14000dd90
mov rdx, qword [rsp + 0x30]
test rdx, rdx
je 0x140003170
mov rcx, qword [rsp + 0x38]
mov r8d, 1
call fcn.14000dd90
cmp qword [rsp + 0x260], 0
je 0x1400031c7
mov rdi, qword [rsp + 0x268]
mov eax, edi
and eax, 3
cmp eax, 1
jne 0x1400031c7
lea rsi, [rdi - 1]
mov rcx, qword [rdi - 1]
mov rax, qword [rdi + 7]
call qword [rax]
mov rax, qword [rdi + 7]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x1400031b4
mov r8, qword [rax + 0x10]
mov rcx, qword [rsi]
call fcn.14000dd90
mov edx, 0x18
mov r8d, 8
mov rcx, rsi
call fcn.14000dd90
lea rax, [0x14012b40a]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xa561ce13cb6d2bbb
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.140001780
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x33], 0
mov ecx, dword [rax]
mov edx, 0x1aaf78e1
xor ecx, edx
mov dword [rsp + 0x30], ecx
movzx ecx, word [rax + 4]
movzx eax, byte [rax + 6]
mov edx, ecx
shr edx, 8
xor cl, 0x38
xor dl, 0x65
mov byte [rsp + 0x34], cl
mov byte [rsp + 0x35], dl
xor al, 0xd7
mov byte [rsp + 0x36], al
mov r8d, 7
mov rcx, rbx
mov rdx, r14
call fcn.1400f4be0
mov rcx, rbx
mov edx, 0x8000000
call fcn.1400f7030
lea rax, [0x14012c167]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0xdb8d9d953fc23572
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.140001a10
mov word [rsp + 0x30], 0
movzx eax, word [rax]
mov ecx, eax
shr ecx, 8
xor al, 0xca
xor cl, 0x99
mov byte [rsp + 0x30], al
mov byte [rsp + 0x31], cl
mov r8d, 2
mov rcx, rbx
mov rdx, r14
call fcn.1400f4cc0
lea rax, [0x14012d536]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0xf0a9b14d3225031b
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.1400012b0
mov qword [rsp + 0x30], 0
mov rax, qword [rax]
movabs rcx, 0x8d772ef2c251090a
xor rax, rcx
mov qword [rsp + 0x30], rax
mov r8d, 8
mov rcx, rbx
mov rdx, r14
call fcn.1400f4cc0
lea rax, [0x14012944a]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x9e4bb77076c53cc9
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.140001030
mov dword [rsp + 0x30], 0
mov dword [rsp + 0x33], 0
mov ecx, dword [rax]
mov edx, 0xa70510de
xor ecx, edx
mov dword [rsp + 0x30], ecx
movzx ecx, word [rax + 4]
movzx eax, byte [rax + 6]
mov edx, ecx
shr edx, 8
xor cl, 0x71
xor dl, 0x98
mov byte [rsp + 0x34], cl
mov byte [rsp + 0x35], dl
xor al, 0xc4
mov byte [rsp + 0x36], al
mov r8d, 7
mov rcx, rbx
mov rdx, r14
call fcn.1400f4cc0
lea rax, [0x14012a527]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0xf398a3ce50ea2ca9
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.140001550
mov word [rsp + 0x30], 0
mov byte [rsp + 0x32], 0
movzx ecx, byte [rax + 2]
movzx eax, word [rax]
mov edx, eax
shr edx, 8
xor al, 0x53
xor dl, 0x57
mov byte [rsp + 0x30], al
mov byte [rsp + 0x31], dl
xor cl, 7
mov byte [rsp + 0x32], cl
mov r8d, 3
mov rcx, rbx
mov rdx, r14
call fcn.1400f4cc0
lea rax, [0x1401243a0]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0xb5ebfaaf7b988aa1
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.140001910
mov dword [rsp + 0x30], 0
mov word [rsp + 0x34], 0
mov ecx, dword [rax]
mov edx, 0xdf7c7d0b
xor ecx, edx
mov dword [rsp + 0x30], ecx
movzx eax, word [rax + 4]
mov ecx, eax
shr ecx, 8
xor al, 0xc5
xor cl, 0x99
mov byte [rsp + 0x34], al
mov byte [rsp + 0x35], cl
mov r8d, 6
mov rcx, rbx
mov rdx, r14
call fcn.1400f4cc0
lea rax, [0x140132cf9]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x5a76ffbb92df95a5
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.1400014b0
mov word [rsp + 0x30], 0
mov byte [rsp + 0x32], 0
movzx ecx, byte [rax + 2]
movzx eax, word [rax]
mov edx, eax
shr edx, 8
xor al, 0x2d
xor dl, 0xfc
mov byte [rsp + 0x30], al
mov byte [rsp + 0x31], dl
xor cl, 0xa8
mov byte [rsp + 0x32], cl
mov r8d, 3
mov rcx, rbx
mov rdx, r14
call fcn.1400f4cc0
lea rax, [0x14012a2c4]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x6ace5a26b8e27fea
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.1400017f0
mov byte [rsp + 0x30], 0
movzx eax, byte [rax]
xor al, 0xf8
mov byte [rsp + 0x30], al
mov r8d, 1
mov rcx, rbx
mov rdx, r14
call fcn.1400f4cc0
lea rax, [0x1401255b7]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x4eabea0c7e8e8d08
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.140001250
mov word [rsp + 0x30], 0
mov byte [rsp + 0x32], 0
movzx ecx, byte [rax + 2]
movzx eax, word [rax]
mov edx, eax
shr edx, 8
not al
xor dl, 0x20
mov byte [rsp + 0x30], al
mov byte [rsp + 0x31], dl
xor cl, 0xc9
mov byte [rsp + 0x32], cl
mov r8d, 3
mov rcx, rbx
mov rdx, r14
call fcn.1400f4cc0
lea rax, [0x14012ab3e]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0x20c2b8965fd423a5
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.140001cd0
movaps xmmword [rsp + 0x160], xmm6
mov word [rsp + 0x170], 0
mov rcx, qword [rax]
movabs rdx, 0x720723a9c40a991d
xor rcx, rdx
mov qword [rsp + 0x160], rcx
mov rcx, qword [rax + 8]
movabs rdx, 0x5e4127a4583b5a90
xor rcx, rdx
mov qword [rsp + 0x168], rcx
movzx eax, word [rax + 0x10]
mov ecx, eax
shr ecx, 8
xor al, 0x3e
xor cl, 0xc5
mov byte [rsp + 0x170], al
mov byte [rsp + 0x171], cl
lea rax, [rsp + 0x160]
mov qword [rsp + 0x240], rax
mov qword [rsp + 0x248], 0x12
call fcn.1400dfae0
mov r13, rax
lea rbp, [rax + 0x10]
mov rcx, qword [rax + 0x110]
cmp rcx, 0x3f
jae 0x140003699
lea rax, [rcx + 2]
mov qword [r13 + 0x110], rax
mov rdi, qword [r13 + rcx*4 + 0x10]
cmp rcx, 0x3d
jb 0x14000374f
cmp rax, 0x3f
jne 0x140003a72
mov r15d, dword [r13 + 0x10c]
mov rsi, r13
add rsi, 0x120
call fcn.14000e4f0
mov rcx, qword [r13 + 0x158]
test rcx, rcx
jle 0x140003ab6
cmp qword [r13 + 0x160], rax
js 0x140003ab6
add rcx, 0xffffffffffffff00
mov qword [r13 + 0x158], rcx
mov rcx, rsi
mov edx, 6
mov r8, rbp
call fcn.1400dfe00
jmp 0x140003ac4
jne 0x1400036e6
mov r15d, dword [r13 + 0x10c]
mov rsi, r13
add rsi, 0x120
call fcn.14000e4f0
mov rcx, qword [r13 + 0x158]
test rcx, rcx
jle 0x14000372a
cmp qword [r13 + 0x160], rax
js 0x14000372a
add rcx, 0xffffffffffffff00
mov qword [r13 + 0x158], rcx
mov rcx, rsi
mov edx, 6
mov r8, rbp
call fcn.1400dfe00
jmp 0x140003738
mov rsi, r13
add rsi, 0x120
call fcn.14000e4f0
mov rcx, qword [r13 + 0x158]
test rcx, rcx
jle 0x14000375d
cmp qword [r13 + 0x160], rax
js 0x14000375d
add rcx, 0xffffffffffffff00
mov qword [r13 + 0x158], rcx
mov rcx, rsi
mov edx, 6
mov r8, rbp
call fcn.1400dfe00
jmp 0x14000376b
mov rcx, rsi
mov rdx, rbp
mov r8, rax
call fcn.140006990
mov edi, dword [rbp]
shl rdi, 0x20
or rdi, r15
mov eax, 1
lea r15, [rsp + 0x260]
lea rdx, [rax + 2]
mov rcx, qword [rsp + 0x178]
jmp 0x14000377b
mov rcx, rsi
mov rdx, rbp
mov r8, rax
call fcn.140006990
mov rdi, qword [rbp]
mov eax, 2
mov edx, 4
xor ecx, ecx
mov qword [r13 + 0x110], rdx
mov rax, qword [r13 + rax*4 + 0x10]
or rcx, rax
mov qword [rsp + 0x250], rdi
mov qword [rsp + 0x258], rcx
lea rax, [rsp + 0x240]
mov qword [rsp + 0x260], rax
lea rax, [0x1400067a0]
mov qword [rsp + 0x268], rax
lea rax, [rsp + 0x250]
mov qword [rsp + 0x270], rax
lea rax, [0x140100ec0]
mov qword [rsp + 0x278], rax
lea rax, [0x140133038]
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], 2
mov qword [rsp + 0x30], 0
mov qword [rsp + 0x50], r15
mov qword [rsp + 0x58], 2
lea rcx, [rsp + 0x180]
mov rdx, r14
call fcn.1400fee40
dec qword [r13]
jne 0x140003833
dec qword [r13 + 8]
jne 0x140003833
mov edx, 0x170
mov r8d, 0x10
mov rcx, r13
call fcn.14000dd90
mov rsi, qword [rsp + 0x188]
mov r8, qword [rsp + 0x190]
mov rcx, rbx
mov rdx, rsi
call fcn.1400f4cc0
mov rdx, qword [rsp + 0x180]
test rdx, rdx
je 0x140003869
mov r8d, 1
mov rcx, rsi
call fcn.14000dd90
lea rax, [0x14012b875]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0x30]
movabs rax, 0xd92ab305fc5f7070
mov qword [rsp + 0x30], rax
mov rdx, qword [rsp + 0x30]
call fcn.140001510
mov word [rsp + 0x30], 0
mov byte [rsp + 0x32], 0
movzx ecx, byte [rax + 2]
movzx eax, word [rax]
mov edx, eax
shr edx, 8
xor al, 0xd1
xor dl, 0x50
mov byte [rsp + 0x30], al
mov byte [rsp + 0x31], dl
xor cl, 6
mov byte [rsp + 0x32], cl
mov r8d, 3
mov rcx, rbx
mov rdx, r14
call fcn.1400f4cc0
mov r13, qword [rsp + 0x208]
mov rbp, qword [rsp + 0x210]
test rbp, rbp
je 0x140003905
js 0x140003cdc
mov edx, 1
mov rcx, rbp
call fcn.14000dd80
mov rsi, rax
test rax, rax
jne 0x14000390a
jmp 0x140003d26
mov esi, 1
mov rcx, rsi
mov rdx, r13
mov r8, rbp
call fcn.14012ca80
movzx eax, byte [rsp + 0x218]
mov qword [rsp + 0x180], rbp
mov qword [rsp + 0x188], rsi
mov qword [rsp + 0x190], rbp
mov byte [rsp + 0x198], al
lea rcx, [rsp + 0x180]
call fcn.1400ceac0
mov rcx, rax
call fcn.1400f10e0
test rax, rax
je 0x140003cd1
mov r8, rdx
mov rcx, r15
mov rdx, rax
call fcn.140102410
mov qword [rsp + 0x160], 0
mov qword [rsp + 0x168], 1
mov qword [rsp + 0x170], 0
mov rcx, r14
lea rdx, [rsp + 0x160]
lea r8, [0x140133000]
call fcn.140102750
mov rcx, r15
mov rdx, r14
call fcn.140106550
test al, al
jne 0x140003cd1
mov rsi, qword [rsp + 0x168]
mov r8, qword [rsp + 0x170]
mov rcx, rbx
mov rdx, rsi
call fcn.1400f4cc0
mov rdx, qword [rsp + 0x160]
test rdx, rdx
je 0x1400039ef
mov r8d, 1
mov rcx, rsi
call fcn.14000dd90
mov rdx, qword [rsp + 0x180]
test rdx, rdx
je 0x140003a0f
mov rcx, qword [rsp + 0x188]
mov r8d, 1
call fcn.14000dd90
mov rcx, r14
mov rdx, rbx
call fcn.1400f7040
mov rcx, r14
call fcn.140001ef0
mov rcx, rbx
call fcn.140001db0
mov rdx, qword [rsp + 0x200]
test rdx, rdx
je 0x140003a45
mov r8d, 1
mov rcx, r13
call fcn.14000dd90
mov rdx, qword [rsp + 0x1e0]
test rdx, rdx
je 0x140003a65
mov rcx, qword [rsp + 0x1e8]
mov r8d, 1
call fcn.14000dd90
mov r15, qword [rsp + 0x140]
jmp 0x140002c36
mov rsi, r13
add rsi, 0x120
call fcn.14000e4f0
mov rcx, qword [r13 + 0x158]
test rcx, rcx
jle 0x140003aef
cmp qword [r13 + 0x160], rax
js 0x140003aef
add rcx, 0xffffffffffffff00
mov qword [r13 + 0x158], rcx
mov rcx, rsi
mov edx, 6
mov r8, rbp
call fcn.1400dfe00
jmp 0x140003afd
mov rcx, rsi
mov rdx, rbp
mov r8, rax
call fcn.140006990
mov qword [r13 + 0x110], 1
mov eax, dword [r13 + 0x10]
shl rax, 0x20
or rax, r15
mov rcx, qword [rsp + 0x178]
lea r15, [rsp + 0x260]
jmp 0x140003787
mov rcx, rsi
mov rdx, rbp
mov r8, rax
call fcn.140006990
mov qword [r13 + 0x110], 2
mov rax, qword [r13 + 0x10]
mov rcx, qword [rsp + 0x178]
jmp 0x140003787
lea rcx, [rsp + 0x120]
call fcn.14000c530
lea rax, [0x140132259]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0x249739d66c6f3c18
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.1400012d0
mov ecx, 0x76179b04
xor ecx, dword [rax]
mov dword [rsp + 0x30], ecx
lea rsi, [rsp + 0x70]
lea rdx, [rsp + 0x30]
mov r8d, 4
mov rcx, rsi
call fcn.1400ec200
cmp byte [rsp + 0x88], 3
jne 0x140003cd1
mov rbx, qword [rsp + 0x70]
mov r14, qword [rsp + 0x78]
mov r15, qword [rsp + 0x80]
lea rax, [0x140124939]
mov qword [rsp + 0x70], rax
mov rcx, qword [rsp + 0x70]
movabs rax, 0xf08d77f63398dd12
mov qword [rsp + 0x70], rax
mov rdx, qword [rsp + 0x70]
call fcn.140001980
movabs rcx, 0x149e7aeabf0c331d
xor rcx, qword [rax]
mov qword [rsp + 0x30], rcx
mov ecx, 0xa3a9b66b
xor ecx, dword [rax + 8]
mov dword [rsp + 0x38], ecx
movzx eax, word [rax + 0xc]
mov ecx, eax
shr ecx, 8
xor al, 0xf9
xor cl, 7
mov byte [rsp + 0x3c], al
mov byte [rsp + 0x3d], cl
mov qword [rsp + 0x20], 0xe
lea rsi, [rsp + 0x70]
lea r9, [rsp + 0x30]
mov rcx, rsi
mov rdx, r14
mov r8, r15
call fcn.1400ef970
mov rcx, rsi
call fcn.1400ceac0
lea r8, [0x140133030]
mov rcx, rax
xor r9d, r9d
call fcn.1400f41f0
mov r15, rax
mov rdx, qword [rsp + 0x70]
test rdx, rdx
je 0x140003c49
mov rcx, qword [rsp + 0x78]
mov r8d, 1
call fcn.14000dd90
test r15, r15
je 0x140003c95
mov eax, r15d
and eax, 3
cmp eax, 1
jne 0x140003c95
mov rsi, r15
dec rsi
mov rcx, qword [r15 - 1]
mov rax, qword [r15 + 7]
call qword [rax]
mov rax, qword [r15 + 7]
mov rdx, qword [rax + 8]
test rdx, rdx
je 0x140003c82
mov r8, qword [rax + 0x10]
mov rcx, qword [rsi]
call fcn.14000dd90
mov edx, 0x18
mov r8d, 8
mov rcx, rsi
call fcn.14000dd90
test rbx, rbx
je 0x140003cab
mov r8d, 1
mov rcx, r14
mov rdx, rbx
call fcn.14000dd90
mov rdx, qword [rsp + 0x290]
test rdx, rdx
mov r14, qword [rsp + 0x1d8]
mov r15, qword [rsp + 0x1d0]
jne 0x1400022da
jmp 0x1400022ed
ud2
mov ecx, 0xc
jmp 0x140003d1a
call fcn.1400f4aa0
ud2
mov edx, 1
mov rcx, r13
call fcn.140130c60
ud2
mov ecx, 4
jmp 0x140003d1a
mov ecx, 6
jmp 0x140003d1a
mov ecx, 0xb
jmp 0x140003d1a
mov ecx, 0x11
jmp 0x140003d1a
mov ecx, 9
jmp 0x140003d1a
mov ecx, 0x12
mov edx, 1
call fcn.140130c60
ud2
mov edx, 1
mov rcx, rbp
call fcn.140130c60
ud2