Function at 0x140035290
Capabilities:
Encode data using xor

Disassembly:
push rsi
sub rsp, 0xa0
mov qword [rsp + 0x68], rdx
mov qword [rsp + 0x70], rcx
mov rdx, qword [rcx]
mov qword [rsp + 0x78], rdx
mov rax, rcx
add rax, 8
mov qword [rsp + 0x80], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0x88], rax
xor ecx, ecx
mov r8d, ecx
sub r8, rdx
movabs rcx, 0x239efddfd5f03ac2
movabs r9, 0x239efddfd5f03ac2
xor rcx, r9
movabs r9, 0xaf08f46254305d19
movabs r10, 0xaf08f46254305d18
xor r9, r10
sub rcx, r9
add r8, rcx
xor ecx, ecx
sub rcx, r8
mov qword [rsp + 0x90], rcx
xor rdx, 0xffffffffffffffff
and rcx, rdx
mov qword [rsp + 0x98], rcx
cmp rax, 0
je 0x14003541d
mov rax, qword [rsp + 0x98]
cmp rax, 0
jl 0x140035413
mov eax, dword [0x1401f2d28]
xor eax, 0x32c9f458
and eax, dword [0x1401f2d2c]
mov ecx, eax
xor ecx, 0x7cf62d34
mov edx, 0xdf35ccf4
xor edx, 0x20ca330b
xor ecx, edx
or eax, 0x7cf62d34
and eax, ecx
mov ecx, 0x71f6fc6c
xor ecx, 0xd312a148
add eax, ecx
imul eax, eax, 0x1bd8a063
mov ecx, 0xaf53d3f4
xor ecx, 0x5ff4394b
cmp eax, ecx
jae 0x140035701
mov r8, qword [rsp + 0x90]
mov r9, qword [rsp + 0x88]
mov eax, dword [0x1401f2d30]
mov edx, dword [0x1401f2d34]
mov ecx, eax
and ecx, edx
shl ecx, 1
add eax, edx
sub eax, ecx
mov ecx, 0x2daef707
xor ecx, 0x96b35e93
add eax, ecx
sub eax, 0x5a0e2862
and eax, 0x313676f
mov ecx, 0x8d63224e
xor ecx, 0xd89a7a0e
movabs rdx, 0xbfffffffffffffff
and rdx, qword [r9]
cmp rdx, r8
setl dl
mov byte [rsp + 0x67], dl
cmp eax, ecx
ja 0x14003538c
mov rax, qword [rsp + 0x88]
mov cl, byte [rsp + 0x67]
test cl, 1
mov qword [rsp + 0x58], rax
jne 0x14003541d
jmp 0x1400355c9
call fcn.1400091c0
jmp 0x1400356f8
mov eax, dword [0x1401f2d38]
xor eax, 0x6185df43
mov ecx, dword [0x1401f2d3c]
xor ecx, 0xc4d04d40
xor edx, edx
div ecx
mov ecx, eax
mov eax, 0x7a0e3cde
xor eax, 0x85f1c321
mov edx, ecx
xor edx, eax
and edx, 0x4dd92ad3
mov r8d, 0x3ff95d9f
xor r8d, 0x7220774c
mov eax, 0x7b72ff25
xor eax, 0x848d00da
xor r8d, eax
mov eax, ecx
and eax, r8d
imul eax, edx
mov r8d, 0x5bf8b404
xor r8d, 0x16219ed7
mov edx, ecx
and edx, r8d
or ecx, 0x4dd92ad3
imul ecx, edx
add ecx, eax
mov eax, ecx
and eax, 0x14ef14ff
or ecx, 0x14ef14ff
add eax, ecx
and eax, 0x2d2f2cdc
cmp eax, 0xf20b9bf5
je 0x14003570a
mov rdx, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x78]
mov r8d, dword [0x1401f2d40]
mov r9d, dword [0x1401f2d44]
mov eax, r8d
xor eax, r9d
xor eax, 0xffffffff
or r8d, r9d
and r8d, eax
mov r9d, 0x4b048cd8
xor r9d, 0xb4fb7327
mov eax, r8d
xor eax, r9d
mov r9d, 0x93ef5a0b
xor r9d, 0x6c10a5f4
xor r8d, r9d
and eax, r8d
mov r8d, 0xffffffff
xor r8d, 0x9f688047
mov r9d, 0xffffffff
xor r9d, 0x9f688047
and r8d, r9d
or eax, r8d
xor eax, 0xffffffff
add eax, 0x1453a18b
mov r8d, eax
and r8d, 0x45660103
shl r8d, 1
add eax, 0x45660103
sub eax, r8d
mov dword [rsp + 0x44], eax
mov r8d, 1
mov r9d, 0x28
mov qword [rsp + 0x20], 8
call fcn.140014320
mov rdx, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x98]
mov r8, rax
mov eax, dword [rsp + 0x44]
mov qword [rsp + 0x48], r8
mov qword [rdx], r8
movabs rdx, 0xdef4aad663da1b86
movabs r8, 0xdef4aad663da1b86
xor rdx, r8
cmp rcx, rdx
setl cl
mov byte [rsp + 0x57], cl
cmp eax, 0x36dec792
jb 0x14003570a
mov rax, qword [rsp + 0x48]
mov cl, byte [rsp + 0x57]
test cl, 1
mov qword [rsp + 0x58], rax
jne 0x1400355bf
jmp 0x1400355c9
call fcn.1400091c0
jmp 0x1400356f8
mov rax, qword [rsp + 0x58]
mov qword [rsp + 0x38], rax
mov eax, dword [0x1401f2d48]
mov ecx, dword [0x1401f2d4c]
xor ecx, 0xe62736c5
and eax, ecx
add eax, 0x5c445fd7
add eax, 0x4307281d
mov ecx, 0x14e026ef
xor edx, edx
div ecx
cmp eax, 0x9fec1d4e
je 0x140035713
mov rdx, qword [rsp + 0x68]
mov rax, qword [rsp + 0x78]
mov rcx, qword [rsp + 0x38]
mov r8, qword [rsp + 0x70]
mov r9, qword [rsp + 0x90]
mov esi, dword [0x1401f2d50]
xor esi, 0x60031e52
mov r11d, dword [0x1401f2d54]
mov r10d, r11d
and r10d, esi
xor r10d, 0xffffffff
add esi, r11d
mov r11d, 0x4b9174c0
xor r11d, 0x4b9174c1
add esi, r11d
add esi, r10d
sub esi, 0xaa2a0ef2
mov r10d, 0x71270326
xor r10d, 0xe44f33
sub esi, r10d
mov r10d, 0x19fad700
xor r10d, 0xb3d0d9f2
add esi, r10d
mov r10d, 0x5e8da261
xor r10d, 0xc48c85c
mov r11d, esi
xor r11d, r10d
mov r10d, 0xffffffff
xor r10d, 0x52c56a3d
and esi, r10d
mov r10d, 0x71dcfe3b
xor r10d, 0x71dcfe39
imul r10d, esi
sub r10d, r11d
add r10d, 0xa4e7480e
add r10d, 0x4c619869
sub r10d, 0xa4e7480e
mov dword [rsp + 0x34], r10d
mov qword [r8], r9
add rcx, 8
imul rax, rax, 0x28
add rcx, rax
mov r8d, 0x28
call sub.msvcrt.dll_memcpy
mov eax, dword [rsp + 0x34]
cmp eax, 0xf91cd35e
ja 0x140035713
jmp 0x1400356f8
add rsp, 0xa0
pop rsi
ret
sahf
in eax, dx
ret
pop rcx
push rdx
cmp dword [rbx - 0x26617], esp
inc dword [0x129dfb95b]
add eax, 0xe9dc6243
jmp 0x18903571b