Function at 0x1400513a0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push rsi
push rbx
sub rsp, 0x38
test dl, dl
je 0x140051409
mov ebx, edx
movzx esi, byte [rcx + 1]
add rsi, rcx
cmp dl, 1
je 0x1400513de
nop dword [rax + rax]
cmp byte [rsi], 0
je 0x140051529
mov rcx, rsi
call fcn.1400778d0
add rsi, rax
inc rsi
dec bl
cmp bl, 1
ja 0x1400513c0
cmp byte [rsi], 0
je 0x140051529
mov rcx, rsi
call fcn.1400778d0
test rax, rax
je 0x1400519a1
cmp rax, 8
jae 0x1400515f9
xor ecx, ecx
jmp 0x1400519b0
mov dword [rsp + 0x24], 0x4c
lea rsi, [rsp + 0x28]
mov byte [rsp + 0x28], 2
mov byte [rsp + 0x29], 0x23
mov byte [rsp + 0x2a], 0x38
mov byte [rsp + 0x2b], 0x6c
mov byte [rsp + 0x2c], 0x1f
mov byte [rsp + 0x2d], 0x3c
mov byte [rsp + 0x2e], 0x29
mov byte [rsp + 0x2f], 0x2f
mov byte [rsp + 0x30], 0x25
mov byte [rsp + 0x31], 0x2a
mov byte [rsp + 0x32], 0x25
mov byte [rsp + 0x33], 0x29
mov byte [rsp + 0x34], 0x28
mov byte [rsp + 0x35], 0
movzx eax, byte [rsp + 0x28]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x28], cl
movzx eax, byte [rsp + 0x29]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x29], cl
movzx eax, byte [rsp + 0x2a]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x2a], cl
movzx eax, byte [rsp + 0x2b]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x2b], cl
movzx eax, byte [rsp + 0x2c]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x2c], cl
movzx eax, byte [rsp + 0x2d]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x2d], cl
movzx eax, byte [rsp + 0x2e]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x2e], cl
movzx eax, byte [rsp + 0x2f]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x2f], cl
movzx eax, byte [rsp + 0x30]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x30], cl
movzx eax, byte [rsp + 0x31]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x31], cl
movzx eax, byte [rsp + 0x32]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x32], cl
movzx eax, byte [rsp + 0x33]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x33], cl
movzx eax, byte [rsp + 0x34]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x34], cl
mov byte [rsp + 0x35], 0
jmp 0x1400519a1
mov dword [rsp + 0x24], 0x24
lea rsi, [rsp + 0x28]
mov byte [rsp + 0x28], 0x66
mov byte [rsp + 0x29], 0x65
mov byte [rsp + 0x2a], 0x60
mov byte [rsp + 0x2b], 0x7b
mov byte [rsp + 0x2c], 0x6d
mov byte [rsp + 0x2d], 0x6a
mov byte [rsp + 0x2e], 0x60
mov byte [rsp + 0x2f], 0x61
mov byte [rsp + 0x30], 0x7c
mov byte [rsp + 0x31], 0
movzx eax, byte [rsp + 0x28]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x28], cl
movzx eax, byte [rsp + 0x29]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x29], cl
movzx eax, byte [rsp + 0x2a]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x2a], cl
movzx eax, byte [rsp + 0x2b]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x2b], cl
movzx eax, byte [rsp + 0x2c]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x2c], cl
movzx eax, byte [rsp + 0x2d]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x2d], cl
movzx eax, byte [rsp + 0x2e]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x2e], cl
movzx eax, byte [rsp + 0x2f]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x2f], cl
movzx eax, byte [rsp + 0x30]
mov ecx, dword [rsp + 0x24]
xor cl, al
mov byte [rsp + 0x30], cl
mov byte [rsp + 0x31], 0
jmp 0x1400519a1
cmp rax, 0x20
jae 0x140051606
xor ecx, ecx
jmp 0x140051887
mov rcx, rax
and rcx, 0xffffffffffffffe0
xor edx, edx
movdqa xmm0, xmmword [0x1400941b0]
movdqa xmm1, xmmword [0x1400941c0]
jmp 0x14005163d
add rdx, 0x20
cmp rcx, rdx
je 0x140051876
movdqu xmm3, xmmword [rsi + rdx]
paddb xmm3, xmm0
movdqa xmm2, xmm3
pminub xmm2, xmm1
pcmpeqb xmm2, xmm3
movd r8d, xmm2
test r8b, 1
je 0x140051661
mov byte [rsi + rdx], 0x2e
mov r9d, r8d
shr r9d, 8
test r9b, 1
je 0x140051673
mov byte [rsi + rdx + 1], 0x2e
mov r9d, r8d
shr r9d, 0x10
test r9b, 1
je 0x140051685
mov byte [rsi + rdx + 2], 0x2e
shr r8d, 0x18
test r8b, 1
je 0x140051694
mov byte [rsi + rdx + 3], 0x2e
pextrw r8d, xmm2, 2
test r8b, 1
je 0x1400516a5
mov byte [rsi + rdx + 4], 0x2e
shr r8d, 8
test r8b, 1
je 0x1400516b4
mov byte [rsi + rdx + 5], 0x2e
pextrw r8d, xmm2, 3
test r8b, 1
je 0x1400516c5
mov byte [rsi + rdx + 6], 0x2e
shr r8d, 8
test r8b, 1
je 0x1400516d4
mov byte [rsi + rdx + 7], 0x2e
pextrw r8d, xmm2, 4
test r8b, 1
je 0x1400516e5
mov byte [rsi + rdx + 8], 0x2e
shr r8d, 8
test r8b, 1
je 0x1400516f4
mov byte [rsi + rdx + 9], 0x2e
movdqu xmm3, xmmword [rsi + rdx + 0x10]
pextrw r8d, xmm2, 5
test r8b, 1
je 0x14005170b
mov byte [rsi + rdx + 0xa], 0x2e
shr r8d, 8
test r8b, 1
je 0x14005171a
mov byte [rsi + rdx + 0xb], 0x2e
pextrw r8d, xmm2, 6
test r8b, 1
je 0x14005172b
mov byte [rsi + rdx + 0xc], 0x2e
shr r8d, 8
test r8b, 1
je 0x14005173a
mov byte [rsi + rdx + 0xd], 0x2e
pextrw r8d, xmm2, 7
test r8b, 1
je 0x14005174b
mov byte [rsi + rdx + 0xe], 0x2e
shr r8d, 8
test r8b, 1
je 0x14005175a
mov byte [rsi + rdx + 0xf], 0x2e
paddb xmm3, xmm0
movdqa xmm2, xmm3
pminub xmm2, xmm1
pcmpeqb xmm2, xmm3
movd r8d, xmm2
test r8b, 1
je 0x14005177a
mov byte [rsi + rdx + 0x10], 0x2e
mov r9d, r8d
shr r9d, 8
test r9b, 1
je 0x14005178c
mov byte [rsi + rdx + 0x11], 0x2e
mov r9d, r8d
shr r9d, 0x10
test r9b, 1
je 0x14005179e
mov byte [rsi + rdx + 0x12], 0x2e
shr r8d, 0x18
test r8b, 1
je 0x1400517ad
mov byte [rsi + rdx + 0x13], 0x2e
pextrw r8d, xmm2, 2
test r8b, 1
je 0x1400517be
mov byte [rsi + rdx + 0x14], 0x2e
shr r8d, 8
test r8b, 1
je 0x1400517cd
mov byte [rsi + rdx + 0x15], 0x2e
pextrw r8d, xmm2, 3
test r8b, 1
je 0x1400517de
mov byte [rsi + rdx + 0x16], 0x2e
shr r8d, 8
test r8b, 1
je 0x1400517ed
mov byte [rsi + rdx + 0x17], 0x2e
pextrw r8d, xmm2, 4
test r8b, 1
je 0x1400517fe
mov byte [rsi + rdx + 0x18], 0x2e
shr r8d, 8
test r8b, 1
je 0x14005180d
mov byte [rsi + rdx + 0x19], 0x2e
pextrw r8d, xmm2, 5
test r8b, 1
je 0x14005181e
mov byte [rsi + rdx + 0x1a], 0x2e
shr r8d, 8
test r8b, 1
je 0x14005182d
mov byte [rsi + rdx + 0x1b], 0x2e
pextrw r8d, xmm2, 6
test r8b, 1
je 0x14005183e
mov byte [rsi + rdx + 0x1c], 0x2e
shr r8d, 8
test r8b, 1
je 0x14005184d
mov byte [rsi + rdx + 0x1d], 0x2e
pextrw r8d, xmm2, 7
test r8b, 1
je 0x14005185e
mov byte [rsi + rdx + 0x1e], 0x2e
shr r8d, 8
test r8b, 1
je 0x140051630
mov byte [rsi + rdx + 0x1f], 0x2e
jmp 0x140051630
cmp rax, rcx
je 0x1400519a1
test al, 0x18
je 0x1400519b0
mov rdx, rcx
mov rcx, rax
and rcx, 0xfffffffffffffff8
movdqa xmm0, xmmword [0x1400941d0]
movdqa xmm1, xmmword [0x1400941e0]
pcmpeqd xmm2, xmm2
jmp 0x1400518bd
add rdx, 8
cmp rcx, rdx
je 0x1400519ab
movq xmm3, qword [rsi + rdx]
paddb xmm3, xmm0
movdqa xmm4, xmm3
pmaxub xmm4, xmm1
pcmpeqb xmm4, xmm3
movd r8d, xmm4
not r8b
test r8b, 1
je 0x1400518e4
mov byte [rsi + rdx], 0x2e
movdqa xmm3, xmm4
pxor xmm3, xmm2
movdqa xmm5, xmm3
pslld xmm5, 8
movd r8d, xmm5
shr r8d, 0x10
test r8b, 1
je 0x140051909
mov byte [rsi + rdx + 1], 0x2e
pshuflw xmm5, xmm4, 0x55
pxor xmm5, xmm2
pextrw r8d, xmm5, 2
test r8b, 1
je 0x140051923
mov byte [rsi + rdx + 2], 0x2e
movdqa xmm5, xmm3
psllq xmm5, 0x18
pextrw r8d, xmm5, 3
test r8b, 1
je 0x14005193d
mov byte [rsi + rdx + 3], 0x2e
pshufd xmm4, xmm4, 0x55
pxor xmm4, xmm2
pextrw r8d, xmm4, 4
test r8b, 1
je 0x140051957
mov byte [rsi + rdx + 4], 0x2e
movdqa xmm4, xmm3
pslldq xmm4, 5
pextrw r8d, xmm4, 5
test r8b, 1
je 0x140051971
mov byte [rsi + rdx + 5], 0x2e
pextrw r8d, xmm3, 3
test r8b, 1
je 0x140051982
mov byte [rsi + rdx + 6], 0x2e
pslldq xmm3, 7
pextrw r8d, xmm3, 7
test r8b, 1
je 0x1400518b0
mov byte [rsi + rdx + 7], 0x2e
jmp 0x1400518b0
mov rax, rsi
add rsp, 0x38
pop rbx
pop rsi
ret
cmp rax, rcx
je 0x1400519a1
movzx edx, byte [rsi + rcx]
add dl, 0x81
cmp dl, 0xa0
ja 0x1400519c0
mov byte [rsi + rcx], 0x2e
inc rcx
jmp 0x1400519ab