Function at 0x140167d00
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x78
mov qword [rsp + 0x68], rcx
mov rax, qword [rcx + 8]
mov qword [rsp + 0x70], rax
cmp rax, 0
je 0x140167d5c
mov rax, qword [rsp + 0x70]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
or rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140167d5c
mov rcx, qword [rsp + 0x70]
call fcn.140011305
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x18]
mov qword [rsp + 0x60], rax
cmp rax, 0
je 0x140167d9a
mov rcx, qword [rsp + 0x60]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140167d9a
mov rcx, qword [rsp + 0x60]
call fcn.140011305
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x28]
mov qword [rsp + 0x58], rax
cmp rax, 0
je 0x140167dd8
mov rcx, qword [rsp + 0x58]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140167dd8
mov rcx, qword [rsp + 0x58]
call fcn.140011305
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x38]
mov qword [rsp + 0x50], rax
cmp rax, 0
je 0x140168005
mov r8d, dword [0x1401fb6d8]
mov eax, dword [0x1401fb6dc]
mov ecx, 0x7b30c54
xor ecx, 0x3d6a2f1d
xor eax, ecx
sub r8d, eax
sub r8d, 0xca0a46c8
mov eax, r8d
and eax, 0x9d65944
shl eax, 1
add r8d, 0x9d65944
sub r8d, eax
mov ecx, r8d
xor ecx, 0xffffffff
mov eax, 0xefcc720d
xor eax, 0x7bded79b
and eax, ecx
mov edx, 0xffffffff
xor edx, 0x9412a596
and r8d, edx
mov ecx, 0xffffffff
xor ecx, 0x3eb72a6f
mov r9d, 0xfedd68b8
xor r9d, 0x6acfcd2e
and ecx, r9d
and edx, 0x3eb72a6f
or eax, r8d
or ecx, edx
xor eax, ecx
cmp eax, 0xee174707
jae 0x1401682ee
mov eax, dword [0x1401fb6e0]
xor edx, edx
div dword [0x1401fb6e4]
mov rdx, qword [rsp + 0x50]
and eax, 0x73b7bd70
sub eax, 0xe5c18aed
sub eax, 0x1e7ad9b6
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
sete cl
mov byte [rsp + 0x4f], cl
cmp eax, 0xbd77fbf9
je 0x1401682ee
mov al, byte [rsp + 0x4f]
test al, 1
jne 0x140167ed2
jmp 0x140168005
mov eax, dword [0x1401fb6e8]
mov ecx, 0xfeb32049
xor ecx, 0x404a234c
xor eax, ecx
sub eax, dword [0x1401fb6ec]
mov ecx, eax
and ecx, 0x1dc6716b
mov edx, 0xa4e66dcc
xor edx, 0xa4e66dce
imul ecx, edx
mov edx, 0xf0321016
xor edx, 0xedf4617d
xor eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x810f8940
shl ecx, 1
xor eax, 0x810f8940
add eax, ecx
mov ecx, 0x7bcd9e4a
xor edx, edx
div ecx
cmp eax, 0xc5349d87
ja 0x1401682f7
mov rcx, qword [rsp + 0x50]
mov eax, dword [0x1401fb6f0]
mov r9d, dword [0x1401fb6f4]
xor r9d, 0x40b97eda
mov r8d, r9d
xor r8d, 0xffffffff
mov edx, eax
and edx, r8d
mov r8d, eax
xor r8d, r9d
add eax, r8d
sub eax, edx
mov r8d, 0xf448f4cd
xor r8d, 0x61afb002
mov edx, eax
xor edx, r8d
xor edx, 0xffffffff
mov r8d, 0x37726a07
xor r8d, 0xa2952ec8
and r8d, edx
mov edx, 0xe4f4d222
xor edx, 0xe4f4d220
imul edx, r8d
mov r8d, 0x2c5dd7a9
xor r8d, 0xb9ba9366
sub edx, r8d
sub eax, edx
sub eax, 0x30825d2a
xor eax, 0xffffffff
mov r8d, 0x9acdc2f0
xor r8d, 0xeb881e26
mov edx, 0x2f013618
xor edx, 0xd0fec9e7
xor r8d, edx
mov edx, 0xffffffff
xor edx, 0xfbc9a7b9
or eax, r8d
or edx, 0xfbc9a7b9
xor eax, 0xffffffff
and eax, edx
mov dword [rsp + 0x48], eax
call fcn.140011305
mov eax, dword [rsp + 0x48]
cmp eax, 0x32bebcc7
je 0x140167f36
jmp 0x140168005
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x48]
mov qword [rsp + 0x40], rax
cmp rax, 0
je 0x140168043
mov rcx, qword [rsp + 0x40]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
cmp rax, 0
jne 0x140168043
mov rcx, qword [rsp + 0x40]
call fcn.140011305
mov rax, qword [rsp + 0x68]
mov rax, qword [rax + 0x58]
mov qword [rsp + 0x38], rax
cmp rax, 0
je 0x1401680d4
mov rax, qword [rsp + 0x38]
mov rax, qword [rax]
movabs rdx, 0x4000000000000000
mov rcx, rax
xor rcx, rdx
movabs rdx, 0xb9cfeac2c2094856
movabs r8, 0x4630153d3df6b7a9
xor rdx, r8
xor rcx, rdx
movabs rdx, 0xa690a13ef4a403f6
movabs r8, 0xe690a13ef4a403f6
xor rdx, r8
or rax, rdx
and rax, rcx
movabs rcx, 0x2bb91019f24b0978
movabs rdx, 0x2bb91019f24b0978
xor rcx, rdx
cmp rax, rcx
jne 0x1401680d4
mov rcx, qword [rsp + 0x38]
call fcn.140011305
mov eax, dword [0x1401fb6f8]
mov edx, dword [0x1401fb6fc]
mov ecx, edx
and ecx, eax
mov r8d, 0x97050551
xor r8d, 0x68fafaae
xor ecx, r8d
add eax, edx
add eax, 1
add eax, ecx
or eax, 0x81d91197
mov ecx, 0xf603a989
xor edx, edx
div ecx
mov ecx, eax
mov eax, ecx
or eax, eax
mov edx, 0xcb8ec07
xor edx, 0xf34713f8
xor eax, edx
mov edx, 0xa6c9f4be
xor edx, 0x6ef835e0
mov r8d, 0xde15081
xor r8d, 0xc5d091df
or edx, r8d
mov r8d, 0x26aa6842
xor r8d, 0xd95597bd
xor edx, r8d
or eax, edx
xor eax, 0xffffffff
or ecx, 0xc831c15e
mov edx, 0x3401fc7e
xor edx, 0xcbfe0381
xor ecx, edx
or eax, ecx
mov ecx, 0xf2ef120b
xor ecx, 0xd10edf4
xor eax, ecx
mov ecx, 0x8ee078df
xor ecx, 0x16031b56
cmp eax, ecx
jb 0x140168300
mov rcx, qword [rsp + 0x68]
mov eax, dword [0x1401fb700]
or eax, dword [0x1401fb704]
mov edx, 0xb8309d9c
xor edx, 0xee5f2ec3
xor eax, edx
xor eax, 0x680ac536
mov edx, 0xd3abf858
xor edx, 0xb63f0777
or eax, edx
mov rcx, qword [rcx + 0x68]
mov qword [rsp + 0x28], rcx
cmp rcx, 0
sete cl
mov byte [rsp + 0x37], cl
cmp eax, 0xf9a87ced
je 0x140168300
mov al, byte [rsp + 0x37]
test al, 1
jne 0x140168250
jmp 0x1401681e1
mov rax, qword [rsp + 0x28]
mov rax, qword [rax]
or rax, rax
xor rax, 0xffffffffffffffff
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
mov rdx, 0xffffffffffffffff
movabs r8, 0x4000000000000000
xor rdx, r8
and rcx, rdx
xor rax, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rax, rcx
movabs rcx, 0x1f4f918a0dd3e848
movabs rdx, 0x1f4f918a0dd3e848
xor rcx, rdx
cmp rax, rcx
jne 0x140168250
mov rcx, qword [rsp + 0x28]
call fcn.140011305
mov eax, dword [0x1401fb708]
xor eax, 0x846835d9
xor edx, edx
div dword [0x1401fb70c]
mov edx, 0xffffffff
xor edx, 0x674f77d4
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0x674f77d4
add eax, edx
sub eax, ecx
add eax, 0x60bcf383
and eax, 0xcf082fe0
cmp eax, 0xdc7fa580
jae 0x140168309
mov eax, dword [0x1401fb710]
xor eax, 0x96d58e7b
mov ecx, dword [0x1401fb714]
mov edx, 0x4e79201b
xor edx, 0x91325bc9
xor ecx, edx
sub eax, ecx
mov ecx, 0xeba95d27
xor ecx, 0x4c6e40b6
or eax, ecx
and eax, 0x77df47fc
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0x75df4ca0
add ecx, eax
mov eax, 0x2d214853
xor eax, 0x2d214853
sub eax, ecx
cmp eax, 0x6b8814c5
je 0x140168293
add rsp, 0x78
ret
rcr byte [rdi - 0x3b], 1
jmp 0x140167e7c
mov ebp, ss
and dword [rsi - 0x3c917], edi
inc dword [rcx - 0x16e32efb]
add dword [0x1b8ff9fdb], 0x78fffffe
invalid
js 0x140168305
invalid
js 0x140168339
invalid
sub esp, eax
mov rax, rsp
mov qword [rbp - 0x10], rax
mov rax, qword [rcx + 8]
mov qword [rbp - 8], rax
cmp rax, 0
je 0x140168390
mov rax, qword [rbp - 8]
mov rax, qword [rax]
movabs rcx, 0x81088bacf0a5eb5d
movabs rdx, 0xc1088bacf0a5eb5d
xor rcx, rdx
and rax, rcx
cmp rax, 0
jne 0x140168390
mov rcx, qword [rbp - 8]
sub rsp, 0x20
call fcn.140011305
add rsp, 0x20
mov r8d, dword [0x1401fb718]
mov edx, dword [0x1401fb71c]
mov eax, r8d
xor eax, 0xffffffff
and eax, 0xf8bdd66c
mov r9d, 0x9653b966
xor r9d, 0x6eee6f0a
mov ecx, 0x9fdba5cc
xor ecx, 0x60245a33
xor r9d, ecx
and r8d, r9d
mov r10d, 0xa1ebbeeb
xor r10d, 0x5e144114
mov ecx, edx
xor ecx, r10d
and ecx, 0xf8bdd66c
and edx, r9d
or eax, r8d
or ecx, edx
xor eax, ecx
mov r8d, 0xffffffff
xor r8d, 0x1a7a1de3
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0xe9a9dfd
xor r8d, 0x14e0801e
mov edx, eax
and edx, r8d
or eax, 0x1a7a1de3
imul eax, edx
add eax, ecx
sub eax, 0x4a7119be
sub eax, 0xdb8dacd0
add eax, 0x4a7119be
mov ecx, 0x713d557
xor ecx, 0x1523214
and eax, ecx
cmp eax, 0x6d4acb39
ja 0x140168639
mov rcx, qword [rbp - 0x18]
mov edx, dword [0x1401fb720]
xor edx, 0xe1ccb70b
mov r8d, dword [0x1401fb724]
mov r9d, 0x8fc25745
xor r9d, 0x703da8ba
mov eax, edx
xor eax, r9d
xor edx, 0xffffffff
or eax, edx
mov r9d, 0x18e16375
xor r9d, 0xe71e9c8a
mov edx, r8d
xor edx, r9d
xor r8d, 0xffffffff
or edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
imul eax, eax, 0x5411c154
mov edx, 0x47640da
xor edx, 0xa6eb2205
imul eax, edx
mov edx, eax
add edx, 1
mov r8d, 0x848f14ef
xor r8d, 0x7b70eb10
xor eax, r8d
or eax, 0xa30c178e
add eax, edx
mov rcx, qword [rcx + 0x18]
mov qword [rbp - 0x28], rcx
cmp rcx, 0
sete cl
mov byte [rbp - 0x19], cl
cmp eax, 0x7300f2a5
ja 0x140168448
mov al, byte [rbp - 0x19]
test al, 1
jne 0x14016853f
jmp 0x1401684f5
mov rax, qword [rbp - 0x28]
mov rax, qword [rax]
mov rcx, rax
add rcx, 1
xor rax, 0xffffffffffffffff
movabs rdx, 0xfe0f7ace0ba5f51b
movabs r8, 0xbe0f7ace0ba5f51b
xor rdx, r8
or rax, rdx
add rax, rcx
cmp rax, 0
jne 0x14016853f
mov rcx, qword [rbp - 0x28]
sub rsp, 0x20
call fcn.140011305
add rsp, 0x20
mov rax, qword [rbp - 0x18]
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rax + 0x20]
mov qword [rcx], rdx
mov rax, qword [rax + 0x28]
mov qword [rcx + 8], rax
sub rsp, 0x20
call fcn.140027290
mov rax, qword [rbp - 0x18]
add rsp, 0x20
mov rax, qword [rax + 0x38]
mov qword [rbp - 0x30], rax
cmp rax, 0
je 0x140168634
mov rax, qword [rbp - 0x30]
mov rax, qword [rax]
movabs rcx, 0x2e7c10f93eae3d65
movabs rdx, 0xd183ef06c151c29a
xor rcx, rdx
xor rax, rcx
mov rcx, 0xffffffffffffffff
movabs rdx, 0x4000000000000000
xor rcx, rdx
movabs rdx, 0x5ba45c817f1b1d7f
movabs r8, 0x692e74f1859e6cd9
xor rdx, r8
movabs r8, 0x5201528900e67336
movabs r9, 0xadfead76ff198cc9
xor r8, r9
xor rdx, r8
or rax, rcx
movabs rcx, 0x9d701329d65940d6
movabs r8, 0xaffa3b592cdc3170
xor rcx, r8
or rcx, rdx
movabs rdx, 0x229c4478db19c4cd
movabs r8, 0xdd63bb8724e63b32
xor rdx, r8
xor rax, rdx
and rax, rcx
cmp rax, 0
jne 0x140168634
mov rcx, qword [rbp - 0x30]
sub rsp, 0x20
call fcn.140011305
add rsp, 0x20
mov rsp, rbp
pop rbp
ret
outsd dx, dword [rsi]
mov ebx, 0x6e9a1d6
invalid