Function at 0x140093330
Capabilities:
Encode data using xor

Disassembly:
push rbp
sub rsp, 0x90
lea rbp, [rsp + 0x80]
mov dword [rbp - 0xc], r9d
mov dword [rbp - 0x14], r8d
mov dword [rbp - 0x4c], edx
mov qword [rbp - 0x48], rcx
mov al, byte [rbp + 0x68]
mov byte [rbp - 0x39], al
mov rax, qword [rbp + 0x58]
mov qword [rbp - 0x38], rax
mov rax, qword [rbp + 0x50]
mov qword [rbp - 0x30], rax
mov rax, qword [rbp + 0x48]
mov qword [rbp - 0x28], rax
mov eax, dword [rbp + 0x40]
mov dword [rbp - 0x10], eax
mov eax, 0x20
call fcn.1401f2390
sub rsp, rax
mov rax, rsp
mov qword [rbp - 0x20], rax
sub rsp, 0x20
call fcn.140090510
mov r8d, dword [rbp - 0x14]
mov ecx, dword [rbp - 0x10]
mov r9d, dword [rbp - 0xc]
add rsp, 0x20
mov qword [rbp - 8], rax
cmp r8d, 0
setne al
cmp ecx, 0
setg cl
mov byte [rbp + 6], cl
mov dl, 1
xor dl, 0
xor cl, dl
mov dl, al
xor dl, cl
and dl, al
cmp r9d, 0
setg cl
mov byte [rbp + 7], cl
mov al, cl
and al, dl
xor al, 0xff
xor cl, 0xff
xor dl, 0xff
or cl, dl
and al, cl
xor al, 0xff
test al, 1
jne 0x1400933e9
jmp 0x140093482
mov rax, qword [rbp - 0x38]
mov ecx, dword [rbp - 0x14]
mov rdx, qword [rbp - 0x20]
mov r8d, dword [rbp - 0xc]
mov r9, qword [rbp - 0x28]
mov r10d, dword [rbp - 0x10]
mov r11, qword [rbp - 0x30]
mov qword [rdx], r11
mov dword [rdx + 8], r10d
mov qword [rdx + 0x10], r9
mov dword [rdx + 0x18], r8d
movsxd rdx, ecx
imul r8, rdx, 0x48
mov rcx, rax
add rcx, r8
add rcx, 8
imul rdx, rdx, 0x48
add rax, rdx
add rax, 0x10
mov rax, qword [rax]
mov qword [rbp - 0x60], rax
mov rcx, qword [rcx]
mov qword [rbp - 0x58], rcx
cmp rax, 0
je 0x140093462
mov rax, qword [rbp - 0x58]
mov rdx, qword [rbp - 0x60]
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
call rax
add rsp, 0x20
jmp 0x140093474
mov rax, qword [rbp - 0x58]
mov rcx, qword [rbp - 0x20]
sub rsp, 0x20
call rax
add rsp, 0x20
mov rax, qword [rbp - 8]
mov al, byte [rax]
cmp al, 0
jne 0x1400939c4
mov edx, dword [rbp - 0x10]
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.1400325c0
mov rax, qword [rbp - 8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x93
xor cl, 0x93
cmp al, cl
jne 0x1400939c4
mov al, byte [rbp - 0x39]
test al, 1
jne 0x1400934b9
jmp 0x140093655
mov ecx, dword [0x1401f74f8]
mov edx, dword [0x1401f74fc]
mov eax, 0x8fd60a00
xor eax, 0x95f36925
xor edx, eax
mov eax, ecx
xor eax, edx
mov r8d, 0xd8d05bf5
xor r8d, 0x272fa40a
xor edx, r8d
and ecx, edx
shl ecx, 1
sub ecx, eax
mov eax, ecx
or eax, eax
xor eax, 0xffffffff
mov edx, 0xffffffff
xor edx, 0x4a4b9e57
mov r8d, 0xffffffff
xor r8d, 0x4a4b9e57
and edx, r8d
mov r8d, 0x663f682d
xor r8d, 0x99c097d2
xor eax, r8d
xor edx, 0xffffffff
and eax, edx
mov edx, 0xe8c62c8c
xor edx, 0x1739d373
xor ecx, edx
mov edx, 0x33c50d4f
xor edx, 0x798e9318
mov r8d, 0x47e0f79a
xor r8d, 0xb81f0865
xor edx, r8d
and ecx, edx
or eax, ecx
xor eax, 0xffffffff
mov ecx, 0xb2f0faa5
xor edx, edx
div ecx
mov ecx, 0xeaaf237f
xor ecx, 0x1ae0aa9d
xor edx, edx
div ecx
mov ecx, 0x1245d0d5
xor ecx, 0xf83a81a
cmp eax, ecx
jae 0x1400939ca
mov rcx, qword [rbp - 0x48]
mov eax, dword [0x1401f7500]
xor eax, dword [0x1401f7504]
mov edx, 0x37beb40a
xor edx, 0x37beb40a
sub edx, eax
mov eax, 0xf3f70cf4
xor eax, 0xf3f70cf4
mov r8d, 0x4c25f58e
xor r8d, 0x74913bb4
sub eax, r8d
add edx, eax
xor eax, eax
sub eax, edx
mov r9d, 0xffffffff
xor r9d, 0xeaf772c0
mov r8d, eax
and r8d, r9d
mov edx, eax
or edx, r9d
xor edx, 0xffffffff
imul edx, r8d
mov r8d, eax
and r8d, 0xeaf772c0
mov r9d, 0xcdd78a32
xor r9d, 0x2720f8f2
or eax, r9d
imul eax, r8d
add eax, edx
imul eax, eax, 0x49762cce
mov dword [rbp - 0x68], eax
mov eax, 0xa829ac91
xor eax, 0xd77a8e66
mov dword [rbp - 0x6c], eax
mov edx, 8
sub rsp, 0x20
call fcn.140032722
mov rdx, qword [rbp - 8]
mov ecx, dword [rbp - 0x6c]
mov eax, dword [rbp - 0x68]
add rsp, 0x20
mov dl, byte [rdx]
mov r8b, 0x59
xor r8b, 0x59
cmp dl, r8b
sete dl
mov byte [rbp - 0x61], dl
cmp eax, ecx
jbe 0x1400939ca
mov al, byte [rbp - 0x61]
test al, 1
jne 0x14009367c
jmp 0x1400939c4
mov edx, dword [rbp - 0xc]
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.1400325c0
mov rax, qword [rbp - 8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0x76
xor cl, 0x76
cmp al, cl
jne 0x1400939c4
mov eax, dword [0x1401f7508]
mov ecx, dword [0x1401f750c]
mov edx, 0x4bf044c0
xor edx, 0x7a481fc5
xor ecx, edx
imul eax, ecx
imul eax, eax, 0x49bf865b
mov ecx, 0xaff92348
xor ecx, 0xff98a34a
or eax, ecx
add eax, 0x51c8fdd4
cmp eax, 0xf66f2120
je 0x1400939d3
mov edx, dword [rbp - 0x14]
mov rcx, qword [rbp - 0x48]
mov eax, dword [0x1401f7510]
xor eax, 0x7c308d46
or eax, dword [0x1401f7514]
mov r8d, 0xcad978a1
xor r8d, 0x63801f3
xor eax, r8d
sub eax, 0xf46d8071
sub eax, 0x3a66a0d1
mov r8d, 0xad4ad7e0
xor r8d, 0x59275791
add eax, r8d
xor r8d, r8d
sub r8d, 0xb19c2275
sub eax, r8d
mov dword [rbp - 0x74], eax
sub rsp, 0x20
call fcn.1400325c0
mov rcx, qword [rbp - 8]
mov eax, dword [rbp - 0x74]
add rsp, 0x20
cmp byte [rcx], 0
sete cl
mov byte [rbp - 0x6d], cl
cmp eax, 0xdc70d9cd
je 0x1400936bb
mov al, byte [rbp - 0x6d]
test al, 1
jne 0x140093745
jmp 0x1400939c4
mov edx, dword [rbp - 0x4c]
mov rcx, qword [rbp - 0x48]
sub rsp, 0x20
call fcn.1400325c0
mov rax, qword [rbp - 8]
add rsp, 0x20
mov al, byte [rax]
mov cl, 0xc8
xor cl, 0xc8
cmp al, cl
jne 0x1400939c4
mov eax, dword [0x1401f7518]
xor edx, edx
div dword [0x1401f751c]
mov ecx, 0x5b40b5a2
xor edx, edx
div ecx
mov edx, eax
xor edx, 0xffffffff
and edx, 0x50f071a4
mov r8d, 0x96e9ff96
xor r8d, 0xc6198e32
mov ecx, 0xd97b9208
xor ecx, 0x26846df7
xor r8d, ecx
mov ecx, eax
and ecx, r8d
imul ecx, edx
mov edx, eax
and edx, 0x50f071a4
or eax, 0x50f071a4
imul eax, edx
add eax, ecx
and eax, 0x717487f8
cmp eax, 0xa9056de
je 0x1400939dc
mov eax, dword [0x1401f7520]
mov ecx, dword [0x1401f7524]
xor ecx, 0xb78ee079
mov edx, 0x9100c335
xor edx, 0x421fcd2d
sub eax, edx
add eax, ecx
add eax, 0xd31f0e18
and eax, 0x9d739d15
sub eax, 0x960312c0
mov ecx, 0x33cd2d51
xor edx, edx
div ecx
cmp eax, 0x7714fc26
ja 0x1400937d3
mov al, byte [rbp + 6]
test al, 1
jne 0x140093827
jmp 0x140093851
mov rdx, qword [rbp - 0x30]
mov rcx, qword [rbp - 0x48]
mov eax, dword [rbp - 0x10]
mov eax, eax
mov r8d, eax
sub rsp, 0x20
call fcn.1400322a6
mov rax, qword [rbp - 8]
add rsp, 0x20
cmp byte [rax], 0
jne 0x1400939c4
mov al, byte [rbp - 0x39]
test al, 1
jne 0x140093861
jmp 0x1400938c6
lea rcx, [rbp + 8]
mov edx, 8
sub rsp, 0x20
call fcn.1400939f0
add rsp, 0x20
movabs r8, 0xc357fdd0dc161b35
movabs rax, 0xc357fdd0dc161b3d
xor r8, rax
lea rcx, [rbp + 8]
mov rdx, qword [0x140209358]
sub rsp, 0x20
call fcn.140093c70
mov rcx, qword [rbp - 0x48]
add rsp, 0x20
lea rdx, [rbp + 8]
mov r8d, 8
sub rsp, 0x20
call fcn.1400322a6
add rsp, 0x20
jmp 0x1400939c4
mov ecx, dword [0x1401f7528]
mov edx, dword [0x1401f752c]
mov r8d, ecx
xor r8d, 0xffffffff
mov eax, edx
and eax, r8d
xor edx, 0xffffffff
and ecx, edx
or eax, ecx
mov ecx, eax
xor ecx, 0xffffffff
and ecx, 0x29bb98bf
mov edx, 0xffffffff
xor edx, 0x29bb98bf
and eax, edx
sub eax, ecx
mov ecx, 0xffffffff
xor ecx, 0xd1a19bc3
add eax, ecx
add eax, 1
and eax, 0x93e73b10
cmp eax, 0x3b649033
ja 0x1400939e5
mov cl, byte [rbp + 7]
mov dl, byte [rbp - 0x39]
mov eax, dword [0x1401f7530]
xor eax, 0x8d62e97
mov r10d, dword [0x1401f7534]
xor r10d, 0x6e018fec
mov r8d, 0xed2692a8
xor r8d, 0x12d96d57
mov r9d, r10d
xor r9d, r8d
mov r8d, eax
and r8d, r9d
mov r9d, eax
xor r9d, r10d
add eax, r9d
sub eax, r8d
mov r8d, 0xdad621f0
xor r8d, 0xb267a0fb
add eax, r8d
add eax, 0x4ad38bbf
add eax, 0xd250fc6f
mov r8b, 1
xor r8b, 0
xor dl, r8b
and cl, dl
mov byte [rbp - 0x75], cl
cmp eax, 0x2d94e938
jb 0x1400939e5
mov al, byte [rbp - 0x75]
test al, 1
jne 0x1400939a7
jmp 0x1400939c4
mov rdx, qword [rbp - 0x28]
mov rcx, qword [rbp - 0x48]
mov eax, dword [rbp - 0xc]
mov eax, eax
mov r8d, eax
sub rsp, 0x20
call fcn.1400322a6
add rsp, 0x20
lea rsp, [rbp + 0x10]
pop rbp
ret
cmp edx, esi
invalid
invalid
and al, 0xda
cdq
psubsw mm5, mm6
std
invalid
call 0x1295874ae
xor edi, edi
invalid