Function at 0x1400f9f60
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x350
lea rbp, [rsp + 0x80]
mov eax, 0x10
mov qword [rbp + 0x60], rax
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x60]
mov rcx, rsp
mov qword [rbp + 0x78], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x60]
mov rcx, rsp
mov qword [rbp + 0x18], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x60]
mov rcx, rsp
mov qword [rbp + 0x20], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x60]
mov rcx, rsp
mov qword [rbp + 0x28], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x60]
mov rcx, rsp
mov qword [rbp + 0x30], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x60]
mov rcx, rsp
mov qword [rbp + 0x38], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x60]
mov rcx, rsp
mov qword [rbp + 0x40], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x60]
mov rcx, rsp
mov qword [rbp + 0x48], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x60]
mov rcx, rsp
mov qword [rbp + 0x50], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x60]
mov rcx, rsp
mov qword [rbp + 0x58], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, qword [rbp + 0x60]
mov rcx, rsp
mov qword [rbp + 0x68], rcx
call fcn.1402a7dd0
sub rsp, rax
mov rax, rsp
mov qword [rbp + 0x70], rax
mov rax, qword [0x1402c6150]
mov ecx, dword [rax]
sub rsp, 0x20
call fcn.14000eaf8
mov rcx, qword [rbp + 0x78]
add rsp, 0x20
mov qword [rbp + 0x88], rax
add rax, 0x60
mov qword [rbp + 0x80], rax
mov ax, 0x201b
xor ax, 0x219b
mov word [rcx], ax
sub rsp, 0x20
call fcn.14008b2d0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x88]
mov qword [rbp + 0x90], rcx
cmp byte [rax + 0x60], 0
jne 0x1400fab2a
mov rax, qword [rbp + 0x90]
mov rcx, qword [rax]
mov qword [rbp + 0x298], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x2a0], rax
lea rcx, [rbp + 0x2a8]
lea rdx, [rbp + 0x298]
sub rsp, 0x20
call fcn.140035a4a
add rsp, 0x20
mov rcx, qword [rbp + 0x2a8]
mov rax, qword [rbp + 0x2b0]
mov qword [rbp + 0x288], rcx
mov qword [rbp + 0x290], rax
lea rcx, [0x1402d58b0]
lea rdx, [rbp + 0x288]
sub rsp, 0x20
call fcn.1400346d0
add rsp, 0x20
mov word [rbp + 0x2ce], 7
lea rcx, [rbp + 0x2ce]
sub rsp, 0x20
call fcn.14008b2d0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp + 0x10], rcx
cmp byte [rax], 0
jne 0x1400fab2a
mov ecx, dword [0x1402ae4b0]
mov edx, dword [0x1402ae4b4]
mov eax, ecx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
mov ecx, edx
xor ecx, 0xffffffff
xor edx, 0xffffffff
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
and eax, 0x52566ca1
and eax, 0xa5aba8d0
mov ecx, eax
add ecx, 1
xor eax, 0xffffffff
or eax, 0x812050d
add eax, ecx
cmp eax, 0xc1b2bf50
je 0x1400fab33
mov eax, dword [0x1402ae4b8]
xor edx, edx
div dword [0x1402ae4bc]
mov ecx, eax
mov rax, qword [rbp + 0x10]
or ecx, ecx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xa3dd24b4
mov r8d, 0x7b643957
xor r8d, 0xd8b91de3
mov r9d, 0x42124f92
xor r9d, 0xbdedb06d
xor r8d, r9d
and edx, r8d
mov r8d, 0xe140600d
xor r8d, 0x1ebf9ff2
xor ecx, r8d
xor edx, 0xffffffff
and ecx, edx
mov edx, 0x3eda8dbd
xor edx, 0xe272fd71
add ecx, edx
sub ecx, 0xd58e746
mov edx, 0x517f361
xor edx, 0xd9bf83ad
sub ecx, edx
add ecx, 0x135f8fb2
mov dword [rbp - 4], ecx
mov ecx, 0xf216d781
xor ecx, 0xa0e37bfc
mov dword [rbp - 8], ecx
mov rcx, qword [rax]
mov qword [rbp + 0x268], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x270], rax
lea rcx, [rbp + 0x278]
lea rdx, [rbp + 0x268]
sub rsp, 0x20
call fcn.140035a4a
mov rdx, qword [rbp + 0x30]
add rsp, 0x20
mov rcx, qword [rbp + 0x278]
mov rax, qword [rbp + 0x280]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea rcx, [0x1402d58b0]
sub rsp, 0x20
call fcn.1400346d0
add rsp, 0x20
mov word [rbp + 0x2cc], 0xb0
lea rcx, [rbp + 0x2cc]
sub rsp, 0x20
call fcn.14008b2d0
mov rdx, qword [rbp + 0x80]
mov ecx, dword [rbp - 8]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp - 4]
mov qword [rbp], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp + 0xf], dl
cmp eax, ecx
je 0x1400fab33
mov al, byte [rbp + 0xf]
test al, 1
jne 0x1400fa2e5
jmp 0x1400fab2a
mov rax, qword [rbp]
mov rcx, qword [rax]
mov qword [rbp + 0x248], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x250], rax
lea rcx, [rbp + 0x258]
lea rdx, [rbp + 0x248]
sub rsp, 0x20
call fcn.140035a4a
add rsp, 0x20
mov rcx, qword [rbp + 0x258]
mov rax, qword [rbp + 0x260]
mov qword [rbp + 0x238], rcx
mov qword [rbp + 0x240], rax
lea rcx, [0x1402d58b0]
lea rdx, [rbp + 0x238]
sub rsp, 0x20
call fcn.1400346d0
add rsp, 0x20
mov word [rbp + 0x2ca], 0x259
lea rcx, [rbp + 0x2ca]
sub rsp, 0x20
call fcn.14008b2d0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x10], rcx
cmp byte [rax], 0
jne 0x1400fab2a
mov rax, qword [rbp - 0x10]
mov rcx, qword [rax]
mov qword [rbp + 0x218], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x220], rax
lea rcx, [rbp + 0x228]
lea rdx, [rbp + 0x218]
sub rsp, 0x20
call fcn.140035a4a
add rsp, 0x20
mov rcx, qword [rbp + 0x228]
mov rax, qword [rbp + 0x230]
mov qword [rbp + 0x208], rcx
mov qword [rbp + 0x210], rax
lea rcx, [0x1402d58b0]
lea rdx, [rbp + 0x208]
sub rsp, 0x20
call fcn.1400346d0
add rsp, 0x20
mov ax, 0x5e0c
xor ax, 0x5c89
mov word [rbp + 0x2c8], ax
lea rcx, [rbp + 0x2c8]
sub rsp, 0x20
call fcn.14008b2d0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x18], rcx
cmp byte [rax], 0
jne 0x1400fab2a
mov rax, qword [rbp - 0x18]
mov rcx, qword [rax]
mov qword [rbp + 0x1e8], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1f0], rax
lea rcx, [rbp + 0x1f8]
lea rdx, [rbp + 0x1e8]
sub rsp, 0x20
call fcn.140035a4a
add rsp, 0x20
mov rcx, qword [rbp + 0x1f8]
mov rax, qword [rbp + 0x200]
mov qword [rbp + 0x1d8], rcx
mov qword [rbp + 0x1e0], rax
lea rcx, [0x1402d58b0]
lea rdx, [rbp + 0x1d8]
sub rsp, 0x20
call fcn.1400346d0
mov rcx, qword [rbp + 0x18]
add rsp, 0x20
mov word [rcx], 0x399
sub rsp, 0x20
call fcn.14008b2d0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x20], rcx
cmp byte [rax], 0
jne 0x1400fab2a
mov rcx, qword [rbp + 0x38]
mov rax, qword [rbp - 0x20]
mov rdx, qword [rax]
mov qword [rbp + 0x1c8], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1d0], rax
lea rdx, [rbp + 0x1c8]
sub rsp, 0x20
call fcn.140035a4a
mov rax, qword [rbp + 0x38]
add rsp, 0x20
mov rcx, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbp + 0x1b8], rcx
mov qword [rbp + 0x1c0], rax
lea rcx, [0x1402d58b0]
lea rdx, [rbp + 0x1b8]
sub rsp, 0x20
call fcn.1400346d0
mov rcx, qword [rbp + 0x20]
add rsp, 0x20
mov word [rcx], 0x25a
sub rsp, 0x20
call fcn.14008b2d0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x28], rcx
cmp byte [rax], 0
jne 0x1400fab2a
mov eax, dword [0x1402ae4c0]
imul eax, dword [0x1402ae4c4]
sub eax, 0x50b7bbb8
mov ecx, 0xecff41c3
xor ecx, 0x51bb2977
and eax, ecx
mov ecx, 0x37bbaa4
xor edx, edx
div ecx
cmp eax, 0x50293225
ja 0x1400fab3c
mov rax, qword [rbp - 0x28]
mov edx, dword [0x1402ae4c8]
mov ecx, dword [0x1402ae4cc]
xor ecx, 0xc04ffeca
imul edx, ecx
mov r8d, 0xf1bb16c9
xor r8d, 0x34bf46e3
mov ecx, 0xb47bd347
xor ecx, 0x4b842cb8
xor r8d, ecx
mov ecx, edx
xor ecx, r8d
and ecx, edx
mov edx, 0xa7bf63c
xor edx, 0x110f3cd3
sub ecx, edx
mov edx, 0x40b0c369
xor edx, 0x3a2306a9
or ecx, edx
mov dword [rbp - 0x3c], ecx
mov ecx, 0x570d1e9
xor ecx, 0xecec0c8a
mov dword [rbp - 0x40], ecx
mov rcx, qword [rax]
mov qword [rbp + 0x198], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x1a0], rax
lea rcx, [rbp + 0x1a8]
lea rdx, [rbp + 0x198]
sub rsp, 0x20
call fcn.140035a4a
add rsp, 0x20
mov rcx, qword [rbp + 0x1a8]
mov rax, qword [rbp + 0x1b0]
mov qword [rbp + 0x188], rcx
mov qword [rbp + 0x190], rax
lea rcx, [0x1402d58b0]
lea rdx, [rbp + 0x188]
sub rsp, 0x20
call fcn.1400346d0
add rsp, 0x20
mov word [rbp + 0x2c6], 0x38a
lea rcx, [rbp + 0x2c6]
sub rsp, 0x20
call fcn.14008b2d0
mov rdx, qword [rbp + 0x80]
mov ecx, dword [rbp - 0x40]
add rsp, 0x20
mov r8, rax
mov eax, dword [rbp - 0x3c]
mov qword [rbp - 0x38], r8
cmp byte [rdx], 0
sete dl
mov byte [rbp - 0x29], dl
cmp eax, ecx
je 0x1400fab3c
mov al, byte [rbp - 0x29]
test al, 1
jne 0x1400fa6a5
jmp 0x1400fab2a
mov rcx, qword [rbp + 0x40]
mov rdx, qword [rbp + 0x48]
mov rax, qword [rbp - 0x38]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140035a4a
mov rax, qword [rbp + 0x40]
add rsp, 0x20
mov rcx, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbp + 0x178], rcx
mov qword [rbp + 0x180], rax
lea rcx, [0x1402d58b0]
lea rdx, [rbp + 0x178]
sub rsp, 0x20
call fcn.1400346d0
add rsp, 0x20
mov word [rbp + 0x2c4], 0x3e
lea rcx, [rbp + 0x2c4]
sub rsp, 0x20
call fcn.14008b2d0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x48], rcx
cmp byte [rax], 0
jne 0x1400fab2a
mov rcx, qword [rbp + 0x50]
mov rdx, qword [rbp + 0x58]
mov rax, qword [rbp - 0x48]
mov r8, qword [rax]
mov qword [rdx], r8
mov rax, qword [rax + 8]
mov qword [rdx + 8], rax
sub rsp, 0x20
call fcn.140035a4a
mov rax, qword [rbp + 0x50]
add rsp, 0x20
mov rcx, qword [rax]
mov rax, qword [rax + 8]
mov qword [rbp + 0x168], rcx
mov qword [rbp + 0x170], rax
lea rcx, [0x1402d58b0]
lea rdx, [rbp + 0x168]
sub rsp, 0x20
call fcn.1400346d0
add rsp, 0x20
mov word [rbp + 0x2c2], 0x47
lea rcx, [rbp + 0x2c2]
sub rsp, 0x20
call fcn.14008b2d0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x50], rcx
cmp byte [rax], 0
jne 0x1400fab2a
mov rax, qword [rbp - 0x50]
mov rcx, qword [rax]
mov qword [rbp + 0x148], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x150], rax
lea rcx, [rbp + 0x158]
lea rdx, [rbp + 0x148]
sub rsp, 0x20
call fcn.140035a4a
add rsp, 0x20
mov rcx, qword [rbp + 0x158]
mov rax, qword [rbp + 0x160]
mov qword [rbp + 0x138], rcx
mov qword [rbp + 0x140], rax
lea rcx, [0x1402d58b0]
lea rdx, [rbp + 0x138]
sub rsp, 0x20
call fcn.1400346d0
add rsp, 0x20
mov word [rbp + 0x2c0], 0x258
lea rcx, [rbp + 0x2c0]
sub rsp, 0x20
call fcn.14008b2d0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x58], rcx
mov al, byte [rax]
mov cl, 0x87
xor cl, 0x87
cmp al, cl
jne 0x1400fab2a
mov rcx, qword [rbp + 0x68]
mov rax, qword [rbp - 0x58]
mov rdx, qword [rax]
mov qword [rbp + 0x128], rdx
mov rax, qword [rax + 8]
mov qword [rbp + 0x130], rax
lea rdx, [rbp + 0x128]
sub rsp, 0x20
call fcn.140035a4a
mov rax, qword [rbp + 0x68]
mov rdx, qword [rbp + 0x70]
add rsp, 0x20
mov rcx, qword [rax]
mov rax, qword [rax + 8]
mov qword [rdx], rcx
mov qword [rdx + 8], rax
lea rcx, [0x1402d58b0]
sub rsp, 0x20
call fcn.1400346d0
mov rcx, qword [rbp + 0x28]
add rsp, 0x20
mov word [rcx], 0x3ad
sub rsp, 0x20
call fcn.14008b2d0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x60], rcx
mov al, byte [rax]
mov cl, 0x5b
xor cl, 0x5b
cmp al, cl
jne 0x1400fab2a
mov rax, qword [rbp - 0x60]
mov rcx, qword [rax]
mov qword [rbp + 0x108], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0x110], rax
lea rcx, [rbp + 0x118]
lea rdx, [rbp + 0x108]
sub rsp, 0x20
call fcn.140035a4a
add rsp, 0x20
mov rcx, qword [rbp + 0x118]
mov rax, qword [rbp + 0x120]
mov qword [rbp + 0xf8], rcx
mov qword [rbp + 0x100], rax
lea rcx, [0x1402d58b0]
lea rdx, [rbp + 0xf8]
sub rsp, 0x20
call fcn.1400346d0
add rsp, 0x20
mov word [rbp + 0x2be], 0x1df
lea rcx, [rbp + 0x2be]
sub rsp, 0x20
call fcn.14008b2d0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x68], rcx
cmp byte [rax], 0
jne 0x1400fab2a
mov rax, qword [rbp - 0x68]
mov rcx, qword [rax]
mov qword [rbp + 0xd8], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xe0], rax
lea rcx, [rbp + 0xe8]
lea rdx, [rbp + 0xd8]
sub rsp, 0x20
call fcn.140035a4a
add rsp, 0x20
mov rcx, qword [rbp + 0xe8]
mov rax, qword [rbp + 0xf0]
mov qword [rbp + 0xc8], rcx
mov qword [rbp + 0xd0], rax
lea rcx, [0x1402d58b0]
lea rdx, [rbp + 0xc8]
sub rsp, 0x20
call fcn.1400346d0
add rsp, 0x20
mov ax, 0x8ee0
xor ax, 0x8d24
mov word [rbp + 0x2bc], ax
lea rcx, [rbp + 0x2bc]
sub rsp, 0x20
call fcn.14008b2d0
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x70], rcx
cmp byte [rax], 0
jne 0x1400fab2a
mov rax, qword [rbp - 0x70]
mov rcx, qword [rax]
mov qword [rbp + 0xa8], rcx
mov rax, qword [rax + 8]
mov qword [rbp + 0xb0], rax
lea rcx, [rbp + 0xb8]
lea rdx, [rbp + 0xa8]
sub rsp, 0x20
call fcn.140035a4a
add rsp, 0x20
mov rcx, qword [rbp + 0xb8]
mov rax, qword [rbp + 0xc0]
mov qword [rbp + 0x98], rcx
mov qword [rbp + 0xa0], rax
lea rcx, [0x1402d58b0]
lea rdx, [rbp + 0x98]
sub rsp, 0x20
call fcn.1400346d0
call fcn.1400f5460
add rsp, 0x20
mov rcx, rax
mov rax, qword [rbp + 0x80]
mov qword [rbp - 0x78], rcx
cmp byte [rax], 0
jne 0x1400fab2a
mov rdx, qword [rbp - 0x78]
lea rcx, [0x1402d58c0]
sub rsp, 0x20
call fcn.14006c690
mov rcx, qword [rbp + 0x80]
add rsp, 0x20
xor eax, eax
cmp byte [rcx], 0
mov qword [rbp - 0x80], rax
jne 0x1400fab2a
mov rax, qword [rbp - 0x80]
lea rcx, [0x1402d54b0]
pcmpeqd xmm0, xmm0
movaps xmmword [rcx + rax*4], xmm0
add rax, 4
movabs rcx, 0x612680c15e99fddc
movabs rdx, 0x612680c15e99fcdc
xor rcx, rdx
cmp rax, rcx
mov qword [rbp - 0x80], rax
jne 0x1400faaef
lea rsp, [rbp + 0x2d0]
pop rbp
ret
invalid
sub rbx, qword [r14 + 0xb]
jmp 0x1400fa586