Function at 0x140035940
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xc8
mov dword [rsp + 0xc4], ecx
mov ecx, dword [0x1401c9970]
mov eax, dword [0x1401c9974]
xor eax, 0x9f4642c0
or ecx, eax
mov eax, ecx
and eax, 0x82c8cae1
or ecx, 0x82c8cae1
add eax, ecx
and eax, 0x8891f749
or eax, 0xd95e8f75
mov ecx, 0x6bb3fa65
xor ecx, 0xfd24074c
cmp eax, ecx
je 0x1400363f8
mov eax, dword [0x1401c9978]
xor eax, 0xe4ce8be5
mov ecx, dword [0x1401c997c]
mov edx, 0x3552e409
xor edx, 0x5a3f6d74
xor ecx, edx
xor eax, ecx
mov ecx, 0x37bbc325
xor ecx, 0xf2962e98
xor edx, edx
div ecx
mov ecx, eax
xor ecx, 0xffffffff
mov edx, 0x8e168cc5
xor edx, 0x9bfdc20b
and ecx, edx
mov edx, 0x8d620588
xor edx, 0x98894b46
mov r8d, 0x678d2a2f
xor r8d, 0x9872d5d0
xor edx, r8d
and eax, edx
sub eax, ecx
add eax, 0x5b523fd8
mov dword [rsp + 0xb4], eax
call fcn.14003642e
mov ecx, dword [rsp + 0xc4]
mov qword [rsp + 0xa8], rax
lea rdx, [0x1401d4690]
mov r8d, 0x87
mov r9d, 0x2d
mov qword [rsp + 0x20], 3
call fcn.140035190
mov rcx, qword [rsp + 0xa8]
mov rdx, rax
mov eax, dword [rsp + 0xb4]
mov qword [rsp + 0xb8], rdx
mov cl, byte [rcx]
mov dl, 0x1a
xor dl, 0x1a
cmp cl, dl
sete cl
mov byte [rsp + 0xc3], cl
cmp eax, 0x79e3ac10
jae 0x1400363f8
mov al, byte [rsp + 0xc3]
test al, 1
jne 0x140035a7a
jmp 0x1400363ec
mov rax, qword [rsp + 0xb8]
movabs rcx, 0x20fd016f600683ad
movabs rdx, 0xdf02fe909ff97c52
xor rcx, rdx
cmp rax, rcx
jle 0x140035f8f
mov eax, dword [0x1401c9980]
xor edx, edx
div dword [0x1401c9984]
imul eax, eax, 0x2b3bac62
sub eax, 0x66711527
or eax, 0xe2f216af
mov ecx, 0xfbad91eb
xor ecx, 0x7a70e360
cmp eax, ecx
je 0x140036401
mov rcx, qword [rsp + 0xb8]
mov eax, dword [0x1401c9988]
and eax, dword [0x1401c998c]
sub eax, 0xe031a808
or eax, 0x9778ea5a
add eax, 0x9dffa842
cmp rcx, 0x86
seta cl
mov byte [rsp + 0xa7], cl
cmp eax, 0xed184f19
jae 0x140035ad3
mov al, byte [rsp + 0xa7]
test al, 1
jne 0x140035b26
jmp 0x140035b3d
mov rcx, qword [rsp + 0xb8]
mov edx, 0x86
call fcn.1400122ad
jmp 0x1400363ec
mov ecx, dword [rsp + 0xc4]
mov rdx, qword [rsp + 0xb8]
lea rax, [0x1401d4690]
mov rax, qword [rax + rdx*8]
movsxd rcx, ecx
mov qword [rsp + 0x98], rcx
cmp rax, rcx
jg 0x140035f8f
mov rax, qword [rsp + 0xb8]
mov rcx, rax
add rcx, 1
mov qword [rsp + 0x90], rcx
cmp rax, 0x85
jbe 0x140035c48
mov ecx, dword [0x1401c9990]
mov edx, dword [0x1401c9994]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
or eax, 0x2c476443
mov ecx, eax
xor ecx, 0xae764fe6
mov edx, 0x1817372b
xor edx, 0xe7e8c8d4
xor ecx, edx
or eax, 0xae764fe6
and eax, ecx
imul eax, eax, 0x4dbc1f36
cmp eax, 0x13e530ff
jb 0x14003640a
mov rcx, qword [rsp + 0x90]
mov eax, dword [0x1401c9998]
xor edx, edx
div dword [0x1401c999c]
mov edx, 0x49d9d86f
xor edx, 0x2b08788b
or eax, edx
or eax, 0xb2a96c1b
mov edx, eax
and edx, 0xbf4a2eae
shl edx, 1
xor eax, 0xbf4a2eae
add eax, edx
mov dword [rsp + 0x8c], eax
movabs rdx, 0x4c41538044d12726
movabs rax, 0x4c41538044d127a0
xor rdx, rax
call fcn.1400122ad
mov eax, dword [rsp + 0x8c]
cmp eax, 0xc1b9cd95
ja 0x140035bd4
jmp 0x1400363ec
mov rcx, qword [rsp + 0x90]
mov rdx, qword [rsp + 0x98]
lea rax, [0x1401d4690]
cmp qword [rax + rcx*8], rdx
jl 0x140035f8f
mov rax, qword [rsp + 0xb8]
mov rdx, 0xffffffffffffffff
xor rdx, 2
xor ecx, ecx
sub rcx, 1
sub rdx, rcx
mov rcx, rax
sub rcx, rdx
mov qword [rsp + 0x80], rcx
cmp rax, 0x84
jbe 0x140035cb6
mov rcx, qword [rsp + 0x80]
mov edx, 0x86
call fcn.1400122ad
jmp 0x1400363ec
mov rdx, qword [rsp + 0x98]
mov rcx, qword [rsp + 0x80]
lea rax, [0x1401d4690]
mov r8, qword [rax + rcx*8]
mov rcx, r8
and rcx, rdx
mov rax, r8
or rax, rdx
add rcx, rax
mov qword [rsp + 0x78], rcx
mov rax, rcx
xor rax, rdx
movabs r9, 0xa03722518a24e0bf
movabs rdx, 0x5fc8ddae75db1f40
xor r9, rdx
mov rdx, rcx
xor rdx, r9
mov r9, rcx
xor r9, 0xffffffffffffffff
and rdx, r9
mov r9, r8
xor r9, 0xffffffffffffffff
movabs r11, 0xc646907684cc9c46
movabs r10, 0x39b96f897b3363b9
xor r11, r10
mov r10, r8
xor r10, r11
and r9, r10
or rdx, r9
xor rdx, 0xffffffffffffffff
movabs r9, 0xa290d23afa4e3345
movabs r10, 0x5d6f2dc505b1ccba
xor r9, r10
xor rcx, r9
xor r8, 0xffffffffffffffff
and rcx, r8
xor rdx, 0xffffffffffffffff
xor rcx, 0xffffffffffffffff
and rdx, rcx
movabs r8, 0x30ee3fe0b05a055
movabs rcx, 0x30ee3fe0b05a054
xor r8, rcx
mov rcx, rax
add rcx, r8
movabs r8, 0xa358b38e53da3c10
movabs r9, 0x5ca74c71ac25c3ef
xor r8, r9
xor rax, r8
or rax, rdx
add rax, rcx
movabs rcx, 0x5e0f978d1d9ecc2
movabs rdx, 0x5e0f978d1d9ecc2
xor rcx, rdx
cmp rax, rcx
jge 0x140035dd3
call fcn.140008024
jmp 0x1400363ec
mov rdx, qword [rsp + 0x78]
movabs rcx, 0x3fd6f5dd103c5adb
mov rax, rdx
add rax, rcx
add rax, 0xfffffffffffffe0c
movabs rcx, 0x3fd6f5dd103c5adb
sub rax, rcx
mov qword [rsp + 0x70], rax
mov rcx, rax
xor rcx, rdx
cmp rcx, 0
setl cl
cmp rax, 0xffffffffffffffff
setg al
and al, cl
test al, 1
jne 0x140035e23
jmp 0x140035e2d
call fcn.140008024
jmp 0x1400363ec
mov rax, qword [rsp + 0x78]
movabs rcx, 0x203f8652df057fa4
movabs rdx, 0xdfc079ada0fa81a8
xor rcx, rdx
add rax, rcx
movabs rcx, 0xffffffff00000000
cmp rax, rcx
jae 0x140035f81
mov eax, dword [0x1401c99a0]
xor eax, 0xc75a4ebc
mov ecx, dword [0x1401c99a4]
xor ecx, 0xfab798b5
sub eax, ecx
mov ecx, 0x2e28b750
xor ecx, 0xa15be8fb
add eax, ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x7b93fa59
mov r8d, 0xffffffff
xor r8d, 0x7b93fa59
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xfcd216ce
xor r8d, 0x8741ec97
mov edx, eax
and edx, r8d
mov r8d, 0xc0461c7a
xor r8d, 0xbbd5e623
or eax, r8d
imul eax, edx
add eax, ecx
add eax, 0x365bc086
mov ecx, 0x6b68e961
xor ecx, 0x8bb13e20
cmp eax, ecx
je 0x140036413
mov rcx, qword [rsp + 0x70]
mov eax, dword [0x1401c99a8]
mov r9d, dword [0x1401c99ac]
mov r10d, r9d
xor r10d, 0xffffffff
mov r8d, eax
and r8d, r10d
mov edx, eax
or edx, r10d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, r9d
or eax, r9d
imul eax, r8d
add eax, edx
mov edx, 0xffffffff
xor edx, 0x4ff0a5df
xor r8d, r8d
sub r8d, 1
sub edx, r8d
sub eax, edx
mov edx, 0xffffffff
xor edx, 0x9cd29567
xor r8d, r8d
sub r8d, 1
sub edx, r8d
sub eax, edx
mov r8d, 0xbd8ebffa
xor edx, edx
div r8d
mov dword [rsp + 0x6c], eax
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
call fcn.14000c8ac
mov eax, dword [rsp + 0x6c]
cmp eax, 0xb8f86e98
je 0x140036413
jmp 0x1400363ec
mov rax, qword [rsp + 0x70]
mov dword [rsp + 0x68], eax
jmp 0x1400363ec
mov ecx, dword [rsp + 0xc4]
lea rdx, [0x1401d4ad0]
mov r8d, 0x4c4
mov r9d, 0x262
mov qword [rsp + 0x20], 2
call fcn.140035190
mov rcx, rax
mov rax, qword [rsp + 0xa8]
mov qword [rsp + 0x60], rcx
cmp byte [rax], 0
jne 0x1400363ec
mov eax, dword [rsp + 0xc4]
mov rcx, qword [rsp + 0x60]
cmp rcx, 0xffffffffffffffff
mov dword [rsp + 0x68], eax
jle 0x1400363ec
mov rax, qword [rsp + 0x60]
cmp rax, 0x4c3
jbe 0x14003600f
mov rcx, qword [rsp + 0x60]
mov edx, 0x4c3
call fcn.1400122ad
jmp 0x1400363ec
mov eax, dword [0x1401c99b0]
add eax, dword [0x1401c99b4]
xor eax, 0xffffffff
mov edx, 0x21ecb8f6
xor edx, 0xd534a771
mov ecx, 0xb06d377
xor ecx, 0xf4f92c88
xor edx, ecx
mov ecx, 0x8808b450
xor ecx, 0xf79d7673
mov r8d, 0x66d03f2e
xor r8d, 0x992fc0d1
xor ecx, r8d
or eax, edx
or ecx, 0x7f95c223
xor eax, 0xffffffff
and eax, ecx
mov ecx, 0x8ac359bf
xor ecx, 0x27fc608b
or eax, ecx
or eax, 0x67e5de1
cmp eax, 0x83f4c4a8
je 0x14003641c
mov rdx, qword [rsp + 0x60]
mov ecx, dword [rsp + 0xc4]
mov eax, dword [0x1401c99b8]
mov r8d, dword [0x1401c99bc]
mov r9d, 0x1e37d43d
xor r9d, 0x29d0b3b3
xor r8d, r9d
mov r9d, 0x5685330c
xor r9d, 0x3c251e17
sub eax, r9d
add eax, r8d
add eax, 0x6aa02d1b
xor eax, 0xccab84e7
imul eax, eax, 0xcd7f528d
imul eax, eax, 0xba401885
movsxd r8, ecx
mov qword [rsp + 0x50], r8
lea rcx, [0x1401d4ad0]
cmp qword [rcx + rdx*8], r8
sete cl
mov byte [rsp + 0x5f], cl
cmp eax, 0x47802e71
jb 0x14003607b
mov eax, dword [rsp + 0xc4]
mov cl, byte [rsp + 0x5f]
test cl, 1
mov dword [rsp + 0x68], eax
jne 0x14003610f
jmp 0x1400363ec
mov rax, qword [rsp + 0x60]
movabs rdx, 0x1ff76e3d12756987
movabs rcx, 0x1ff76e3d12756986
xor rdx, rcx
mov rcx, rax
add rcx, rdx
mov qword [rsp + 0x48], rcx
cmp rax, 0x4c2
jbe 0x140036156
mov rcx, qword [rsp + 0x48]
mov edx, 0x4c3
call fcn.1400122ad
jmp 0x1400363ec
mov r9, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x48]
lea rax, [0x1401d4ad0]
mov r8, qword [rax + rcx*8]
mov rdx, r8
add rdx, r9
mov qword [rsp + 0x40], rdx
mov rcx, rdx
xor rcx, 0xffffffffffffffff
mov rax, r9
and rax, rcx
xor r9, 0xffffffffffffffff
mov rcx, rdx
and rcx, r9
or rax, rcx
mov rcx, rdx
and rcx, rcx
xor rcx, 0xffffffffffffffff
and rcx, r8
xor rcx, 0xffffffffffffffff
and r8, r8
movabs r9, 0x20d1f3bdc8be5150
movabs r10, 0xdf2e0c423741aeaf
xor r9, r10
xor r8, r9
and rdx, r8
xor rdx, 0xffffffffffffffff
movabs r8, 0x4a83c6b21dba44f7
movabs r9, 0xb57c394de245bb08
xor r8, r9
xor rcx, r8
xor rdx, 0xffffffffffffffff
or rcx, rdx
and rax, rcx
movabs rcx, 0xf05b4c72fb03876e
movabs rdx, 0xf05b4c72fb03876e
xor rcx, rdx
cmp rax, rcx
jge 0x140036213
call fcn.140008024
jmp 0x1400363ec
mov eax, dword [0x1401c99c0]
mov r8d, dword [0x1401c99c4]
mov r9d, r8d
xor r9d, 0xffffffff
mov edx, eax
and edx, r9d
mov ecx, eax
or ecx, r9d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, r8d
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, eax
and ecx, 0x92e12c99
xor ecx, 0xffffffff
add eax, 0x92e12c99
mov edx, 0x92ac8bb4
xor edx, 0x92ac8bb5
add eax, edx
add eax, ecx
and eax, 0x6bc08dd5
add eax, 0xea0c830
add eax, 0x7c5c2702
sub eax, 0xea0c830
cmp eax, 0x4212da44
jbe 0x140036425
mov r8, qword [rsp + 0x40]
mov eax, dword [0x1401c99c8]
mov ecx, 0xf4865104
xor ecx, 0x70176298
xor eax, ecx
mov edx, dword [0x1401c99cc]
xor ecx, ecx
sub ecx, edx
add eax, ecx
mov ecx, 0xf236b0d5
xor edx, edx
div ecx
mov ecx, 0x5e0c4dba
xor ecx, 0x37ab1b7c
xor edx, edx
div ecx
mov ecx, 0x8a1cd8c
xor edx, edx
div ecx
mov ecx, 0xeb4822fe
xor ecx, 0x1fa4a1cc
movabs r9, 0xc235bcca5f056c08
movabs rdx, 0x3dca4335a0fa9204
xor r9, rdx
mov rdx, r8
add rdx, r9
mov qword [rsp + 0x30], rdx
mov r10, rdx
xor r10, r8
movabs r9, 0xace2d9a6a87bf32a
movabs r11, 0x531d265957840cd5
xor r9, r11
xor r10, r9
mov r9, r8
and r9, r10
shl r9, 1
sub r9, r8
mov r8, rdx
sub r8, r9
cmp r8, 0
setl r9b
cmp rdx, 0xffffffffffffffff
setg dl
xor dl, 0xff
xor r9b, 0xff
mov r8b, 1
xor r8b, 0
xor r10d, r10d
xor r10b, 1
xor r8b, r10b
or dl, r9b
or r8b, 1
xor dl, 0xff
and dl, r8b
mov byte [rsp + 0x3f], dl
cmp eax, ecx
jae 0x140036425
mov al, byte [rsp + 0x3f]
test al, 1
jne 0x140036378
jmp 0x140036382
call fcn.140008024
jmp 0x1400363ec
mov rcx, qword [rsp + 0x40]
movabs rdx, 0xffffffff7ffffe0c
mov rax, rcx
and rax, rdx
movabs rdx, 0xffffffff7ffffe0c
or rcx, rdx
add rax, rcx
movabs rcx, 0x22cadc359d4a0172
movabs rdx, 0xdd3523ca9d4a0172
xor rcx, rdx
cmp rax, rcx
jae 0x1400363e3
mov rcx, qword [rsp + 0x30]
mov rdx, 0xffffffff80000000
mov r8d, 0x7fffffff
call fcn.14000c8ac
jmp 0x1400363ec
xor byte [rax - 0x39], cl
ret 0
mov rax, qword [rsp + 0x30]
mov dword [rsp + 0x68], eax
mov eax, dword [rsp + 0x68]
add rsp, 0xc8
ret
jge 0x1400363cb
sysenter
jmp 0x14003598d
jle 0x1400363e8
mov ch, 0x4c
jmp 0x140035ad3
invalid
cmp ch, byte [rbx - 0x51]
sbb eax, 0xfffac8e9
push qword [rdx]
ficom dword [rdi]
adc eax, 0xfffc56e9
dec dword [rbp - 0x165b80ab]
push rsp
invalid
xor bl, dl
invalid
lea edx, [rbp + 0x7f]
movsb byte [rdi], byte [rsi]
jmp 0x140036282