Function at 0x1400fe930
Capabilities:
Encode data using xor
Encrypt data using rc4 ksa

Disassembly:
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0x88
mov qword [rsp + 0x78], r8
mov r12, rdx
mov rdi, rcx
nop
mov eax, dword [0x141dd7548]
xor eax, dword [0x141dd754c]
imul eax, eax, 0xc782c9df
imul rax, rax, 0xfb87033
shr rax, 0x3b
or eax, 0x3a694598
cmp eax, 0x62ad5825
je 0x1400fe950
mov r15, qword [rdi + 0x18]
cmp r15, 0xffffffffffffffff
je 0x1400fefc0
mov r9, qword [rdi + 8]
mov eax, 0xe8f43ed1
lea r8, [r9 + 1]
mov rdx, r8
shr rdx, 3
mov rcx, r8
and rcx, 0xfffffffffffffff8
sub rcx, rdx
nop word cs:[rax + rax]
mov edx, dword [0x141dd7550]
and edx, dword [0x141dd7554]
imul rdx, rax
shr rdx, 0x3d
imul edx, edx, 0xad07e935
xor edx, 0x6d1cf6d5
cmp r9, 8
mov r14, rcx
cmovb r14, r9
cmp edx, 0xdccc96f6
ja 0x1400fe9b0
mov rax, r14
shr rax, 1
movabs rbx, 0x7ffffffffffffff1
cmp r15, rax
mov qword [rsp + 0x30], r9
mov qword [rsp + 0x40], rdi
mov qword [rsp + 0x38], r15
jae 0x1400feaf0
mov eax, 0xd54a639b
mov r10, r8
shr r10, 4
nop word [rax + rax]
mov ecx, dword [0x141dd7670]
imul ecx, dword [0x141dd7674]
imul ecx, ecx, 0xaef62afc
or ecx, 0x3a7c474a
imul rcx, rax
shr rcx, 0x3c
cmp ecx, 0x3815ae19
ja 0x1400fea20
mov rsi, qword [rdi]
nop dword [rax]
xor ecx, ecx
test r8b, 0xf
setne al
mov edx, dword [0x141dd7678]
or edx, dword [0x141dd767c]
and edx, 0xca10a3c6
imul edx, edx, 0x38701b90
cmp edx, 0xf5040e0d
ja 0x1400fea50
mov cl, al
add rcx, r10
je 0x1400fed00
nop word cs:[rax + rax]
mov eax, dword [0x141dd7680]
and eax, dword [0x141dd7684]
imul eax, eax, 0x700f34e
add eax, 0xae40218e
cmp eax, 0xc1df3fc7
ja 0x1400fea90
nop
mov eax, dword [0x141dd7688]
xor edx, edx
div dword [0x141dd768c]
imul eax, eax, 0x9a1a3820
add eax, 0x8c0ca98
or eax, 0xb3868ee5
cmp eax, 0xa697c734
jb 0x1400feab0
cmp rcx, 1
jne 0x1400febb0
xor r10d, r10d
jmp 0x1400fec40
mov eax, dword [0x141dd7560]
or eax, dword [0x141dd7564]
and eax, 0xd0bb5e6
imul ecx, eax, 0x5903c388
add ecx, 0x16e0c4c6
cmp r15, r14
mov rax, r14
cmova rax, r15
cmp ecx, 0xa4f9f1f6
ja 0x1400feaf0
nop
mov ecx, dword [0x141dd7568]
or ecx, dword [0x141dd756c]
add ecx, 0xd8dfe65e
imul rcx, rcx, 0x440195e5
shr rcx, 0x3e
cmp ecx, 0x182d87fe
je 0x1400feb20
xor ecx, ecx
nop word [rax + rax]
test cl, cl
jne 0x1400feb50
cmp rax, 7
jae 0x1400fedb9
nop
xor ecx, ecx
cmp rax, 3
setae dl
mov r9d, dword [0x141dd7578]
imul r9d, dword [0x141dd757c]
add r9d, 0xd70d97b4
xor r9d, 0x42cfbf84
cmp r9d, 0x45dc2543
ja 0x1400feb60
mov cl, dl
lea r14, [rcx*4 + 4]
xor eax, eax
nop dword [rax + rax]
test al, al
jne 0x1400feba0
jmp 0x1400feea8
mov eax, dword [0x141dd7690]
sub eax, dword [0x141dd7694]
or eax, 0x6d08a484
xor eax, 0x379e77a7
cmp eax, 0x26c086f
jb 0x1400febb0
mov eax, r8d
and eax, 0xf
cmp rax, 1
sbb r10, 0xffffffffffffffff
movabs rax, 0x1ffffffffffffffe
and rax, r10
xor edx, edx
movdqa xmm0, xmmword [0x140103680]
nop word cs:[rax + rax]
pxor xmm1, xmm1
pcmpgtb xmm1, xmmword [rsi + rdx]
por xmm1, xmm0
movdqa xmmword [rsi + rdx], xmm1
lea r10, [rdx + 0x20]
pxor xmm1, xmm1
pcmpgtb xmm1, xmmword [rsi + rdx + 0x10]
por xmm1, xmm0
movdqa xmmword [rsi + rdx + 0x10], xmm1
mov rdx, r10
add rax, 0xfffffffffffffffe
jne 0x1400fec00
nop word cs:[rax + rax]
mov eax, dword [0x141dd7698]
add eax, dword [0x141dd769c]
imul eax, eax, 0x4a19522e
or eax, 0xd8016fc5
add eax, 0x6db56dc6
cmp eax, 0xed3511a1
ja 0x1400fec40
test cl, 1
je 0x1400fed00
movdqa xmm1, xmmword [rsi + r10]
mov eax, dword [0x141dd76a0]
xor edx, edx
div dword [0x141dd76a4]
pxor xmm0, xmm0
pcmpgtb xmm0, xmm1
por xmm0, xmmword [0x140103680]
mov eax, dword [0x141dd76a8]
and eax, dword [0x141dd76ac]
or eax, 0xe8b26714
imul eax, eax, 0xcd8027c3
add eax, 0x55f99bc5
cmp eax, 0x51202edc
ja 0x1400fec90
mov eax, dword [0x141dd76b0]
xor eax, dword [0x141dd76b4]
imul eax, eax, 0xc9f7bb58
or eax, 0x2f1370a4
imul rax, rax, 0x1b52d1c3
shr rax, 0x3b
cmp eax, 0x2b58f52b
jbe 0x1400fece2
movdqa xmmword [rsi + r10], xmm0
xor eax, eax
nop word cs:[rax + rax]
movdqa xmmword [rsi + r10], xmm0
test al, al
jne 0x1400fecf0
nop word [rax + rax]
mov eax, dword [0x141dd76b8]
or eax, dword [0x141dd76bc]
or eax, 0x640a7e2
add eax, 0x8c227a7b
and eax, 0xb343061
cmp eax, 0xf3ade512
ja 0x1400fed00
nop word cs:[rax + rax]
mov eax, dword [0x141dd76c0]
and eax, dword [0x141dd76c4]
or eax, 0x81ce5c95
imul eax, eax, 0xed4a8562
add eax, 0xa7bc4948
cmp eax, 0x5c1e8385
ja 0x1400fed30
cmp r8, 0x10
jae 0x1400fef9f
lea rcx, [rsi + 0x10]
mov rdx, rsi
call sub.VCRUNTIME140.dll_memmove
nop dword [rax]
mov eax, dword [0x141dd76d0]
and eax, dword [0x141dd76d4]
imul eax, eax, 0x430c26f6
cmp eax, 0x1bc83d33
je 0x1400fed70
mov r9, qword [rsp + 0x30]
nop
mov eax, dword [0x141dd76d8]
or eax, dword [0x141dd76dc]
and eax, 0xe837d56c
cmp eax, 0xb93208d8
je 0x1400fed90
cmp r9, 0xffffffffffffffff
jne 0x1400ff673
xor edx, edx
jmp 0x140100065
movabs rcx, 0x1ffffffffffffffe
nop word cs:[rax + rax]
mov edx, dword [0x141dd7570]
or edx, dword [0x141dd7574]
add edx, 0x4c86afbc
cmp edx, 0x7e359008
ja 0x1400fedd0
cmp rax, rcx
ja 0x1400feff1
lea r11, [rax*8 + 8]
nop dword [rax + rax]
mov eax, dword [0x141dd7580]
xor edx, edx
div dword [0x141dd7584]
add eax, 0x6e614be2
and eax, 0xb66ed246
cmp eax, 0x882de37d
ja 0x1400fee00
movabs r9, 0x2492492492492493
nop dword [rax]
mov r10d, dword [0x141dd7588]
or r10d, dword [0x141dd758c]
mov rax, r11
mul r9
mov rax, r11
sub rax, rdx
shr rax, 1
add rax, rdx
shr rax, 2
dec rax
bsr rcx, rax
not ecx
mov r14, 0xffffffffffffffff
shr r14, cl
cmp r10d, 0xae2b73d0
je 0x1400fee30
inc r14
nop word cs:[rax + rax]
mov eax, dword [0x141dd7590]
or eax, dword [0x141dd7594]
and eax, 0xffc43d60
add eax, 0x4e926948
imul rax, rax, 0x13b1d6f5
shr rax, 0x3a
cmp eax, 0x67354549
je 0x1400fee80
mov ecx, 0xe236eec9
mov r11d, 0xfffbc133
mov r9d, 0x160
nop dword [rax]
mov eax, dword [0x141dd75a8]
xor eax, dword [0x141dd75ac]
imul rax, rcx
shr rax, 0x3c
imul r10d, eax, 0x4a95c938
imul r10, r11
shr r10, 0x3e
mov rax, r14
mul r9
mov rsi, rax
seto al
cmp r10d, 0x58d74d8
ja 0x1400feec0
test al, al
jne 0x1400fefb1
mov eax, dword [0x141dd75b0]
xor edx, edx
div dword [0x141dd75b4]
lea rbp, [r14 + 0x10]
nop word cs:[rax + rax]
mov eax, dword [0x141dd75b8]
imul eax, dword [0x141dd75bc]
or eax, 0xd3598927
imul eax, eax, 0xd7772c21
xor eax, 0x425574a8
cmp eax, 0x513ba053
jb 0x1400fef20
mov r9, rsi
add r9, rbp
jb 0x1400fefb1
lea rax, [rbx - 1]
mov ecx, dword [0x141dd75c0]
sub ecx, dword [0x141dd75c4]
and ecx, 0x4b0a0006
cmp ecx, 0x5caae947
je 0x1400fef50
cmp r9, rax
ja 0x1400fefb1
mov qword [rsp + 0x50], r8
mov eax, dword [0x141dd75d8]
and eax, dword [0x141dd75dc]
add eax, 0x704ff03a
xor eax, 0xd1440230
and eax, 0xd3dc46b2
cmp eax, 0xebf2ee1b
jne 0x1400ff0b6
jmp 0x1400ff0e8
add r8, rsi
xor eax, eax
test al, al
je 0x1400ff631
jmp 0x1400ff640
xor eax, eax
test al, al
je 0x1400ff056
jmp 0x1400ff075
xor eax, eax
test al, al
je 0x1400fefd0
ud2
mov eax, dword [0x141dd7558]
mov ecx, dword [0x141dd755c]
add eax, ecx
add eax, 0x73190071
ud2
mov eax, dword [0x141dd7598]
sub eax, dword [0x141dd759c]
and eax, 0xa415e04
imul eax, eax, 0x8e7712c3
cmp eax, 0x1e132b7a
jbe 0x1400ff011
ud2
mov eax, 0xd41884a7
nop word cs:[rax + rax]
mov ecx, dword [0x141dd75a0]
and ecx, dword [0x141dd75a4]
or ecx, 0x3958ade0
add ecx, 0xb6ada5e2
imul rcx, rax
shr rcx, 0x3f
ud2
mov eax, dword [0x141dd75c8]
xor eax, dword [0x141dd75cc]
or eax, 0x2040a000
and eax, 0xa141a0ca
ud2
ud2
mov eax, dword [0x141dd75e0]
xor edx, edx
div dword [0x141dd75e4]
imul rax, rax, 0x1e00f927
shr rax, 0x3b
imul eax, eax, 0x5ec4272f
or eax, 0x40ac56a6
movzx ecx, byte [0x141ddc4f8]
cmp eax, 0x21b6af9
jae 0x1400ff0f1
movzx eax, byte [0x141ddc4f8]
jmp 0x1400ff0b6
xor ecx, ecx
mov rdx, r9
call fcn.1400c0a10
test rax, rax
je 0x1400ff491
mov r13, rax
mov qword [rsp + 0x70], r12
mov eax, dword [0x141dd75f0]
imul eax, dword [0x141dd75f4]
xor eax, 0x8a48d59f
imul eax, eax, 0x4948c982
add eax, 0x47edddc9
cmp eax, 0x44b5c13d
jae 0x1400ff13e
lea rcx, [rsi + r13]
mov dl, 0xff
mov r8, rbp
call sub.VCRUNTIME140.dll_memset
lea rbx, [r14 - 1]
mov rax, r14
shr rax, 3
mov r15, r14
and r15, 0xfffffffffffffff8
sub r15, rax
add r13, rsi
nop word cs:[rax + rax]
mov eax, dword [0x141dd75f8]
imul eax, dword [0x141dd75fc]
imul r12d, eax, 0x193c4936
cmp r14, 9
mov rsi, r15
cmovb rsi, rbx
mov rcx, r13
mov dl, 0xff
mov r8, rbp
call sub.VCRUNTIME140.dll_memset
cmp r12d, 0xafaf133c
je 0x1400ff160
mov qword [rsp + 0x48], rsi
mov rax, qword [rsp + 0x40]
mov r15, qword [rax]
cmp qword [rsp + 0x38], 0
mov r9, qword [rsp + 0x30]
je 0x1400ff457
movdqa xmm0, xmmword [r15]
pmovmskb r12d, xmm0
not r12d
mov eax, dword [0x141dd7600]
xor eax, dword [0x141dd7604]
xor eax, 0xe3a37a4e
imul eax, eax, 0xd455c20e
cmp eax, 0x1e910435
je 0x1400ff1c0
lea rsi, [r15 - 0x160]
mov r14, r15
xor ebp, ebp
mov rdi, qword [rsp + 0x38]
mov qword [rsp + 0x68], r15
mov qword [rsp + 0x60], rbx
mov qword [rsp + 0x58], r13
jmp 0x1400ff24d
shr rax, 0x39
lea rdx, [rcx - 0x10]
and rdx, rbx
mov byte [r13 + rcx], al
mov byte [rdx + r13 + 0x10], al
not r15
imul rdx, r15, 0x160
mov r15, qword [rsp + 0x68]
add rdx, r15
not rcx
imul rcx, rcx, 0x160
add rcx, r13
mov r8d, 0x160
call sub.VCRUNTIME140.dll_memcpy
test rdi, rdi
mov r9, qword [rsp + 0x30]
je 0x1400ff457
test r12w, r12w
jne 0x1400ff29c
nop word cs:[rax + rax]
mov eax, dword [0x141dd7608]
mov ecx, dword [0x141dd760c]
add eax, ecx
add eax, 0x97d1d49e
or eax, 0x78f3e0d1
cmp eax, 0xd507edcf
je 0x1400ff260
movdqa xmm0, xmmword [r14 + 0x10]
add r14, 0x10
pmovmskb r12d, xmm0
add rbp, 0x10
cmp r12w, 0xffff
je 0x1400ff260
not r12d
mov qword [rsp + 0x28], rdi
mov eax, dword [0x141dd7610]
xor eax, dword [0x141dd7614]
or eax, 0xa9afa721
add eax, 0xa5857b49
or eax, 0x45952b5
cmp eax, 0xe46f1183
mov rdi, qword [rsp + 0x78]
mov rbx, qword [rsp + 0x70]
mov r13, rsi
ja 0x1400ff430
nop word cs:[rax + rax]
mov eax, dword [0x141dd7618]
xor eax, dword [0x141dd761c]
imul esi, eax, 0x3dae438c
or esi, 0x9bc4547c
add esi, 0x450a9161
tzcnt r15d, r12d
add r15, rbp
mov rax, r15
neg rax
imul rax, rax, 0x160
mov r8, qword [r13 + rax]
mov rcx, rbx
mov rdx, rdi
call fcn.1400cb210
cmp esi, 0x49d2f438
ja 0x1400ff430
mov rsi, r13
mov rcx, rax
mov rbx, qword [rsp + 0x60]
and rcx, rbx
mov r13, qword [rsp + 0x58]
movdqu xmm0, xmmword [r13 + rcx]
pmovmskb edx, xmm0
test dx, dx
mov rdi, qword [rsp + 0x28]
jne 0x1400ff39e
mov r8d, 0x10
xor r9d, r9d
mov edx, dword [0x141dd7620]
and edx, dword [str.Z:_]
imul edx, edx, 0x47570dd4
or edx, 0xb7ab0bb8
cmp edx, 0x531cc40
jb 0x1400ff360
add rcx, r8
and rcx, rbx
movdqu xmm0, xmmword [r13 + rcx]
pmovmskb edx, xmm0
add r8, 0x10
add r9, 0x10
test dx, dx
je 0x1400ff360
lea r8d, [r12 - 1]
and r8d, r12d
dec rdi
mov r12d, r8d
mov r8d, dword [0x141dd7628]
sub r8d, dword [0x141dd762c]
cmp r8d, 0xf49a6b23
je 0x1400ff3ac
tzcnt edx, edx
add rcx, rdx
and rcx, rbx
cmp byte [r13 + rcx], 0
js 0x1400ff200
mov ecx, dword [0x141dd7630]
and ecx, dword [0x141dd7634]
imul ecx, ecx, 0xe04333e4
add ecx, 0x67eb1248
and ecx, 0x28a4ddfc
cmp ecx, 0x8db881b6
je 0x1400ff3d9
movdqa xmm0, xmmword [r13]
xor ecx, ecx
nop word [rax + rax]
test cl, cl
jne 0x1400ff410
pmovmskb ecx, xmm0
tzcnt ecx, ecx
jmp 0x1400ff200
tzcnt eax, r12d
add rax, rbp
neg rax
imul rax, rax, 0x160
mov r8, qword [r13 + rax]
mov rcx, rbx
mov rdx, rdi
call fcn.1400cb210
jmp 0x1400ff2e0
mov rcx, qword [rsp + 0x48]
sub rcx, qword [rsp + 0x38]
mov eax, dword [0x141dd7638]
and eax, dword [0x141dd763c]
imul rax, rax, 0x10887561
shr rax, 0x3b
imul eax, eax, 0x46123231
add eax, 0x3c8c4351
cmp eax, 0x14c6c242
mov rdi, qword [rsp + 0x40]
jae 0x1400ff4c4
jmp 0x1400ff4ec
xor eax, eax
test al, al
je 0x1400ff4a0
ud2
mov eax, dword [0x141dd75e8]
add eax, dword [0x141dd75ec]
or eax, 0x10020210
and eax, 0x30031210
ud2
mov eax, dword [0x141dd7640]
add eax, dword [0x141dd7644]
xor eax, 0x44000002
and eax, 0x45381402
mov qword [rdi], r13
mov qword [rdi + 8], rbx
mov qword [rdi + 0x10], rcx
cmp eax, 0x5823847c
jbe 0x1400ff4f9
mov qword [rdi], r13
mov qword [rdi + 8], rbx
mov qword [rdi + 0x10], rcx
jmp 0x1400ff4c4
movabs rbx, 0x7ffffffffffffff1
mov r10, qword [rsp + 0x50]
nop dword [rax + rax]
mov eax, dword [0x141dd7648]
imul eax, dword [0x141dd764c]
add eax, 0x6d8de8bc
imul rax, rax, 0x1153d79
shr rax, 0x38
cmp eax, 0x4f777335
ja 0x1400ff510
test r9, r9
je 0x1401000c0
mov ecx, 0x160
nop word cs:[rax + rax]
mov eax, dword [0x141dd7650]
add eax, dword [0x141dd7654]
imul rax, rax, 0x484affc3
shr rax, 0x3e
imul r8d, eax, 0x29bd1439
and r8d, 0x925063
mov rax, r10
mul rcx
cmp r8d, 0xb7649077
ja 0x1400ff550
lea rcx, [r9 + rax]
add rcx, 0x11
nop dword [rax]
mov edx, dword [0x141dd7658]
and edx, dword [0x141dd765c]
or edx, 0x1421c14
and edx, 0x25429c94
cmp edx, 0xcc2ea854
ja 0x1400ff590
mov edx, dword [0x141dd7660]
sub edx, dword [0x141dd7664]
add edx, 0x4a229757
or edx, 0xeee61e7a
cmp edx, 0x8287d168
jb 0x1400ff5b0
test rcx, rcx
je 0x1401000c0
sub r15, rax
mov rsi, qword [0x141ddc4e0]
xor eax, eax
test al, al
jne 0x1400ff621
mov edi, dword [0x141dd7668]
and edi, dword [0x141dd766c]
or edi, 0x771ae998
add edi, 0x178138eb
and edi, 0x9878240a
mov rcx, rsi
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
cmp edi, 0xbfe678b7
jbe 0x1401000c0
mov rcx, rsi
xor edx, edx
mov r8, r15
call qword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x1400ff5e9
movdqu xmm0, xmmword [rsi]
movdqu xmmword [r8], xmm0
xor eax, eax
test al, al
je 0x1400ff650
movdqu xmm0, xmmword [rsi]
movdqu xmmword [r8], xmm0
jmp 0x1400ff631
mov eax, dword [0x141dd76c8]
and eax, dword [0x141dd76cc]
xor eax, 0x2f29b53c
imul rax, rax, 0x1a285e5f
shr rax, 0x3c
cmp eax, 0xd651856e
je 0x1400ff650
mov qword [rsp + 0x80], r14
mov eax, dword [0x141dd76e0]
xor edx, edx
div dword [0x141dd76e4]
lea rax, [rsi - 0x160]
mov qword [rsp + 0x48], rax
nop word cs:[rax + rax]
mov eax, dword [0x141dd76e8]
xor eax, dword [0x141dd76ec]
imul eax, eax, 0xfd50dc0
imul rax, rax, 0xba9419d
shr rax, 0x3b
cmp eax, 0xde8d084e
ja 0x1400ff6a0
movabs rax, 0x736f6d6570736575
xor rax, r12
movabs rcx, 0x646f72616e646f6d
xor rcx, qword [rsp + 0x78]
movabs rdx, 0x6c7967656e657261
xor rdx, r12
mov qword [rsp + 0x58], rdx
add rax, rcx
rol rcx, 0xd
xor rcx, rax
rol rax, 0x20
mov qword [rsp + 0x68], rax
mov qword [rsp + 0x60], rcx
rol rcx, 0x11
mov qword [rsp + 0x50], rcx
xor ebp, ebp
mov ebx, 0xccc5af0d
mov r13d, 0xb27c0573
mov r14, rsi
xor r8d, r8d
nop word cs:[rax + rax]
mov eax, dword [0x141dd76f0]
imul eax, dword [0x141dd76f4]
or eax, 0x283db537
xor eax, 0x57c330c0
add eax, 0xc0842712
cmp eax, 0xaacfe471
ja 0x1400ff730
cmp byte [rsi + r8], 0x80
jne 0x1400fffd9
imul rax, r8, 0xfffffffffffffea0
lea rcx, [rsi + rax]
mov rdx, r8
lea r8, [rsi + rax]
add r8, 0xfffffffffffffea0
mov rax, rdx
not rax
imul r15, rax, 0x160
add r15, rsi
mov qword [rsp + 0x28], rdx
mov rax, rdx
neg rax
imul rax, rax, 0x160
add rax, qword [rsp + 0x48]
mov qword [rsp + 0x70], rax
mov eax, dword [0x141dd76f8]
xor edx, edx
div dword [0x141dd76fc]
nop word cs:[rax + rax]
mov eax, dword [0x141dd7700]
sub eax, dword [0x141dd7704]
imul eax, eax, 0xe76f145b
cmp eax, 0x49e5d886
je 0x1400ff7c0
nop dword [rax]
mov eax, dword [0x141dd7708]
xor eax, dword [0x141dd770c]
add eax, 0xa451e2b4
imul rax, rax, 0x1851252b
shr rax, 0x3a
imul eax, eax, 0xed13e47c
cmp eax, 0x7768d61b
jb 0x1400ff7e0
jmp 0x1400ffc20
mov eax, dword [0x141dd7740]
or eax, dword [0x141dd7744]
add eax, 0x80000000
and eax, 0xa0020400
cmp eax, 0x3d6858bd
jb 0x1400ff810
imul r10, r11, 0xfffffffffffffea0
mov r9d, dword [0x141dd7748]
xor r9d, dword [0x141dd774c]
lea rax, [rsi + r10]
cmp r8, rax
setb dl
cmp r12, rcx
setb r11b
cmp r9d, 0x6b537d10
je 0x1400ff834
and dl, r11b
nop
mov r9d, dword [0x141dd7750]
sub r9d, dword [0x141dd7754]
imul r10, r9, 0x3c1df95f
shr r10, 0x20
sub r9d, r10d
shr r9d, 1
add r9d, r10d
shr r9d, 0x1d
add r9d, 0x7a879234
imul r9, rbx
shr r9, 0x3b
cmp r9d, 0xc29c0082
je 0x1400ff860
test dl, dl
je 0x1400ff8e3
mov rdx, 0xfffffffffffffea0
nop dword [rax]
movzx r9d, byte [r14 + rdx]
movzx r10d, byte [rax + rdx]
mov byte [r14 + rdx], r10b
mov byte [rax + rdx], r9b
movzx r9d, byte [r14 + rdx + 1]
movzx r10d, byte [rax + rdx + 1]
mov byte [r14 + rdx + 1], r10b
mov byte [rax + rdx + 1], r9b
add rdx, 2
jne 0x1400ff8b0
jmp 0x1400ffbe4
movups xmm0, xmmword [r15]
movups xmm1, xmmword [r15 + 0x10]
movups xmm2, xmmword [r12]
movups xmm3, xmmword [r12 + 0x10]
movups xmmword [r15], xmm2
movups xmmword [r15 + 0x10], xmm3
movups xmmword [r12], xmm0
movups xmmword [r12 + 0x10], xmm1
movups xmm0, xmmword [r15 + 0x20]
movups xmm1, xmmword [r15 + 0x30]
movups xmm2, xmmword [r12 + 0x20]
movups xmm3, xmmword [r12 + 0x30]
movups xmmword [r15 + 0x20], xmm2
movups xmmword [r15 + 0x30], xmm3
movups xmmword [r12 + 0x20], xmm0
movups xmmword [r12 + 0x30], xmm1
movdqu xmm1, xmmword [r15 + 0x40]
movdqu xmm0, xmmword [r15 + 0x50]
mov eax, dword [0x141dd7758]
sub eax, dword [0x141dd775c]
or eax, 0x14b405cf
add eax, 0xb1ab801b
and eax, 0x1e0a4a98
cmp eax, 0x878f930c
jne 0x1400ff990
movups xmm2, xmmword [r12 + 0x40]
movups xmm3, xmmword [r12 + 0x50]
movups xmmword [r15 + 0x40], xmm2
movups xmmword [r15 + 0x50], xmm3
movdqu xmmword [r12 + 0x40], xmm1
nop word cs:[rax + rax]
mov eax, dword [0x141dd7760]
mov edx, dword [0x141dd7764]
add eax, edx
add eax, 0x4281d2d2
or eax, 0xa3d85333
and eax, 0xbfd8dff7
movups xmm2, xmmword [r12 + 0x40]
movups xmm3, xmmword [r12 + 0x50]
movups xmmword [r15 + 0x40], xmm2
movups xmmword [r15 + 0x50], xmm3
movdqu xmmword [r12 + 0x40], xmm1
cmp eax, 0x9a5bf531
je 0x1400ff990
movdqu xmmword [r12 + 0x50], xmm0
movups xmm0, xmmword [r15 + 0x60]
movups xmm1, xmmword [r15 + 0x70]
movups xmm2, xmmword [r12 + 0x60]
movups xmm3, xmmword [r12 + 0x70]
movups xmmword [r15 + 0x60], xmm2
movups xmmword [r15 + 0x70], xmm3
movups xmmword [r12 + 0x60], xmm0
movups xmmword [r12 + 0x70], xmm1
movups xmm0, xmmword [r15 + 0x80]
movups xmm1, xmmword [r15 + 0x90]
movups xmm2, xmmword [r12 + 0x80]
movups xmm3, xmmword [r12 + 0x90]
movups xmmword [r15 + 0x80], xmm2
movups xmmword [r15 + 0x90], xmm3
movups xmmword [r12 + 0x80], xmm0
movups xmmword [r12 + 0x90], xmm1
movups xmm0, xmmword [r15 + 0xa0]
movups xmm1, xmmword [r15 + 0xb0]
movups xmm2, xmmword [r12 + 0xa0]
movups xmm3, xmmword [r12 + 0xb0]
movups xmmword [r15 + 0xa0], xmm2
movups xmmword [r15 + 0xb0], xmm3
movups xmmword [r12 + 0xa0], xmm0
movups xmmword [r12 + 0xb0], xmm1
movups xmm0, xmmword [r15 + 0xc0]
movups xmm1, xmmword [r15 + 0xd0]
movups xmm2, xmmword [r12 + 0xc0]
movups xmm3, xmmword [r12 + 0xd0]
movups xmmword [r15 + 0xc0], xmm2
movups xmmword [r15 + 0xd0], xmm3
movups xmmword [r12 + 0xc0], xmm0
movups xmmword [r12 + 0xd0], xmm1
movups xmm0, xmmword [r15 + 0xe0]
movups xmm1, xmmword [r15 + 0xf0]
movups xmm2, xmmword [r12 + 0xe0]
movups xmm3, xmmword [r12 + 0xf0]
movups xmmword [r15 + 0xe0], xmm2
movups xmmword [r15 + 0xf0], xmm3
movups xmmword [r12 + 0xe0], xmm0
movups xmmword [r12 + 0xf0], xmm1
movups xmm0, xmmword [r15 + 0x100]
movups xmm1, xmmword [r15 + 0x110]
movups xmm2, xmmword [r12 + 0x100]
movups xmm3, xmmword [r12 + 0x110]
movups xmmword [r15 + 0x100], xmm2
movups xmmword [r15 + 0x110], xmm3
movups xmmword [r12 + 0x100], xmm0
movups xmmword [r12 + 0x110], xmm1
movups xmm0, xmmword [r15 + 0x120]
movups xmm1, xmmword [r15 + 0x130]
movups xmm2, xmmword [r12 + 0x120]
movups xmm3, xmmword [r12 + 0x130]
movups xmmword [r15 + 0x120], xmm2
movups xmmword [r15 + 0x130], xmm3
movups xmmword [r12 + 0x120], xmm0
movups xmmword [r12 + 0x130], xmm1
movdqu xmm0, xmmword [r15 + 0x140]
movdqu xmm1, xmmword [r15 + 0x150]
movups xmm2, xmmword [r12 + 0x140]
movups xmm3, xmmword [r12 + 0x150]
movups xmmword [r15 + 0x140], xmm2
movups xmmword [r15 + 0x150], xmm3
movdqu xmmword [r12 + 0x140], xmm0
movdqu xmmword [r12 + 0x150], xmm1
mov r9, qword [rsp + 0x30]
nop dword [rax]
mov eax, dword [0x141dd7768]
imul eax, dword [0x141dd776c]
imul rax, r13
shr rax, 0x3f
or eax, 0x14115400
cmp eax, 0x6c8a7693
je 0x1400ffbf0
nop word cs:[rax + rax]
test bpl, bpl
jne 0x1400ffc20
mov rax, qword [rsp + 0x70]
mov r10, qword [rax]
mov r12, r10
xor r12, qword [rsp + 0x78]
mov eax, dword [0x141dd7710]
xor edx, edx
div dword [0x141dd7714]
nop word cs:[rax + rax]
mov eax, dword [0x141dd7718]
imul eax, dword [0x141dd771c]
or eax, 0x5c4242b5
imul eax, eax, 0xa66f3bdd
cmp eax, 0x7790a432
je 0x1400ffc50
movabs rax, 0x7465646279746573
xor r12, rax
mov rax, qword [rsp + 0x58]
add rax, r12
rol r12, 0x10
xor r12, rax
add rax, qword [rsp + 0x60]
mov rdx, qword [rsp + 0x68]
add rdx, r12
mov r11, rax
xor r11, qword [rsp + 0x50]
rol r12, 0x15
rol rax, 0x20
xor r10, rdx
movabs rdi, 0x800000000000000
xor rdx, rdi
xor rdx, r12
add r10, r11
rol r11, 0xd
add rax, rdx
xor r11, r10
rol rdx, 0x10
xor rdx, rax
rol r10, 0x20
add rax, r11
add r10, rdx
rol r11, 0x11
xor r11, rax
rol rdx, 0x15
rol rax, 0x20
xor rdx, r10
xor r10, rdi
xor rax, 0xff
add r10, r11
add rax, rdx
rol r11, 0xd
xor r11, r10
rol rdx, 0x10
rol r10, 0x20
xor rdx, rax
add rax, r11
rol r11, 0x11
add r10, rdx
xor r11, rax
rol rdx, 0x15
xor rdx, r10
rol rax, 0x20
add r10, r11
add rax, rdx
rol r11, 0xd
xor r11, r10
rol rdx, 0x10
rol r10, 0x20
xor rdx, rax
add rax, r11
rol r11, 0x11
add r10, rdx
xor r11, rax
rol rdx, 0x15
xor rdx, r10
rol rax, 0x20
add r10, r11
add rax, rdx
rol r11, 0xd
xor r11, r10
rol rdx, 0x10
xor rdx, rax
add rax, r11
rol r11, 0x11
rol rdx, 0x15
mov r10, rax
rol r10, 0x20
xor r10, r11
xor r10, rdx
xor r10, rax
mov rax, r10
and rax, r9
movdqu xmm0, xmmword [rsi + rax]
pmovmskb r11d, xmm0
mov rdx, rax
test r11d, r11d
jne 0x1400ffdc9
mov r12d, 0x10
mov rdx, rax
nop word cs:[rax + rax]
add rdx, r12
and rdx, r9
movdqu xmm0, xmmword [rsi + rdx]
pmovmskb r11d, xmm0
add r12, 0x10
test r11d, r11d
je 0x1400ffdb0
tzcnt r11d, r11d
add r11, rdx
and r11, r9
cmp byte [rsi + r11], 0
js 0x1400ffe29
mov edx, dword [0x141dd7720]
add edx, dword [0x141dd7724]
cmp edx, 0xe8bc8baf
je 0x1400ffddb
movdqa xmm0, xmmword [rsi]
nop word cs:[rax + rax]
mov edx, dword [0x141dd7728]
add edx, dword [0x141dd772c]
xor edx, 0x32015024
and edx, 0x36bb5a65
cmp edx, 0x14109c6c
ja 0x1400ffe00
pmovmskb edx, xmm0
tzcnt r11d, edx
mov rdx, qword [rsp + 0x28]
sub rdx, rax
mov r12, r11
sub r12, rax
xor r12, rdx
and r12, r9
cmp r12, 0x10
jb 0x1400fff55
mov eax, dword [0x141dd7730]
sub eax, dword [0x141dd7734]
xor eax, 0x1401803
and eax, 0xc74c9c53
add eax, 0xf61b7c09
cmp eax, 0x45a9c4c
jb 0x1400ffe47
mov rax, r11
not rax
imul r12, rax, 0x160
add r12, rsi
mov eax, dword [0x141dd7738]
xor edx, edx
div dword [0x141dd773c]
imul eax, eax, 0x444c17c0
cmp eax, 0xd001e383
ja 0x1400ffe79
movzx eax, byte [rsi + r11]
shr r10, 0x39
lea rdx, [r11 - 0x10]
and rdx, r9
mov byte [rsi + r11], r10b
mov byte [rdx + rsi + 0x10], r10b
cmp al, 0xff
jne 0x1400ff810
mov eax, dword [0x141dd7780]
sub eax, dword [0x141dd7784]
xor eax, 0x82012d0a
or eax, 0x61f8c0f5
add eax, 0x935c48e7
cmp eax, 0x34e38e65
jae 0x1400fff02
mov rcx, qword [rsp + 0x28]
lea rax, [rcx - 0x10]
and rax, r9
mov byte [rsi + rcx], 0xff
mov byte [rax + rsi + 0x10], 0xff
mov r8d, 0x160
mov rcx, r12
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
mov r9, qword [rsp + 0x30]
mov r8, qword [rsp + 0x28]
nop word [rax + rax]
mov edi, dword [0x141dd7788]
or edi, dword [0x141dd778c]
lea rax, [r8 - 0x10]
and rax, r9
mov byte [rsi + r8], 0xff
mov byte [rax + rsi + 0x10], 0xff
mov r8d, 0x160
mov rcx, r12
mov rdx, r15
call sub.VCRUNTIME140.dll_memcpy
mov r8, qword [rsp + 0x28]
mov r9, qword [rsp + 0x30]
cmp edi, 0x76bb3365
je 0x1400fff10
jmp 0x1400fffd9
mov eax, dword [0x141dd7770]
and eax, dword [0x141dd7774]
xor eax, 0x88c086a
and eax, 0x9ace796b
imul rax, rax, 0xf6d672b
shr rax, 0x3b
cmp eax, 0xc2eacd66
mov r8, qword [rsp + 0x28]
jbe 0x1400fffa0
mov rax, r10
shr rax, 0x39
lea rcx, [r8 - 0x10]
and rcx, r9
mov byte [rsi + r8], al
mov byte [rcx + rsi + 0x10], al
nop dword [rax + rax]
mov eax, dword [0x141dd7778]
add eax, dword [0x141dd777c]
imul rax, rax, 0x10cd1667
shr rax, 0x39
or eax, 0x34767855
mov rcx, r10
shr rcx, 0x39
lea rdx, [r8 - 0x10]
and rdx, r9
mov byte [rsi + r8], cl
mov byte [rdx + rsi + 0x10], cl
cmp eax, 0x64964edc
je 0x1400fffa0
lea rax, [r8 + 1]
mov ecx, dword [0x141dd7790]
imul ecx, dword [0x141dd7794]
and ecx, 0x89101408
add ecx, 0xcd4acc99
cmp ecx, 0x5f61a26a
ja 0x1400fffdd
mov edx, 0xa5f52093
nop word cs:[rax + rax]
mov ecx, dword [0x141dd7798]
imul ecx, dword [0x141dd779c]
add ecx, 0x4138d7
imul rcx, rdx
shr rcx, 0x3e
and ecx, 1
cmp ecx, 0xa282e32a
ja 0x140100010
add r14, 0xfffffffffffffea0
cmp r8, r9
mov r8, rax
jne 0x1400ff730
movabs rbx, 0x7ffffffffffffff1
mov rdi, qword [rsp + 0x40]
mov r15, qword [rsp + 0x38]
mov rdx, qword [rsp + 0x80]
mov eax, dword [0x141dd77a0]
or eax, dword [0x141dd77a4]
add eax, 0x99e27807
cmp eax, 0x8c689cbb
jb 0x1401000a5
mov eax, dword [0x141dd77a8]
sub eax, dword [0x141dd77ac]
imul eax, eax, 0x895c574c
and eax, 0x9259697c
mov rcx, rdx
sub rcx, r15
mov qword [rdi + 0x10], rcx
cmp eax, 0x61e809c5
jne 0x1401000c0
mov rax, rdx
sub rax, r15
mov qword [rdi + 0x10], rax
jmp 0x14010007d
mov eax, dword [0x141dd77b0]
and eax, dword [0x141dd77b4]
imul rax, rax, 0x7367039b
shr rax, 0x3d
or eax, 0xab8aafd6
cmp eax, 0x17a21323
je 0x1401000c0
add rbx, 0x10
mov rax, rbx
add rsp, 0x88
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
ret