Function at 0x1400738c0
Capabilities:
Encode data using xor

Disassembly:
push rbp
push r15
push r14
push rsi
push rdi
push rbx
push rax
mov rbp, rsp
mov rdi, rcx
mov eax, dword [0x141dcb1b0]
sub eax, dword [0x141dcb1b4]
and eax, 0xb9c0b3c6
cmp eax, 0x34ce1b87
je 0x140073917
mov eax, dword [0x141dcb1b8]
and eax, dword [0x141dcb1bc]
imul ecx, eax, 0x9920b9b8
add ecx, 0xb57cda1
mov eax, 0x20
call fcn.1400ef330
sub rsp, rax
mov rsi, rsp
cmp ecx, 0x5c71df23
jae 0x140073926
mov eax, 0x20
call fcn.1400ef330
sub rsp, rax
jmp 0x1400738e7
xor eax, eax
test al, al
jne 0x140073960
mov eax, dword [0x141dcb1c0]
sub eax, dword [0x141dcb1c4]
imul rcx, rax, 0x1fff989d
shr rcx, 0x3c
mov r8, qword [rdi + 0x118]
mov r9, qword [r8 + 0x108]
mov rax, qword [r8 + 0x100]
cmp ecx, 0xb38ed308
jne 0x140073977
mov rax, qword [rdi + 0x118]
mov rcx, qword [rax + 0x108]
mov rax, qword [rax + 0x100]
jmp 0x14007392c
mov rcx, r9
sub rcx, rax
test rcx, rcx
jle 0x140073f04
movzx r10d, byte [rdi + 0x130]
nop
mov eax, dword [0x141dcb1c8]
xor edx, edx
div dword [0x141dcb1cc]
xor eax, 0xfbfcf388
imul eax, eax, 0xd025c29d
or eax, 0x3d17971a
cmp eax, 0x1b306ae2
jb 0x140073990
test r10b, r10b
je 0x140073b1e
lea rcx, [r9 - 1]
nop word cs:[rax + rax]
mov eax, dword [0x141dcb1e8]
xor eax, dword [0x141dcb1ec]
imul eax, eax, 0xceca2558
cmp eax, 0xf4b970f6
je 0x1400739d0
mov eax, dword [0x141dcb1f0]
or eax, dword [0x141dcb1f4]
and eax, 0x58e9f2a8
xor eax, 0x7e2e345b
imul rax, rax, 0x509ec2c7
shr rax, 0x3d
cmp eax, 0xb29fe40a
jne 0x140073a30
mov qword [r8 + 0x108], rcx
mfence
mov rax, qword [rdi + 0x118]
mov rax, qword [rax + 0x100]
nop dword [rax]
mov eax, dword [0x141dcb1f8]
xor edx, edx
div dword [0x141dcb1fc]
and eax, 0x7133a721
imul r10d, eax, 0xe016e74f
and r10d, 0x6d253bb9
mov qword [r8 + 0x108], rcx
mfence
mov rdx, qword [rdi + 0x118]
mov rax, qword [rdx + 0x100]
cmp r10d, 0xde1af04c
ja 0x140073a30
mov r10, rcx
sub r10, rax
js 0x140073ad0
xor r8d, r8d
nop dword [rax]
test r8b, r8b
jne 0x140073a80
mov r11, qword [rdi + 0x120]
mov r8, qword [rdi + 0x128]
mov ebx, dword [0x141dcb228]
imul ebx, dword [0x141dcb22c]
add ebx, 0x9a7ce38d
xor ebx, 0x8693d978
add ebx, 0x980b22f3
cmp ebx, 0x45677533
jae 0x140073cf9
jmp 0x140073d3a
mov eax, dword [0x141dcb238]
or eax, dword [0x141dcb23c]
xor eax, 0x43e40014
and eax, 0x53e41eb7
add eax, 0x9164eec4
cmp eax, 0xd5851bee
ja 0x140073ad0
mov eax, dword [0x141dcb240]
sub eax, dword [0x141dcb244]
imul eax, eax, 0x19539b5
and eax, 0x6c8f0fde
add eax, 0xe49f988c
cmp eax, 0xf66dd404
jbe 0x140073ec5
jmp 0x140073eee
mov eax, dword [0x141dcb1d0]
and eax, dword [0x141dcb1d4]
add eax, 0x7b0516eb
and eax, 0x2e9002d8
cmp eax, 0x80ba8934
jbe 0x140073b50
lock inc qword [r8 + 0x100]
nop word cs:[rax + rax]
mov edx, dword [0x141dcb1d8]
imul edx, dword [0x141dcb1dc]
or edx, 0xfc45ac83
add edx, 0xa4b30505
mov eax, 1
lock xadd qword [r8 + 0x100], rax
cmp edx, 0x16dffbdd
jb 0x140073b50
mov rdx, rax
not rdx
add r9, rdx
nop dword [rax + rax]
mov edx, dword [0x141dcb1e0]
imul edx, dword [0x141dcb1e4]
imul edx, edx, 0x2df31c95
add edx, 0x41661d76
cmp edx, 0x457382bf
jb 0x140073b90
test r9, r9
js 0x140073c68
mov edx, 0xb1548deb
nop
mov r8d, dword [0x141dcb200]
sub r8d, dword [0x141dcb204]
or r8d, 0x63ba97a9
add r8d, 0x526cb781
imul r8, rdx
shr r8, 0x3e
cmp r8d, 0xa50cf249
je 0x140073bc0
mov rdx, qword [rdi + 0x120]
mov r8, qword [rdi + 0x128]
lea r9, [r8 - 1]
and r9, rax
shl r9, 4
mov rbx, qword [rdx + r9]
mov r14, qword [rdx + r9 + 8]
lea rax, [r8 + 3]
test r8, r8
cmovns rax, r8
sar rax, 2
nop
cmp r8, 0x41
setae dl
mov r9d, dword [0x141dcb208]
and r9d, dword [0x141dcb20c]
imul r9d, r9d, 0x40a7fcf4
and r9d, 0xc16bbf94
imul r10d, r9d, 0x790ae349
cmp rcx, rax
setle r9b
cmp r10d, 0xe09498f2
ja 0x140073c20
and dl, r9b
je 0x140073e90
jmp 0x140073e4b
mov rcx, qword [rdi + 0x118]
mov edx, dword [0x141dcb210]
mov r8d, dword [0x141dcb214]
add edx, r8d
add edx, 0x2db6d46f
imul rdx, rdx, 0x285c91c7
shr rdx, 0x3d
cmp edx, 0xbabec45d
jne 0x140073ca0
mov qword [rcx + 0x100], rax
nop
mov edx, dword [0x141dcb218]
or edx, dword [0x141dcb21c]
add edx, 0x7a9d386f
and edx, 0x283224a5
mov qword [rcx + 0x100], rax
cmp edx, 0x75edbaed
je 0x140073ca0
nop word [rax + rax]
mov eax, dword [0x141dcb220]
or eax, dword [0x141dcb224]
imul eax, eax, 0xacfaf3c2
xor eax, 0x53af78e4
imul eax, eax, 0x412cfc35
cmp eax, 0xbab4c9d7
ja 0x140073cd0
jmp 0x140073f04
mov r15d, dword [str.w8S_iy]
imul r15d, dword [0x141dcb234]
or r15d, 0x37f1e071
add r15d, 0xa1a2b189
xor r15d, 0xa0e04b43
lea r14, [r8 - 1]
and r14, rcx
shl r14, 4
mov rbx, qword [r11 + r14]
mov r14, qword [r11 + r14 + 8]
cmp r15d, 0x2b5bb16e
jae 0x140073d50
lea rbx, [r8 - 1]
and rbx, rcx
shl rbx, 4
mov r14, qword [r11 + rbx]
mov rbx, qword [r11 + rbx + 8]
jmp 0x140073cf9
cmp rcx, rax
jne 0x140073db1
mov rax, rcx
lock cmpxchg qword [rdx + 0x100], r9
sete al
nop word cs:[rax + rax]
mov ecx, dword [0x141dcb250]
sub ecx, dword [str.7__W_]
or ecx, 0x6175c4c5
imul rcx, rcx, 0x5b8d7019
shr rcx, 0x3e
or ecx, 0xa9bcca84
cmp ecx, 0xa8204171
jb 0x140073d70
mov rcx, qword [rdi + 0x118]
xor edx, edx
test dl, dl
je 0x140073e67
jmp 0x140073e74
mov eax, dword [0x141dcb258]
xor edx, edx
div dword [0x141dcb25c]
mov ecx, 0x96bffc1f
lea rdx, [r8 + 3]
nop dword [rax + rax]
mov eax, dword [0x141dcb260]
or eax, dword [0x141dcb264]
imul r9d, eax, 0xd55c02a6
imul r9, rcx
shr r9, 0x3d
xor r9d, 0xce0191bb
test r8, r8
mov rax, r8
cmovs rax, rdx
cmp r9d, 0x92cfcb14
jb 0x140073dd0
sar rax, 2
nop dword [rax]
cmp r8, 0x41
setae cl
mov edx, dword [0x141dcb268]
add edx, dword [0x141dcb26c]
imul r9d, edx, 0x65ecbf88
add r9d, 0x5f358939
or r9d, 0xc929eb10
cmp r10, rax
setl dl
cmp r9d, 0xddb42c52
je 0x140073e10
and cl, dl
je 0x140073e90
shr r8, 1
lea rcx, [rdi + 0x118]
sub rsp, 0x20
mov rdx, r8
call fcn.1400f9010
add rsp, 0x20
jmp 0x140073e90
mov qword [rcx + 0x108], r9
xor edx, edx
test dl, dl
je 0x140073e7d
mov qword [rcx + 0x108], r9
jmp 0x140073e67
test al, al
je 0x140073f04
nop word cs:[rax + rax]
mov eax, dword [0x141dcb270]
and eax, dword [0x141dcb274]
imul eax, eax, 0x12768326
imul rax, rax, 0x219a22e9
shr rax, 0x3d
imul eax, eax, 0x94c7ed75
cmp eax, 0xc1e24c0
je 0x140073e90
test rbx, rbx
jne 0x1400740b5
jmp 0x140073f04
mov eax, dword [0x141dcb248]
xor eax, dword [0x141dcb24c]
add eax, 0xfb01ecc6
xor eax, 0x1804032
and eax, 0x4dae4876
mov qword [rdx + 0x108], r9
cmp eax, 0x5e843272
jne 0x140073ef7
mov qword [rdx + 0x108], r9
jmp 0x140073ec5
xor eax, eax
nop dword [rax]
test al, al
jne 0x140073f00
add rdi, 0x138
nop dword [rax + rax]
mov eax, dword [0x141dcb278]
imul eax, dword [0x141dcb27c]
imul eax, eax, 0xea6bbda8
add eax, 0x2b17b69
cmp eax, 0xf4a1de3a
ja 0x140073f10
jmp 0x140073f5f
mov eax, dword [0x141dcb2b8]
xor edx, edx
div dword [0x141dcb2bc]
add eax, 0xee32dc4b
and eax, 0x1402910
cmp eax, 0x5a99836d
je 0x140073f40
mov eax, dword [0x141dcb288]
xor edx, edx
div dword [0x141dcb28c]
imul eax, eax, 0xa81fb0f7
add eax, 0xb24ba28a
cmp eax, 0xb727e99a
jbe 0x140073fa0
sub rsp, 0x20
mov rcx, rsi
mov rdx, rdi
call fcn.140074100
add rsp, 0x20
nop word cs:[rax + rax]
mov eax, dword [0x141dcb290]
xor eax, dword [0x141dcb294]
and eax, 0xa0173129
imul ebx, eax, 0x8982dba8
add ebx, 0xba985848
sub rsp, 0x20
mov rcx, rsi
mov rdx, rdi
call fcn.140074100
add rsp, 0x20
cmp ebx, 0x96ec5d6e
jb 0x140073fa0
mov rax, qword [rsi]
nop dword [rax + rax]
mov ecx, dword [0x141dcb298]
or ecx, dword [0x141dcb29c]
and ecx, 0x36938c16
imul ecx, ecx, 0x39d5a0de
or ecx, 0x8a212b22
cmp ecx, 0xaca86105
ja 0x140073fe0
cmp eax, 2
je 0x140073f40
test rax, rax
jne 0x14007401b
xor ebx, ebx
jmp 0x1400740b5
cmp eax, 1
jne 0x1400740d0
nop word cs:[rax + rax]
mov eax, dword [0x141dcb2a0]
and eax, dword [0x141dcb2a4]
or eax, 0x7d008d5f
imul rax, rax, 0x29cd9777
shr rax, 0x3a
imul eax, eax, 0xf44bd7fd
cmp eax, 0x711d1a61
jb 0x140074030
nop dword [rax]
mov eax, dword [0x141dcb2a8]
xor eax, dword [0x141dcb2ac]
or eax, 0x42aa0008
and eax, 0xc2ae160a
cmp eax, 0xe8a1a084
ja 0x140074060
mov rbx, qword [rsi + 8]
mov r14, qword [rsi + 0x10]
nop word cs:[rax + rax]
mov eax, dword [0x141dcb2b0]
xor edx, edx
div dword [0x141dcb2b4]
xor eax, 0x3b366b72
imul eax, eax, 0xb6a4215a
add eax, 0xac340fdd
cmp eax, 0x5730eebe
ja 0x140074090
mov rax, rbx
mov rdx, r14
lea rsp, [rbp + 8]
pop rbx
pop rdi
pop rsi
pop r14
pop r15
pop rbp
ret
mov eax, dword [0x141dcb280]
xor eax, dword [0x141dcb284]
imul rax, rax, 0x5d738753
shr rax, 0x3d
add eax, 0xef489fb
and eax, 0xec0004c
cmp eax, 0x1de81738
ja 0x1400740d0
ud2