Function at 0x1d8c3e036
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Encrypt data using chaskey

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x88
mov qword [rsp + 0xd0], rcx
push rax
emms
push r11
xorps xmm1, xmm0
pop r11
dec eax
pop rax
push r12
mov r12d, 0x16
nop
mov r12w, 0x16
paddsw mm1, mm0
push r9
sar r9d, 0xd
sub r9d, r12d
mulss xmm14, xmm6
orps xmm3, xmm14
pop r9
movhlps xmm8, xmm4
orps xmm5, xmm13
psrlq mm3, 0x3d
por mm5, mm3
pop r12
push r10
neg r10w
por mm6, mm2
push rdx
not r10w
neg dx
push r13
adc r13d, r10d
rol r10w, 0x17
push r15
movhlps xmm6, xmm13
movhlps xmm13, xmm4
push r11
psrlw mm1, 0x65
psllq mm2, 0x44
pop r11
pand mm4, mm7
dec r15
pop r15
xchg r13b, r10b
nop
pop r13
rcl r10d, 3
nop
pop rdx
shl r10w, 0x13
psrad mm2, 0x49
pop r10
call fcn.1d8c52825
push r10
rcl r10b, 0xb
push r8
emms
push rax
shr ax, 0xc
push r14
paddsb mm6, mm3
push r9
pcmpeqb mm6, mm0
pop r9
shr r10w, 5
pop r14
sbb r8, 0x15
pop rax
addps xmm3, xmm10
pop r8
sar r10, 0x13
pop r10
movabs rax, 0x610035004a0069
mov word [rsp + 0x5c], 0
mov qword [rsp + 0x54], rax
push rbx
sar bl, 0xa
push r15
emms
push r8
mov ebx, r15d
pop r8
xchg r15w, bx
pop r15
paddb mm2, mm0
pop rbx
movabs rax, 0x59007800790044
mov word [rsp + 0x68], 0
mov qword [rsp + 0x60], rax
cmp r15w, bx
jne 0x1d8c3e17a
push rax
emms
push r14
emms
inc r14d
pop r14
rcr ax, 0x10
pop rax
jmp 0x1d8c3e190
push r13
pslld mm2, 0x23
push r11
rol r11d, 0x15
not r13
pop r11
inc r13
pop r13
push rdx
maxss xmm6, xmm15
push r10
not dl
subps xmm13, xmm2
pop r10
nop
pop rdx
lea rbp, [rsp + 0x60]
lea rbx, [rsp + 0x54]
mov rdx, rbp
mov rcx, rbx
call sub.msvcrt.dll_wcscmp
test eax, eax
jne 0x1d8c3e237
mov rax, rbx
lea rdx, [rsp + 0x5c]
push r14
emms
emms
pcmpeqd mm4, mm7
push r11
paddusb mm4, mm1
psrlq mm5, 0x32
nop
push r12
minps xmm0, xmm8
pandn mm7, mm3
emms
pop r12
adc r14d, r11d
emms
nop
pop r11
mov r14, 0x16
shl r14b, 0x15
emms
pop r14
xor word [rax], 0x77
push r8
pandn mm2, mm3
nop
movaps xmm11, xmm10
neg r8b
push r13
xorps xmm13, xmm2
psrld mm6, 0x57
ucomiss xmm14, xmm12
nop
pop r13
psrlw mm0, 0x15
movups xmm7, xmm3
pxor mm2, mm0
psllq mm1, 0x16
pop r8
add rax, 2
cmp rax, rdx
jne 0x1d8c3e1c3
jmp 0x1d8c3e271
push r12
shr r12, 8
nop
andps xmm2, xmm14
push r14
xor r14w, r12w
psrlw mm7, 0x53
emms
push r9
adc r12, r14
paddusw mm3, mm0
nop
pop r9
sbb r14d, 0x14
nop
dec r12
pop r14
dec r12d
shl r12w, 0xc
sub r12d, 0x10
pop r12
push r13
nop
sbb r13b, 2
emms
sar r13w, 0x10
push rax
nop
psrad mm2, 0x4c
neg r13
push rdx
psllq mm6, 0x58
sar eax, 0xe
push rcx
nop
pop rcx
pslld mm4, 4
psraw mm5, 0x48
pop rdx
psrlq mm7, 0x35
neg r13d
nop
pop rax
shl r13b, 1
punpckhbw mm4, mm1
neg r13
emms
pop r13
push r12
movlhps xmm11, xmm6
inc r12
packuswb mm2, mm7
emms
pmaddwd mm3, mm6
inc r12
rcpps xmm15, xmm14
emms
emms
paddusw mm7, mm4
sar r12, 7
nop
pop r12
mov ecx, 0x20
call sub.msvcrt.dll_malloc
mov rcx, rax
xor eax, eax
cmp r15, rax
jne 0x1d8c3e2f4
push rdx
rcl rdx, 0xf
pop rdx
jmp 0x1d8c3e2f9
push r14
nop
pop r14
push r8
dec r8d
pop r8
xor qword [rcx + rax*8], 0x78
push r12
packuswb mm7, mm1
push rcx
sbb r12, 9
push rbx
adc ebx, ecx
pop rbx
emms
pop rcx
subss xmm14, xmm1
pop r12
inc rax
cmp rax, 4
jne 0x1d8c3e2e7
call sub.msvcrt.dll_free
push r9
dec r9
nop
mulss xmm3, xmm0
nop
psllq mm3, 0x46
ror r9, 0xa
sbb r9w, 5
pop r9
push r10
neg r10w
por mm6, mm2
push rdx
not r10w
neg dx
push r13
adc r13d, r10d
rol r10w, 0x17
push r15
movhlps xmm6, xmm13
movhlps xmm13, xmm4
push r11
psrlw mm1, 0x65
psllq mm2, 0x44
pop r11
pand mm4, mm7
dec r15
pop r15
xchg r13b, r10b
nop
pop r13
rcl r10d, 3
nop
pop rdx
shl r10w, 0x13
psrad mm2, 0x49
pop r10
call fcn.1d8c52825
xor eax, eax
mov r9, rbp
mov r8d, 8
mov qword [rsp + 0x28], rax
lea rdx, [rsp + 0xd0]
mov ecx, 0xb5
mov dword [rsp + 0x20], 0x20
call fcn.1d8c4e7f1
mov word [rsp + 0x52], 0
mov edi, eax
movabs rax, 0x610035004a0069
mov qword [rsp + 0x4a], rax
push rbx
sar bl, 0xa
push r15
emms
push r8
mov ebx, r15d
pop r8
xchg r15w, bx
pop r15
paddb mm2, mm0
pop rbx
movabs rax, 0x59007800790044
mov word [rsp + 0x5c], 0
mov qword [rsp + 0x54], rax
cmp r15w, bx
jne 0x1d8c3e424
push rax
emms
push r14
emms
inc r14d
pop r14
rcr ax, 0x10
pop rax
jmp 0x1d8c3e43a
push r13
pslld mm2, 0x23
push r11
rol r11d, 0x15
not r13
pop r11
inc r13
pop r13
push rdx
maxss xmm6, xmm15
push r10
not dl
subps xmm13, xmm2
pop r10
nop
pop rdx
lea rsi, [rsp + 0x4a]
mov rdx, rbx
mov rcx, rsi
call sub.msvcrt.dll_wcscmp
test eax, eax
jne 0x1d8c3e4dc
mov rax, rsi
lea rdx, [rsp + 0x52]
push r14
emms
emms
pcmpeqd mm4, mm7
push r11
paddusb mm4, mm1
psrlq mm5, 0x32
nop
push r12
minps xmm0, xmm8
pandn mm7, mm3
emms
pop r12
adc r14d, r11d
emms
nop
pop r11
mov r14, 0x16
shl r14b, 0x15
emms
pop r14
xor word [rax], 0x77
push r8
pandn mm2, mm3
nop
movaps xmm11, xmm10
neg r8b
push r13
xorps xmm13, xmm2
psrld mm6, 0x57
ucomiss xmm14, xmm12
nop
pop r13
psrlw mm0, 0x15
movups xmm7, xmm3
pxor mm2, mm0
psllq mm1, 0x16
pop r8
add rax, 2
cmp rax, rdx
jne 0x1d8c3e468
jmp 0x1d8c3e516
push r12
shr r12, 8
nop
andps xmm2, xmm14
push r14
xor r14w, r12w
psrlw mm7, 0x53
emms
push r9
adc r12, r14
paddusw mm3, mm0
nop
pop r9
sbb r14d, 0x14
nop
dec r12
pop r14
dec r12d
shl r12w, 0xc
sub r12d, 0x10
pop r12
push r13
nop
sbb r13b, 2
emms
sar r13w, 0x10
push rax
nop
psrad mm2, 0x4c
neg r13
push rdx
psllq mm6, 0x58
sar eax, 0xe
push rcx
nop
pop rcx
pslld mm4, 4
psraw mm5, 0x48
pop rdx
psrlq mm7, 0x35
neg r13d
nop
pop rax
shl r13b, 1
punpckhbw mm4, mm1
neg r13
emms
pop r13
test edi, edi
je 0x1d8c3e57a
cmp r15, rbx
jne 0x1d8c3e566
push rbx
dec ebx
pop rbx
jmp 0x1d8c3e56b
push r13
nop
pop r13
push r8
nop
pop r8
call fcn.1d8c529a7
jmp 0x1d8c3ecfc
push r14
mov r14, 3
push rbx
rol ebx, 0x15
inc rbx
push r10
ror rbx, 2
mov r10, 0xa
push r15
pmulhuw mm3, mm0
sub rbx, 0x13
push rdx
add r15w, dx
emms
push rcx
nop
emms
pop rcx
shl dl, 0xe
packsswb mm2, mm6
pop rdx
emms
dec r15
pop r15
not bl
punpckhwd mm1, mm7
pop r10
psrlw mm1, 0xb
nop
pop rbx
dec r14
jne 0x1d8c3e583
pop r14
call fcn.1d8c527e7
mov word [rsp + 0x38], 0
xor r12d, r12d
lea r13, [rsp + 0x56]
movabs r15, 0x7500730044
lea r14, [rsp + 0x4c]
cmp dword [rbp], 0
je 0x1d8c3ea06
push r13
neg r13
paddd mm4, mm3
dec r13d
shl r13, 0x14
push r12
paddb mm6, mm4
nop
sbb r13b, 0x16
push r14
emms
add r14b, r12b
push r11
movlhps xmm11, xmm2
pop r11
mov r12b, 7
shl r13d, 3
pop r14
inc r13
psadbw mm1, mm6
pcmpgtb mm5, mm7
pop r12
nop
mov r13w, 0xa
punpcklwd mm2, mm6
pslld mm5, 0x61
pop r13
mov eax, dword [rbp]
mov word [rsp + 0x4a], 0x7d4b
mov byte [rsp + 0x4c], 0
shr eax, 0x10
mov dword [rsp + 0x3c], eax
cmp r15, 0x34
jne 0x1d8c3e673
push r13
ror r13, 1
pop r13
jmp 0x1d8c3e67b
push r11
pslld mm1, 0x31
pop r11
push r10
sbb r10w, 6
pop r10
mov word [rsp + 0x54], 0x566d
mov byte [rsp + 0x56], 0
push rax
nop
push r15
xadd ax, r15w
push r9
minps xmm10, xmm5
push r14
nop
push rbx
sbb r14d, 0x14
pop rbx
pmaxsw mm5, mm2
pop r14
emms
pop r9
not r15w
pop r15
addss xmm10, xmm5
pop rax
mov rdx, rbx
mov rcx, rsi
call sub.msvcrt.dll__mbscmp
test eax, eax
jne 0x1d8c3e712
mov rax, rsi
push r10
mulss xmm14, xmm8
push rdx
sub r10, rdx
mov rdx, r10
push r15
psrlq mm0, 0x50
pcmpgtb mm7, mm3
emms
pop r15
nop
emms
pop rdx
punpcklwd mm0, mm1
pop r10
xor byte [rax], 8
push r11
mov r11, 1
push rcx
pop rcx
dec r11
jne 0x1d8c3e6ff
pop r11
inc rax
cmp rax, r14
jne 0x1d8c3e6cf
jmp 0x1d8c3e776
mov rax, rbx
push rax
nop
not al
shr ax, 4
nop
movups xmm9, xmm14
ror ax, 7
psrad mm1, 0x38
pop rax
xor byte [rax], 0x77
push r10
addss xmm12, xmm9
pcmpgtd mm5, mm1
punpckldq mm0, mm1
push rbx
not r10w
emms
emms
push rcx
ucomiss xmm7, xmm8
psrlw mm5, 0x52
push r13
emms
movups xmm4, xmm7
pop r13
shl bl, 8
mulss xmm7, xmm5
addss xmm12, xmm15
pop rcx
xchg r10b, bl
nop
pop rbx
pand mm5, mm7
nop
pop r10
inc rax
cmp rax, r13
jne 0x1d8c3e715
push r14
movss xmm13, xmm9
push r8
nop
emms
push r9
mov r14d, 0x16
paddsw mm0, mm3
emms
push r12
emms
emms
movss xmm11, xmm7
mov r14, r8
push r13
pmulhuw mm5, mm0
sub r9w, r14w
orps xmm10, xmm5
subss xmm15, xmm9
paddusb mm0, mm3
pop r13
subps xmm9, xmm4
nop
emms
dec r12
pop r12
emms
dec r8
sbb r8d, 5
pop r9
sub r8, r14
rcl r8w, 7
pop r8
emms
pop r14
mov edx, dword [rbp]
push r9
shl r9b, 0xd
push rdx
neg r9d
emms
push r11
emms
emms
sbb r11d, 0x15
push rax
psrld mm4, 0xe
ror r9, 0x13
nop
sub edx, r11d
push r8
inc eax
paddb mm0, mm6
emms
psrad mm7, 0x43
test dx, r9w
pop r8
rol rax, 0x16
nop
punpckhwd mm4, mm5
psrlq mm5, 0x60
pop rax
nop
emms
movups xmm7, xmm4
pop r11
psrlw mm0, 0x16
not edx
pop rdx
emms
pop r9
test byte [rsp + 0x3c], 4
je 0x1d8c3e9d1
mov dword [rsp + 0x38], edx
mov qword [rsp + 0x54], r15
push rbx
inc ebx
psllq mm1, 0x27
push r8
pmaxub mm3, mm4
pop r8
not rbx
psrlq mm3, 0x55
pop rbx
mov rcx, rbx
call sub.msvcrt.dll_wcslen
mov edx, dword [rsp + 0x38]
cmp rax, 5
jne 0x1d8c3e89f
push r12
pmaxub mm1, mm7
nop
neg r12b
push r11
emms
emms
push r8
ror r8w, 0xe
pop r8
neg r12w
nop
pop r11
psrad mm4, 0x25
shl r12d, 5
dec r12d
pop r12
jmp 0x1d8c3e98f
mov rax, rbx
lea rcx, [rsp + 0x5a]
push r15
dec r15
movhlps xmm3, xmm5
push r11
psllq mm6, 0x5f
pop r11
nop
shl r15, 3
pop r15
xor word [rax], 0x26
cmp r15b, 0x4a
jne 0x1d8c3e94d
push rcx
pand mm2, mm0
push r13
emms
push r11
punpckldq mm2, mm3
push r8
emms
pop r8
punpckhbw mm0, mm5
pop r11
subps xmm14, xmm15
pop r13
emms
pop rcx
jmp 0x1d8c3e972
push rax
emms
neg al
emms
rcpss xmm14, xmm13
push r15
sbb rax, 6
nop
emms
xorps xmm12, xmm10
pop r15
inc eax
pxor mm2, mm1
neg rax
nop
pop rax
push r14
dec r14
push r11
nop
pop r11
movlhps xmm10, xmm12
pop r14
add rax, 2
cmp rax, rcx
jne 0x1d8c3e8a7
push r8
por mm5, mm4
paddsw mm7, mm6
psrad mm4, 0x68
push r15
pcmpeqb mm0, mm1
not r8d
psrld mm0, 0x23
push r14
comiss xmm0, xmm3
dec r8
emms
pop r14
addss xmm14, xmm5
mov r8, r15
comiss xmm0, xmm15
pop r15
dec r8
inc r8
nop
pop r8
mov word [rsp + 0x38], dx
jmp 0x1d8c3e9fd
test byte [rsp + 0x3c], 8
je 0x1d8c3e9fd
push rax
mov rax, 2
push r9
emms
nop
nop
paddsw mm6, mm1
pand mm1, mm4
addss xmm14, xmm10
nop
pop r9
dec rax
jne 0x1d8c3e9e0
pop rax
mov r12d, edx
add rbp, 4
jmp 0x1d8c3e5f1
movabs rax, 0x61003f00610041
mov dword [rsp + 0x5c], 0x6a
mov qword [rsp + 0x54], rax
push r9
mov r9, 1
push r11
push rbx
pop rbx
pop r11
dec r9
jne 0x1d8c3ea26
pop r9
movabs rax, 0x3700770030
mov qword [rsp + 0x4a], rax
push r8
mov r8, 2
push rax
push r9
pop r9
pop rax
dec r8
jne 0x1d8c3ea4b
pop r8
mov rdx, rsi
mov rcx, rbx
call sub.msvcrt.dll_wcscmp
test eax, eax
jne 0x1d8c3eb1c
mov rax, rbx
lea rdx, [rsp + 0x5e]
push r9
nop
emms
rcr r9b, 0x16
movups xmm10, xmm11
ror r9b, 0x15
push rcx
nop
sar rcx, 4
rcpss xmm10, xmm0
punpckhwd mm2, mm0
push r8
nop
paddsw mm3, mm7
dec ecx
push r12
dec r12
xor r9d, ecx
push r15
emms
pop r15
rcl r12, 7
mov r8d, r9d
pop r12
nop
emms
psrad mm2, 0x2b
pop r8
dec r9d
inc ecx
nop
psrld mm6, 6
pop rcx
nop
emms
punpcklwd mm6, mm2
andps xmm6, xmm9
emms
pop r9
xor word [rax], 0x43
push r14
mov r14b, 0x10
push r15
movaps xmm3, xmm6
push r12
pcmpgtw mm6, mm5
push r13
nop
push rax
paddb mm6, mm2
push r10
paddw mm3, mm5
pop r10
rcr r14, 0x14
pop rax
xor r14, r12
pop r13
pslld mm4, 0x42
pop r12
nop
pop r15
rol r14, 7
pop r14
add rax, 2
cmp rax, rdx
jne 0x1d8c3ea73
jmp 0x1d8c3eb4f
mov rax, rsi
lea rdx, [rsp + 0x50]
push r14
andps xmm4, xmm7
push r8
emms
pop r8
nop
pop r14
xor word [rax], 6
push rax
mov rax, 2
push rbx
pop rbx
dec rax
jne 0x1d8c3eb3e
pop rax
add rax, 2
cmp rax, rdx
jne 0x1d8c3eb24
push r10
maxss xmm10, xmm11
push r12
not r10b
push r15
movaps xmm14, xmm10
push r11
emms
push r9
sbb r10w, 0x14
push r14
emms
push rbx
por mm1, mm3
pop rbx
emms
pop r14
rcpps xmm8, xmm7
pop r9
maxss xmm1, xmm5
pop r11
maxps xmm15, xmm5
pop r15
and r12, r10
pop r12
nop
pop r10
cmp word [rsp + 0x38], 0x8664
je 0x1d8c3eba9
cmp word [rsp + 0x38], 0x2200
jne 0x1d8c3ece4
push r13
neg r13d
push rax
pmaxub mm3, mm5
push r15
emms
pop r15
rcl eax, 0xa
pop rax
neg r13b
pop r13
test r12w, r12w
jne 0x1d8c3ece4
mov dword [rsp + 0x4a], 0x7e472e71
mov word [rsp + 0x4e], 0x50
push r13
psrld mm5, 0x55
psrlq mm5, 0x2e
psraw mm0, 0x41
psrlq mm0, 0x22
push r15
psubusw mm2, mm6
pmulhuw mm4, mm0
orps xmm9, xmm2
psllq mm2, 0x49
pop r15
pslld mm0, 0x4f
emms
pcmpeqd mm5, mm2
paddsw mm5, mm6
pop r13
mov dword [rsp + 0x54], 0x345a3638
mov word [rsp + 0x58], 0x40
cmp r15w, 0x13
jne 0x1d8c3ec31
push r12
subss xmm3, xmm6
pop r12
jmp 0x1d8c3ec38
push r13
dec r13d
pop r13
push r10
mulss xmm8, xmm3
pop r10
mov rdx, rbx
mov rcx, rsi
call sub.msvcrt.dll_strcmp
test eax, eax
jne 0x1d8c3ec75
push rcx
nop
push r9
movaps xmm14, xmm15
punpckhwd mm0, mm1
push r14
and r9, r14
not r14b
mulps xmm6, xmm2
pop r14
shl cl, 5
ucomiss xmm11, xmm0
pop r9
nop
pop rcx
jmp 0x1d8c3eca3
lea rax, [rsp + 0x59]
push r13
punpckldq mm2, mm5
push rcx
pmaxsw mm3, mm1
push rbx
neg r13
pop rbx
rcpps xmm8, xmm3
pop rcx
xorps xmm7, xmm2
pop r13
xor byte [rbx], 0x17
push rdx
shl dx, 2
pop rdx
inc rbx
cmp rbx, rax
jne 0x1d8c3ec7a
push r13
andps xmm15, xmm5
neg r13b
push rax
movhlps xmm6, xmm4
rcpps xmm6, xmm7
push rdx
not r13
psrld mm0, 0x3d
push r9
ucomiss xmm5, xmm15
nop
pop r9
neg r13d
psrlw mm5, 0x3a
pop rdx
ror r13d, 0x12
dec rax
pop rax
psubw mm6, mm5
addps xmm9, xmm7
pop r13
mov edi, 1
jmp 0x1d8c3ecfc
push r13
neg r13d
push rax
pmaxub mm3, mm5
push r15
emms
pop r15
rcl eax, 0xa
pop rax
neg r13b
pop r13
mov eax, edi
add rsp, 0x88
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret