Function at 0x1400183d0
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0xb8
mov qword [rsp + 0x88], rdx
mov qword [rsp + 0x90], rcx
mov rax, rcx
add rax, 8
mov qword [rsp + 0x98], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0xa0], rax
mov rcx, rdx
add rcx, 8
mov qword [rsp + 0xa8], rcx
mov rcx, qword [rdx + 8]
mov qword [rsp + 0xb0], rcx
cmp rax, rcx
je 0x140018bbe
mov rax, qword [rsp + 0xb0]
cmp rax, 0
je 0x14001846d
mov rcx, qword [rsp + 0xb0]
movabs rax, 0x4000000000000000
and rax, qword [rcx]
movabs rcx, 0x51149d9697f1d290
movabs rdx, 0x51149d9697f1d290
xor rcx, rdx
cmp rax, rcx
je 0x140018615
mov rax, qword [rsp + 0xb0]
mov rcx, qword [rsp + 0xa0]
cmp rcx, 0
mov qword [rsp + 0x80], rax
je 0x1400185e7
mov rax, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xa0]
movabs rcx, 0x4000000000000000
and rcx, qword [rdx]
cmp rcx, 0
mov qword [rsp + 0x80], rax
jne 0x1400185e7
mov eax, dword [0x140241ce8]
mov ecx, 0x5fe80421
xor ecx, 0x615c9383
xor eax, ecx
xor edx, edx
div dword [0x140241cec]
mov r8d, 0x879ff037
xor r8d, 0xb44cc443
mov ecx, 0xc47d41a8
xor ecx, 0x3b82be57
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov edx, eax
and edx, 0x33d33474
mov r8d, 0x6c531382
xor r8d, 0x5f8027f6
or eax, r8d
imul eax, edx
add eax, ecx
mov ecx, 0x94656287
xor ecx, 0xb8ce0e3a
sub eax, ecx
sub eax, 0x81e180da
mov ecx, 0x6d8d8c80
xor ecx, 0x4126e03d
add eax, ecx
or eax, 0xedaf17f2
cmp eax, 0xc8cad8aa
jb 0x140018bc7
mov rcx, qword [rsp + 0xa0]
mov eax, dword [0x140241cf0]
and eax, dword [0x140241cf4]
mov r8d, eax
xor r8d, 0xffffffff
and r8d, 0x21bcea02
mov r9d, 0xffffffff
xor r9d, 0x21bcea02
mov edx, eax
and edx, r9d
imul edx, r8d
mov r8d, eax
and r8d, 0x21bcea02
or eax, 0x21bcea02
imul eax, r8d
add eax, edx
mov r8d, 0xc4214725
xor edx, edx
div r8d
xor eax, 0xf8ec9e36
mov dword [rsp + 0x74], eax
call fcn.14000f4b7
mov rcx, qword [rsp + 0xa8]
mov eax, dword [rsp + 0x74]
mov rcx, qword [rcx]
mov qword [rsp + 0x78], rcx
cmp eax, 0xebdab63f
je 0x140018550
mov rax, qword [rsp + 0x78]
mov qword [rsp + 0x80], rax
jmp 0x1400185e7
mov rax, qword [rsp + 0x98]
mov rdx, qword [rsp + 0x90]
mov r8, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x80]
mov r8, qword [r8]
mov qword [rdx], r8
mov qword [rax], rcx
jmp 0x140018bbe
mov rax, qword [rsp + 0xa0]
cmp rax, 0
je 0x1400186b8
mov rax, qword [rsp + 0xa0]
mov rax, qword [rax]
mov qword [rsp + 0x68], 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 0x1400186b8
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rsp + 0x88]
mov rdx, qword [rsp + 0x68]
mov r8, rdx
add r8, 1
xor rdx, 0xffffffffffffffff
movabs r9, 0xbfffffffffffffff
or rdx, r9
add rdx, r8
mov rax, qword [rax]
cmp rdx, rax
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rax
jge 0x140018a13
mov rcx, qword [rsp + 0xa0]
call fcn.14000f4b7
mov rax, qword [rsp + 0x88]
mov rdx, qword [rax]
mov qword [rsp + 0x50], rdx
movabs rcx, 0xd4f11413a921bcd7
movabs rax, 0xd4f11413a921bcd6
xor rcx, rax
mov rax, rdx
add rax, rcx
movabs rcx, 0x99667cc2f0e066dd
movabs r8, 0x6699833d0f1f9922
xor rcx, r8
xor rdx, rcx
mov rcx, rax
xor rcx, rdx
xor rcx, 0xffffffffffffffff
or rax, rdx
and rax, rcx
cmp rax, 0
jge 0x140018839
mov eax, dword [0x140241cf8]
xor eax, 0x63c6e7d8
mov ecx, dword [0x140241cfc]
mov edx, 0xf325826f
xor edx, 0xf51c44fe
xor ecx, edx
and eax, ecx
mov ecx, 0x54cd93f5
xor ecx, 0x4cb0f6b0
xor edx, edx
div ecx
mov edx, 0xcc8f410d
xor edx, 0xf5b5b840
mov ecx, eax
and ecx, edx
mov edx, 0x1d76175f
xor edx, 0x244cee12
xor eax, edx
or ecx, eax
mov eax, ecx
xor eax, 0xffffffff
mov edx, ecx
xor edx, 0xffffffff
or eax, edx
mov edx, 0xb7b2190c
xor edx, 0x1d99cf31
and eax, edx
xor eax, 0xffffffff
mov edx, 0x4af1a6c0
xor edx, 0xe0da70fd
mov r8d, 0xbac6aa7b
xor r8d, 0x10ed7c46
and edx, r8d
xor edx, 0xffffffff
and ecx, edx
mov edx, 0x4208a9bf
xor edx, 0xbdf75640
xor ecx, edx
xor eax, 0xffffffff
mov edx, 0x9e89e90d
xor edx, 0x617616f2
xor ecx, edx
or eax, ecx
cmp eax, 0xe49c2610
ja 0x140018bd0
mov eax, dword [0x140241d00]
mov ecx, dword [0x140241d04]
xor ecx, 0xfc2e1bc9
or eax, ecx
mov ecx, 0x28e0c3c6
xor ecx, 0x28e0c3c6
mov edx, 0x6b610af6
xor edx, 0x2a8cb1de
sub ecx, edx
add eax, ecx
mov edx, eax
and edx, 0x31cd2805
mov ecx, 0x7c5a1c88
xor ecx, 0x7c5a1c8a
imul ecx, edx
add eax, 0x31cd2805
sub eax, ecx
add eax, 0xf5539613
mov dword [rsp + 0x4c], eax
call fcn.140008d37
mov eax, dword [rsp + 0x4c]
cmp eax, 0x9b5574c3
je 0x1400187cc
jmp 0x140018bbe
mov rdx, qword [rsp + 0x50]
mov rax, rdx
and rax, 9
movabs r8, 0xe419e41e440f6a3f
movabs rcx, 0xe419e41e440f6a36
xor r8, rcx
mov rcx, rdx
or rcx, r8
add rax, rcx
mov qword [rsp + 0x40], rax
movabs rcx, 0xd98054c992999a69
movabs r8, 0x267fab366d666597
xor rcx, r8
sub rcx, rdx
and rax, rcx
cmp rax, 0
jge 0x1400189ab
mov ecx, dword [0x140241d08]
mov eax, 0x38af0012
xor eax, 0xe1e9be1c
xor ecx, eax
mov edx, dword [0x140241d0c]
mov eax, ecx
and eax, edx
xor ecx, edx
or eax, ecx
mov ecx, 0xaec52db
xor edx, edx
div ecx
mov ecx, eax
add ecx, 0x6a18a8ba
sub ecx, 0x5454c508
sub ecx, 0x6a18a8ba
mov eax, ecx
or eax, 0x710e66e0
xor eax, 0xffffffff
or ecx, 0x710e66e0
mov edx, 0x1816b6cd
xor edx, 0xe7e94932
xor ecx, edx
or eax, ecx
mov ecx, 0x9160c86b
xor ecx, 0x6e9f3794
xor eax, ecx
cmp eax, 0xcc5e7543
jbe 0x140018bd9
mov r11d, dword [0x140241d10]
and r11d, dword [0x140241d14]
mov eax, 0xd0925b88
xor eax, 0x2f6da477
mov ecx, r11d
xor ecx, eax
mov r8d, 0xffffffff
xor r8d, 0x61b32f6c
mov edx, 0xffffffff
xor edx, 0x469d1c23
mov eax, ecx
and eax, 0x469d1c23
and r11d, edx
mov r10d, 0x3ffd4f74
xor r10d, 0x79605357
mov r9d, r8d
and r9d, r10d
mov r10d, 0x1a4deb37
xor r10d, 0x7bfec45b
and r10d, edx
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, r8d
xor ecx, 0xffffffff
or edx, 0x469d1c23
and ecx, edx
or eax, ecx
mov ecx, 0xc899dabe
xor edx, edx
div ecx
or eax, 0xa1137f2
mov dword [rsp + 0x3c], eax
call fcn.140008d37
mov eax, dword [rsp + 0x3c]
cmp eax, 0x3b451566
jae 0x140018bd9
jmp 0x140018bbe
mov rax, qword [rsp + 0x40]
movabs rcx, 0xa14c788f78e66a89
movabs rdx, 0xa14c788f78e66a89
xor rcx, rdx
cmp rax, rcx
jge 0x1400189e0
mov rcx, r8
mov rdx, r8
call fcn.14000db87
jmp 0x140018bbe
mov rcx, qword [rsp + 0x40]
call fcn.14000bbdd
mov rdx, qword [rsp + 0x98]
mov rcx, rax
mov rax, qword [rsp + 0x88]
mov qword [rdx], rcx
mov rdx, qword [rax]
mov qword [rcx], rdx
mov rax, qword [rax]
mov qword [rsp + 0x58], rcx
mov qword [rsp + 0x60], rax
mov rax, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x90]
mov r8, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov qword [rsp + 0x28], r8
mov qword [rcx], rdx
mov rdx, qword [rax]
mov rax, rdx
add rax, 1
mov qword [rsp + 0x30], rax
mov rcx, rdx
xor rcx, 0xffffffffffffffff
and rcx, 0xffffffffffffffff
movabs r8, 0x626add3ff1468b9a
movabs r9, 0x9d9522c00eb97465
xor r8, r9
movabs r9, 0x23b524e2ec6a3a1
movabs r10, 0xfdc4adb1d1395c5e
xor r9, r10
xor r8, r9
and rdx, r8
or rcx, rdx
and rax, rcx
movabs rcx, 0x2ecb6ef0adcfdde6
movabs rdx, 0x2ecb6ef0adcfdde6
xor rcx, rdx
cmp rax, rcx
jge 0x140018ab3
call fcn.140008d37
jmp 0x140018bbe
mov rax, qword [rsp + 0x30]
cmp rax, 0
jge 0x140018b9c
mov eax, dword [0x140241d18]
xor edx, edx
div dword [0x140241d1c]
sub eax, 0xeb05b72b
mov ecx, 0xae5fee72
xor ecx, 0x9a171d1b
add eax, ecx
add eax, 0xeb05b72b
mov ecx, 0x5e72c87d
xor ecx, 0x366fff78
xor eax, ecx
mov r8d, 0x8e2fa54d
xor r8d, 0xf780e550
mov ecx, 0xffa55179
xor ecx, 0x5aae86
xor r8d, ecx
mov edx, eax
and edx, r8d
mov ecx, eax
or ecx, r8d
xor ecx, 0xffffffff
imul ecx, edx
mov r8d, 0x5139f076
xor r8d, 0x2896b06b
mov edx, eax
and edx, r8d
or eax, 0x79af401d
imul eax, edx
add eax, ecx
cmp eax, 0x6ae7de28
ja 0x140018be2
mov ecx, dword [0x140241d20]
mov edx, dword [0x140241d24]
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
add eax, 0xd85fbe84
mov ecx, 0xce4f705c
xor edx, edx
div ecx
imul eax, eax, 0xb29fe7f3
mov dword [rsp + 0x24], eax
mov rcx, r8
mov rdx, r8
call fcn.14000db87
mov eax, dword [rsp + 0x24]
cmp eax, 0xed596b3c
ja 0x140018be2
jmp 0x140018bbe
mov r8, qword [rsp + 0x30]
mov rax, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x28]
add rcx, 8
mov rdx, qword [rax]
add rdx, 8
call fcn.140031b4a
nop
add rsp, 0xb8
ret
invalid
invalid
sahf
adc ch, byte [rax + rax - 0x17]
and edi, ebp
invalid
or ecx, dword [rsp + rbp*2 - 0xa41635]
invalid