Function at 0x14004d580
Capabilities:
Encode data using xor

Disassembly:
push rsi
push rdi
sub rsp, 0x78
mov qword [rsp + 0x40], rdx
mov qword [rsp + 0x48], rcx
mov r10, qword [rcx]
mov qword [rsp + 0x50], r10
mov rax, rcx
add rax, 8
mov qword [rsp + 0x58], rax
mov rax, qword [rcx + 8]
mov qword [rsp + 0x60], rax
xor ecx, ecx
mov edx, ecx
sub rdx, r10
movabs rcx, 0xf9634b5cae830d5f
movabs r8, 0xf9634b5cae830d5f
xor rcx, r8
movabs r8, 0x98002f0667e94363
movabs r9, 0x98002f0667e94362
xor r8, r9
sub rcx, r8
add rdx, rcx
xor ecx, ecx
sub rcx, rdx
mov qword [rsp + 0x68], rcx
mov r8, r10
xor r8, 0xffffffffffffffff
movabs rdx, 0x3b667632ffd86fd3
and r8, rdx
movabs r11, 0xa4fdc781a29a4e9c
movabs rdx, 0x9f9bb1b35d42214f
xor r11, rdx
movabs rdx, 0x8ed360eca431525a
movabs r9, 0x712c9f135bceada5
xor rdx, r9
xor r11, rdx
and r10, r11
mov rdx, 0xffffffffffffffff
xor rdx, 0xffffffffffffffff
movabs r9, 0x5a4ae78aadee1ab9
movabs rsi, 0x612c91b85236756a
xor r9, rsi
and rdx, r9
movabs r9, 0x767184d2c9290879
movabs rsi, 0x898e7b2d36d6f786
xor r9, rsi
and r9, r11
or r8, r10
or rdx, r9
xor r8, rdx
xor rcx, 0xffffffffffffffff
movabs rdx, 0x2a6d00e34327232f
movabs r9, 0xd592ff1cbcd8dcd0
xor rdx, r9
xor r8, rdx
mov rdx, 0xffffffffffffffff
movabs r9, 0xa6614e585e0f43b6
xor rdx, r9
or rcx, r8
movabs r8, 0xa6614e585e0f43b6
or rdx, r8
xor rcx, 0xffffffffffffffff
and rcx, rdx
mov qword [rsp + 0x70], rcx
cmp rax, 0
je 0x14004d75f
mov rax, qword [rsp + 0x70]
cmp rax, 0
jl 0x14004d755
mov rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
mov rcx, qword [rax]
mov r8, rcx
add r8, 1
xor rcx, 0xffffffffffffffff
movabs r9, 0xbfffffffffffffff
or rcx, r9
add rcx, r8
cmp rcx, rdx
mov qword [rsp + 0x38], rax
jge 0x14004d7a9
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
mov r8d, 1
mov r9d, 8
mov qword [rsp + 0x20], 8
call fcn.1400265f0
mov rcx, qword [rsp + 0x58]
mov qword [rcx], rax
mov qword [rsp + 0x38], rax
jmp 0x14004d7a9
call fcn.14000f24b
jmp 0x14004d914
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rsp + 0x50]
mov r8d, 1
mov r9d, 8
mov qword [rsp + 0x20], 8
call fcn.1400265f0
mov rdx, qword [rsp + 0x58]
mov rcx, qword [rsp + 0x70]
mov qword [rdx], rax
cmp rcx, 0
mov qword [rsp + 0x38], rax
jge 0x14004d7a9
call fcn.14000f24b
jmp 0x14004d914
mov rax, qword [rsp + 0x38]
mov qword [rsp + 0x30], rax
mov eax, dword [0x1402746d8]
mov edx, dword [0x1402746dc]
xor eax, 0xffffffff
mov ecx, 0xdf21c84b
xor ecx, 0x20de37b4
xor edx, ecx
mov ecx, 0xd89c80f3
xor ecx, 0xfb24c668
mov r8d, 0x6d2f9e4c
xor r8d, 0x92d061b3
xor ecx, r8d
or eax, edx
or ecx, 0x23b8469b
mov edx, 0x88ae2085
xor edx, 0x7751df7a
xor eax, edx
and eax, ecx
mov ecx, 0x37989f25
xor ecx, 0xc86760da
mov edx, eax
xor edx, ecx
and edx, 0xc414eeda
mov r8d, 0xffffffff
xor r8d, 0xc414eeda
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov r8d, 0xb7e89619
xor r8d, 0x73fc78c3
mov edx, eax
and edx, r8d
or eax, 0xc414eeda
imul eax, edx
add eax, ecx
and eax, 0x765cb477
mov ecx, eax
xor ecx, 0x55eed68d
mov edx, 0xffffffff
xor edx, 0x55eed68d
and eax, edx
shl eax, 1
sub eax, ecx
cmp eax, 0x4da6a816
jb 0x14004d91b
mov rcx, qword [rsp + 0x30]
mov rdx, qword [rsp + 0x50]
mov r8, qword [rsp + 0x40]
mov r9, qword [rsp + 0x48]
mov r10, qword [rsp + 0x68]
mov eax, dword [0x1402746e0]
mov esi, dword [0x1402746e4]
xor esi, 0x3ae9f84b
mov r11d, eax
xor r11d, esi
mov edi, 0xea6ebdc8
xor edi, 0x15914237
xor r11d, edi
mov edi, esi
and edi, r11d
mov r11d, 0x1f36a866
xor r11d, 0x1f36a864
imul r11d, edi
sub r11d, esi
sub eax, r11d
mov r11d, 0x7bd63853
xor r11d, 0xa7b5347
and eax, r11d
mov r11d, 0x938375bc
xor r11d, 0x6f66bf12
or eax, r11d
mov r11d, 0x8e1014da
xor r11d, 0x4c21a013
sub eax, r11d
mov qword [r9], r10
mov qword [rcx + rdx*8 + 8], r8
cmp eax, 0x7f30ba75
jae 0x14004d871
jmp 0x14004d914
add rsp, 0x78
pop rdi
pop rsi
ret
invalid