Function at 0x140074a70
Capabilities:
Encode data using xor

Disassembly:
sub rsp, 0x48
mov dword [rsp + 0x3c], edx
mov qword [rsp + 0x30], rcx
call fcn.1400741ed
mov edx, dword [rsp + 0x3c]
mov qword [rsp + 0x40], rax
mov eax, 0x4a0fece6
xor eax, 0xb5f01306
cmp edx, eax
jge 0x140074b4e
mov eax, dword [rsp + 0x3c]
cmp eax, 0xffff8000
jae 0x140074adc
mov rcx, qword [rsp + 0x30]
mov edx, 0xd2
call fcn.140038540
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x140074d7e
mov edx, dword [rsp + 0x3c]
mov rcx, qword [rsp + 0x30]
call fcn.14007456f
jmp 0x140074d7e
mov eax, dword [rsp + 0x3c]
cmp eax, 0xffffff80
jae 0x140074b1c
mov rcx, qword [rsp + 0x30]
mov dl, 0xfd
xor dl, 0x2c
call fcn.140038540
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x140074d7e
mov rcx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
mov dx, ax
call fcn.1400744b9
jmp 0x140074d7e
mov rcx, qword [rsp + 0x30]
mov dl, 0x68
xor dl, 0xb8
call fcn.140038540
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x140074d7e
mov rcx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
mov dl, al
call fcn.140038540
jmp 0x140074d7e
mov eax, dword [rsp + 0x3c]
cmp eax, 0x80
jge 0x140074b80
mov rax, qword [rsp + 0x40]
cmp byte [rax], 0
jne 0x140074d7e
mov rcx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
mov dl, al
call fcn.140038540
jmp 0x140074d7e
mov eax, dword [rsp + 0x3c]
cmp eax, 0x100
jae 0x140074c8e
mov eax, dword [0x140219b58]
mov edx, dword [0x140219b5c]
xor edx, 0x7165fd0f
mov ecx, eax
and ecx, edx
or eax, edx
add ecx, eax
mov eax, 0x4ed5ae08
xor eax, 0xfa094cf
sub ecx, eax
mov eax, 0xb476c6c9
xor eax, 0x15433ac7
sub ecx, eax
mov eax, 0x60e76787
xor eax, 0x21925d40
add ecx, eax
mov eax, ecx
and eax, 0x3d6cc152
mov edx, 0xb579c26d
xor edx, 0x4a863d92
xor eax, edx
xor ecx, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x3d6cc152
or ecx, edx
and eax, ecx
xor eax, 0xffffffff
or eax, 0x87921ac
mov ecx, 0x3276bf5d
xor ecx, 0x71b2065d
cmp eax, ecx
je 0x140074d84
mov rcx, qword [rsp + 0x30]
mov eax, dword [0x140219b60]
xor eax, dword [0x140219b64]
or eax, 0x8ede930c
and eax, 0xbd69c3d0
mov edx, 0xc537419c
xor edx, 0x5eb4f7a0
xor eax, edx
mov dword [rsp + 0x28], eax
mov edx, 0xcc
call fcn.140038540
mov rcx, qword [rsp + 0x40]
mov eax, dword [rsp + 0x28]
mov cl, byte [rcx]
mov dl, 0x16
xor dl, 0x16
cmp cl, dl
sete cl
mov byte [rsp + 0x2f], cl
cmp eax, 0xe398b9da
ja 0x140074c0e
mov al, byte [rsp + 0x2f]
test al, 1
jne 0x140074c79
jmp 0x140074d7e
mov rcx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
mov dl, al
call fcn.1400386b8
jmp 0x140074d7e
mov eax, dword [rsp + 0x3c]
cmp eax, 0x10000
jae 0x140074d4d
mov rcx, qword [rsp + 0x30]
mov edx, 0xcd
call fcn.140038540
mov rax, qword [rsp + 0x40]
mov al, byte [rax]
mov cl, 0xf4
xor cl, 0xf4
cmp al, cl
jne 0x140074d7e
mov eax, dword [0x140219b68]
xor eax, 0x7d91a967
sub eax, dword [0x140219b6c]
mov ecx, 0xc7e3ca24
xor ecx, 0x993a7b51
sub eax, ecx
xor eax, 0x7b30e40b
mov ecx, 0xdc8101c1
xor edx, edx
div ecx
mov ecx, 0xaa54e63b
xor ecx, 0x89e6fff2
cmp eax, ecx
ja 0x140074d8d
mov rcx, qword [rsp + 0x30]
mov eax, dword [rsp + 0x3c]
mov edx, dword [0x140219b70]
xor edx, dword [0x140219b74]
and edx, 0xec9327dc
imul edx, edx, 0xec922f53
xor r8d, r8d
sub r8d, 0x7e997b6f
sub edx, r8d
mov dword [rsp + 0x24], edx
mov dx, ax
call fcn.1400744b9
mov eax, dword [rsp + 0x24]
cmp eax, 0x7a70a7c7
jbe 0x140074d8d
jmp 0x140074d7e
mov rcx, qword [rsp + 0x30]
mov edx, 0xce
call fcn.140038540
mov rax, qword [rsp + 0x40]
mov al, byte [rax]
mov cl, 0x3c
xor cl, 0x3c
cmp al, cl
jne 0x140074d7e
mov edx, dword [rsp + 0x3c]
mov rcx, qword [rsp + 0x30]
call fcn.14007456f
nop
add rsp, 0x48
ret
rol dword [rbp - 0x7e1653d4], cl
invalid
jg 0x140074d84
insd dword [rdi], dx
shr ecx, cl
imul edi, edi, 0x8348ffff
sub rsp, 0x38
mov dword [rsp + 0x34], edx
mov qword [rsp + 0x28], rcx
sub rsp, 0x38
mov dword [rsp + 0x34], edx
mov qword [rsp + 0x28], rcx
call fcn.1400741ed
mov rcx, qword [rsp + 0x28]
mov edx, dword [rsp + 0x34]
add rsp, 0x38
jmp 0x140074a70