Function at 0x140049000
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x58
mov qword [rsp + 0x50], rdx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0x38], rcx
call fcn.140045cde
mov rcx, qword [rsp + 0x40]
mov qword [rsp + 0x48], rax
call fcn.140045d00
mov rdx, qword [rsp + 0x50]
cmp rdx, 0
jge 0x140049053
mov rcx, qword [rsp + 0x50]
xor eax, eax
mov edx, eax
movabs r8, 0x7fffffffffffffff
call fcn.14000e57e
jmp 0x1400492f5
mov rcx, qword [rsp + 0x50]
call fcn.140045e80
mov rcx, rax
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x30], rcx
cmp byte [rax], 0
jne 0x1400492f5
mov rax, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
mov qword [rcx + 0x10], 0
cmp rax, 0
jge 0x1400491fa
mov ecx, dword [0x1401f51c0]
sub ecx, dword [0x1401f51c4]
mov edx, 0xfcf6cfef
xor edx, 0x55114192
mov eax, ecx
or eax, edx
xor eax, 0xffffffff
mov edx, 0x4f2d81b7
xor edx, 0xe6ca0fca
or ecx, edx
xor ecx, 0xffffffff
or eax, ecx
xor eax, 0xffffffff
sub eax, 0x3408159c
mov ecx, 0xcb8b205b
xor ecx, 0xc2153bfc
mov edx, 0xb3716273
xor edx, 0x4c8e9d8c
xor ecx, edx
add eax, ecx
add eax, 1
mov ecx, 0xdd08b49c
xor ecx, 0xb5bef553
cmp eax, ecx
jb 0x1400492ff
mov rcx, qword [rsp + 0x30]
mov edx, dword [0x1401f51c8]
mov r8d, dword [0x1401f51cc]
xor r8d, 0xffffffff
mov eax, edx
xor eax, r8d
and eax, edx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x2b230fa7
mov r8d, 0xffffffff
xor r8d, 0x2b230fa7
and eax, r8d
or edx, eax
mov r8d, 0xa7e62ad6
xor r8d, 0x34ca200e
mov eax, edx
xor eax, r8d
mov r8d, 0x94b58b6c
xor r8d, 0x6b4a7493
xor eax, r8d
and eax, 0x932c0ad8
shl eax, 1
mov r8d, 0x9a2c492a
xor r8d, 0x90043f2
sub eax, r8d
sub edx, eax
mov eax, edx
or eax, 0x84f85b94
xor eax, 0xffffffff
mov r8d, 0xc4020028
xor r8d, 0x3bfdffd7
xor edx, r8d
mov r8d, 0xcacab399
xor r8d, 0x4e32e80d
mov r9d, 0x43ced729
xor r9d, 0xbc3128d6
xor r8d, r9d
and edx, r8d
xor eax, 0xffffffff
xor edx, 0xffffffff
and eax, edx
mov dword [rsp + 0x2c], eax
movabs rdx, 0x9c3a849565eff0fe
movabs rax, 0x9c3a849565eff0fe
xor rdx, rax
movabs r8, 0x90078dbb41e1c08b
movabs rax, 0xeff87244be1e3f74
xor r8, rax
call fcn.14000e57e
mov eax, dword [rsp + 0x2c]
cmp eax, 0x8ce5111d
je 0x1400490f7
jmp 0x1400492f5
mov eax, dword [0x1401f51d0]
xor edx, edx
div dword [0x1401f51d4]
xor ecx, ecx
sub ecx, 0x1c118c1c
sub eax, ecx
mov ecx, 0xc539a170
xor ecx, 0x8de58262
mov r11d, eax
and r11d, ecx
xor eax, 0x48dc2312
or r11d, eax
mov eax, 0x276f7a36
xor eax, 0xd89085c9
mov ecx, r11d
xor ecx, eax
mov edx, 0xffffffff
xor edx, 0xbc1246ea
mov r8d, 0xffffffff
xor r8d, 0x6a49842c
mov r9d, 0x424621b4
xor r9d, 0x280fa598
mov eax, ecx
and eax, r9d
and r11d, r8d
mov r9d, edx
and r9d, 0x6a49842c
mov r10d, r8d
and r10d, 0xbc1246ea
or eax, r11d
or r9d, r10d
xor eax, r9d
or ecx, edx
xor ecx, 0xffffffff
mov edx, 0x1d340f9
xor edx, 0x6b9ac4d5
or edx, r8d
and ecx, edx
or eax, ecx
cmp eax, 0x52d93828
je 0x140049308
mov rdx, qword [rsp + 0x30]
mov rcx, qword [rsp + 0x40]
mov eax, dword [0x1401f51d8]
mov r8d, dword [0x1401f51dc]
xor r8d, 0xed5c97f9
imul eax, r8d
imul eax, eax, 0x5f330ea7
add eax, 0x7b06ac48
and eax, 0x3d071d9
mov dword [rsp + 0x28], eax
call fcn.140016b1b
mov eax, dword [rsp + 0x28]
cmp eax, 0x20e0dbef
je 0x1400492a6
jmp 0x1400492f5
mov rax, qword [rsp + 0x38]
add rsp, 0x58
ret
jno 0x140049281
insd dword [rdi], dx
hlt
or al, 0x91
invalid