Function at 0x1400339c5
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x88
mov qword [rsp + 0x70], rdx
mov qword [rsp + 0x78], rcx
mov rax, qword [rcx]
mov qword [rsp + 0x80], rax
cmp rax, rdx
jle 0x1400333d9
mov rdx, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x78]
call fcn.1400331a7
jmp 0x140033998
mov ecx, dword [0x1402519a8]
xor ecx, 0xc7935992
mov eax, dword [str.._r]
mov edx, 0x18e332b4
xor edx, 0x332200ad
xor eax, edx
and ecx, eax
and ecx, 0x2c10d1b6
mov eax, 0x156ac65b
xor eax, 0x74f678df
and ecx, eax
mov edx, 0xffffffff
xor edx, 0x5a2b10c0
mov eax, ecx
xor eax, edx
and eax, ecx
cmp eax, 0xeb4a0776
ja 0x1400339a1
mov rcx, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x70]
mov eax, dword [0x1402519b0]
xor eax, 0x3f712413
sub eax, dword [0x1402519b4]
xor eax, 0xa29322d2
add eax, 0x497161dd
sub eax, 0x415bd232
cmp rcx, rdx
setl cl
mov byte [rsp + 0x6f], cl
cmp eax, 0x5f1a78f1
je 0x140033428
mov al, byte [rsp + 0x6f]
test al, 1
jne 0x14003347b
jmp 0x140033998
mov eax, dword [0x1402519b8]
mov ecx, dword [0x1402519bc]
mov edx, 0x762365
xor edx, 0xeb00011f
xor ecx, edx
xor edx, edx
div ecx
xor eax, 0xea7aab92
or eax, 0x452c5bfe
mov edx, 0xffffffff
xor edx, 0xeace7c8a
mov ecx, eax
and ecx, edx
mov edx, eax
xor edx, 0xeace7c8a
add eax, edx
sub eax, ecx
cmp eax, 0x4789164b
je 0x1400339aa
mov rdx, qword [rsp + 0x78]
mov eax, dword [0x1402519c0]
mov r8d, dword [0x1402519c4]
xor eax, 0xffffffff
mov ecx, 0x5b4859a0
xor ecx, 0xa4b7a65f
xor r8d, ecx
mov ecx, 0xffffffff
xor ecx, 0x1a166caa
or eax, r8d
or ecx, 0x1a166caa
mov r8d, 0xfacfb3f7
xor r8d, 0x5304c08
xor eax, r8d
and eax, ecx
sub eax, 0x3ab2c9ed
mov ecx, 0x14b5dceb
xor ecx, 0x7635f4f8
xor eax, ecx
imul eax, eax, 0x7fbdf265
mov ecx, 0xa834ec46
xor ecx, 0xee0d146a
mov r8, rdx
add r8, 8
mov qword [rsp + 0x58], r8
mov rdx, qword [rdx + 8]
mov qword [rsp + 0x60], rdx
cmp rdx, 0
sete dl
mov byte [rsp + 0x6e], dl
cmp eax, ecx
jb 0x1400334c8
mov al, byte [rsp + 0x6e]
test al, 1
jne 0x14003358d
jmp 0x14003356d
mov rcx, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x60]
movabs rax, 0xbfffffffffffffff
and rax, qword [rdx]
cmp rax, rcx
jge 0x140033776
mov r8, qword [rsp + 0x80]
mov rdx, qword [rsp + 0x70]
mov r9, rdx
sub r9, r8
mov qword [rsp + 0x50], r9
mov rcx, r9
and rcx, rdx
shl rcx, 1
mov rax, r9
add rax, rdx
sub rax, rcx
cmp rax, 0
setl al
mov rdx, r9
xor rdx, 0xffffffffffffffff
movabs rcx, 0xeee8e0c3bfb82b43
movabs r10, 0x419b1459e56acd52
xor rcx, r10
and rcx, rdx
mov r10, 0xffffffffffffffff
movabs rdx, 0xaf73f49a5ad2e611
xor r10, rdx
and r9, r10
movabs r11, 0xb2d80c3109bf7a98
movabs rdx, 0x4d27f3cef6408567
xor r11, rdx
mov rdx, r8
xor rdx, r11
movabs r11, 0xaf73f49a5ad2e611
and rdx, r11
and r8, r10
or rcx, r9
or rdx, r8
xor rcx, rdx
cmp rcx, 0xffffffffffffffff
setg cl
and al, cl
test al, 1
jne 0x140033674
mov r8, qword [rsp + 0x50]
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x80]
mov r9d, 8
mov qword [rsp + 0x20], 8
call fcn.140010c40
mov rcx, rax
mov rax, qword [rsp + 0x58]
mov qword [rax], rcx
jmp 0x140033776
mov ecx, dword [0x1402519c8]
mov eax, dword [0x1402519cc]
xor eax, 0xffffffff
mov edx, 0x4b6e21eb
xor edx, 0x4b6e21eb
mov r8d, 0x37891c2f
xor r8d, 0x37891c2e
sub edx, r8d
sub eax, edx
sub ecx, eax
mov eax, ecx
and eax, 0xd959e7fc
mov edx, 0x113fb50d
xor edx, 0xeec04af2
xor eax, edx
add ecx, 0xd959e7fc
add ecx, 1
add ecx, eax
mov eax, ecx
or eax, 0x5afb8aa0
xor eax, 0xffffffff
or ecx, 0x5afb8aa0
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
sub eax, 0xd0a2d10f
mov ecx, 0x6023336a
xor ecx, 0xa807f445
cmp eax, ecx
ja 0x1400339b3
mov eax, dword [0x1402519d0]
xor edx, edx
div dword [0x1402519d4]
mov ecx, eax
or ecx, 0xbb1a66a3
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x5851de8f
or eax, edx
mov edx, 0x5851de8f
and edx, 0x5851de8f
xor edx, 0xffffffff
and ecx, edx
xor ecx, 0xffffffff
and eax, ecx
xor eax, 0xffffffff
mov ecx, 0x26311f11
xor ecx, 0xe9534785
xor edx, edx
div ecx
mov dword [rsp + 0x4c], eax
mov eax, 0xada85648
xor eax, 0x8367e2a1
mov dword [rsp + 0x48], eax
call fcn.140007e9d
mov ecx, dword [rsp + 0x48]
mov eax, dword [rsp + 0x4c]
cmp eax, ecx
je 0x1400336f1
jmp 0x140033998
mov rax, qword [rsp + 0x80]
mov rcx, qword [rsp + 0x78]
mov rdx, qword [rsp + 0x70]
mov qword [rcx], rdx
mov qword [rsp + 0x40], rax
mov rcx, qword [rsp + 0x70]
mov rax, qword [rsp + 0x40]
mov qword [rsp + 0x38], rax
cmp rax, rcx
jge 0x140033998
mov ecx, dword [0x1402519d8]
mov eax, dword [0x1402519dc]
mov edx, 0x122145bc
xor edx, 0x95809905
xor eax, edx
sub ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, 0x67c21bbf
xor edx, 0xa258d68f
mov r8d, 0xb2eb17c2
xor r8d, 0x4d14e83d
xor edx, r8d
and eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0xc59acd30
and ecx, edx
xor eax, 0xffffffff
xor ecx, 0xffffffff
and eax, ecx
sub eax, 0xc87abdcb
mov ecx, 0xc22ddb00
xor ecx, 0x6ef1c631
xor eax, ecx
cmp eax, 0x59824740
je 0x1400339bc
mov r8, qword [rsp + 0x38]
mov rcx, qword [rsp + 0x58]
mov edx, dword [0x1402519e0]
xor edx, 0x9079dcc5
mov r9d, dword [0x1402519e4]
mov eax, edx
and eax, r9d
xor edx, r9d
or eax, edx
mov r9d, 0x68429d22
xor r9d, 0x7550b738
xor edx, edx
div r9d
mov edx, eax
xor edx, 0xab79ea3b
xor edx, 0xffffffff
and edx, 0xab79ea3b
shl edx, 1
mov r9d, 0xc959110d
xor r9d, 0x6220fb36
sub edx, r9d
sub eax, edx
mov r9d, 0xa952bd86
xor edx, edx
div r9d
mov rcx, qword [rcx]
mov qword [rcx + r8*8 + 8], 0
mov rdx, 0xffffffffffffffff
xor rdx, 1
xor ecx, ecx
sub rcx, 1
sub rdx, rcx
mov rcx, r8
sub rcx, rdx
mov qword [rsp + 0x28], rcx
mov rdx, r8
or rdx, rdx
movabs r9, 0x67bb91545905bbf5
movabs r10, 0x98446eaba6fa440a
xor r9, r10
xor rdx, r9
mov r9, 0xffffffffffffffff
xor r9, 0xffffffffffffffff
mov r10, 0xffffffffffffffff
xor r10, 0xffffffffffffffff
and r9, r10
or rdx, r9
movabs r9, 0xb5f56625c252615a
movabs r10, 0x4a0a99da3dad9ea5
xor r9, r10
xor rdx, r9
xor r8, 0xffffffffffffffff
movabs r9, 0x439433204b2b0edd
movabs r10, 0xbc6bccdfb4d4f122
xor r9, r10
movabs r10, 0xf336312bb9a80b39
movabs r11, 0xcc9ced44657f4c6
xor r10, r11
xor r9, r10
and r8, r9
xor rdx, 0xffffffffffffffff
movabs r9, 0x92243019ad013514
movabs r10, 0x6ddbcfe652fecaeb
xor r9, r10
xor r8, r9
and rdx, r8
and rcx, rdx
cmp rcx, 0
setl cl
mov byte [rsp + 0x37], cl
cmp eax, 0xaaf071f7
ja 0x14003381a
mov rax, qword [rsp + 0x28]
mov cl, byte [rsp + 0x37]
test cl, 1
mov qword [rsp + 0x40], rax
jne 0x140033993
jmp 0x140033790
call fcn.140007e9d
nop
add rsp, 0x88
ret
pop rdi
mov ah, 0xf5
jmp 0x140033428
movsb byte [rdi], byte [rsi]
sbb edx, 0xfb15e995
invalid
invalid
xor ecx, dword [rcx + 0x55e9ac41]
invalid
sub rsp, 0x38
mov qword [rsp + 0x30], rdx
mov qword [rsp + 0x28], rcx
xor eax, eax
mov edx, eax
call fcn.1400331a7
mov rcx, qword [rsp + 0x28]
mov rdx, qword [rsp + 0x30]
add rsp, 0x38
jmp 0x1400333a0