Function at 0x14005c670
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 0x10], rdx
mov qword [rax + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x198]
sub rsp, 0x258
movaps xmmword [rax - 0x58], xmm6
mov r12, rdx
mov r15, rcx
xor r13d, r13d
mov dword [rbp + 0x38], r13d
mov qword [rbp - 0x30], r13
lea rax, [rbp - 0x28]
mov qword [rsp + 0x30], rax
movdqa xmm6, xmmword [0x140120ea0]
mov dword [rsp + 0x60], 0x77424e53
movaps xmmword [rbp - 0x50], xmm6
mov eax, dword [rsp + 0x60]
mov dword [rbp - 0x40], eax
mov byte [rbp - 0x3c], 0x36
mov rdx, qword [0x14013bc08]
test rdx, rdx
jne 0x14005c743
mov ebx, 0x15
mov ecx, ebx
call fcn.140075634
mov rdx, rax
mov qword [0x14013bc08], rax
mov eax, r13d
lea rcx, [rdx + 0x14]
lea r8, [rbp - 0x3c]
cmp rdx, r8
ja 0x14005c70d
lea r8, [rbp - 0x50]
cmp rcx, r8
jae 0x14005c722
movdqa xmm0, xmmword [0x140120db0]
pxor xmm0, xmm6
movdqu xmmword [rdx], xmm0
mov eax, 0x10
lea rcx, [rax + rdx]
lea r8, [rbp - 0x50]
sub r8, rdx
sub rbx, rax
movzx eax, byte [r8 + rcx]
xor al, 0x36
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rbx, 1
jne 0x14005c730
mov qword [rbp - 0x18], r13
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], 0
mov rbx, 0xffffffffffffffff
mov r8, rbx
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x14005c760
lea rcx, [rbp - 0x28]
call fcn.1400064d0
nop
mov dword [rsp + 0x70], 0x75627075
mov dword [rsp + 0x74], 0x6077d64
mov dword [rsp + 0x78], 0x5858501a
movsd xmm0, qword [rsp + 0x70]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rsp + 0x78]
mov dword [rsp + 0x58], eax
mov byte [rsp + 0x5c], 0x34
mov esi, 0xd
mov r9, qword [0x14013ba40]
test r9, r9
jne 0x14005c7f3
mov ecx, esi
call fcn.140075634
mov r9, rax
mov qword [0x14013ba40], rax
mov rcx, rax
lea r8, [rsp + 0x50]
sub r8, rax
mov edx, esi
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r8 + rcx]
xor al, 0x34
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x14005c7e0
mov qword [rbp + 8], r13
mov qword [rbp + 0x10], 0xf
mov byte [rbp - 8], 0
mov r8, rbx
inc r8
cmp byte [r9 + r8], 0
jne 0x14005c806
mov rdx, r9
lea rcx, [rbp - 8]
call fcn.1400064d0
nop
lea rdx, [rbp - 0x28]
lea rcx, [rbp - 8]
call fcn.14006d390
mov dword [rsp + 0x20], 0xf0000000
mov r9d, 1
xor r8d, r8d
xor edx, edx
lea rcx, [rbp - 0x30]
call rax
mov qword [rbp - 0x80], r13
lea rax, [rbp - 0x50]
mov qword [rsp + 0x70], rax
movdqa xmm6, xmmword [0x140120e00]
movdqa xmmword [rsp + 0x50], xmm6
mov rdx, qword [0x14013bbc8]
test rdx, rdx
jne 0x14005c8d5
lea ecx, [rdx + 0x10]
call fcn.140075634
mov rdx, rax
mov qword [0x14013bbc8], rax
add rax, 0xf
lea rcx, [rsp + 0x5f]
cmp rdx, rcx
ja 0x14005c8c5
lea rcx, [rsp + 0x50]
cmp rax, rcx
jb 0x14005c8c5
mov rcx, rdx
lea r9, [rsp + 0x50]
sub r9, rdx
mov r8d, 0x10
nop word [rax + rax]
movzx eax, byte [r9 + rcx]
xor al, 0x3a
mov byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x14005c8b0
jmp 0x14005c8d5
movdqa xmm0, xmmword [0x140120df0]
pxor xmm0, xmm6
movdqu xmmword [rdx], xmm0
mov qword [rbp - 0x40], r13
mov qword [rbp - 0x38], 0xf
mov byte [rbp - 0x50], 0
mov r8, rbx
nop dword [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x14005c8f0
lea rcx, [rbp - 0x50]
call fcn.1400064d0
nop
mov dword [rsp + 0x30], 0x796e7c79
mov dword [rsp + 0x34], 0xa0b7168
mov dword [rsp + 0x38], 0x54545c16
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x58], eax
mov byte [rsp + 0x5c], 0x38
mov r9, qword [0x14013b580]
test r9, r9
jne 0x14005c974
mov rcx, rsi
call fcn.140075634
mov r9, rax
mov qword [0x14013b580], rax
mov rcx, rax
lea r8, [rsp + 0x50]
sub r8, rax
mov rdx, rsi
movzx eax, byte [r8 + rcx]
xor al, 0x38
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x14005c961
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], 0
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [r9 + r8], 0
jne 0x14005c990
mov rdx, r9
lea rcx, [rbp - 0x78]
call fcn.1400064d0
nop
lea rdx, [rbp - 0x50]
lea rcx, [rbp - 0x78]
call fcn.14006d5e0
lea rcx, [rbp - 0x80]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
xor r8d, r8d
mov edx, 0x8003
mov rcx, qword [rbp - 0x30]
call rax
lea rax, [rbp - 8]
mov qword [rsp + 0x70], rax
mov dword [rsp + 0x50], 0x4e474c7d
mov dword [rsp + 0x54], 0x4d5f764a
mov dword [rsp + 0x58], 0x4a5f7a56
mov word [rsp + 0x5c], 0x3e5f
movsd xmm0, qword [rsp + 0x50]
movsd qword [rsp + 0x30], xmm0
mov eax, dword [rsp + 0x58]
mov dword [rsp + 0x38], eax
movzx eax, word [rsp + 0x5c]
mov word [rsp + 0x3c], ax
mov rdx, qword [0x14013ba28]
test rdx, rdx
jne 0x14005ca54
mov edi, 0xe
mov ecx, edi
call fcn.140075634
mov rdx, rax
mov qword [0x14013ba28], rax
mov rcx, rax
lea r8, [rsp + 0x30]
sub r8, rax
movzx eax, byte [r8 + rcx]
xor al, 0x3e
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdi, 1
jne 0x14005ca41
mov qword [rbp + 8], r13
mov qword [rbp + 0x10], 0xf
mov byte [rbp - 8], 0
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x14005ca70
lea rcx, [rbp - 8]
call fcn.1400064d0
nop
mov dword [rsp + 0x30], 0x7d6a787d
mov dword [rsp + 0x34], 0xe0f756c
mov dword [rsp + 0x38], 0x50505812
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x58], eax
mov byte [rsp + 0x5c], 0x3c
mov rdx, qword [0x14013b4d0]
test rdx, rdx
jne 0x14005caf4
mov rcx, rsi
call fcn.140075634
mov rdx, rax
mov qword [0x14013b4d0], rax
mov rcx, rax
lea r9, [rsp + 0x50]
sub r9, rax
mov r8, rsi
movzx eax, byte [r9 + rcx]
xor al, 0x3c
mov byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x14005cae1
mov qword [rbp - 0x18], r13
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], 0
mov r8, rbx
nop word [rax + rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x14005cb10
lea rcx, [rbp - 0x28]
call fcn.1400064d0
nop
lea rdx, [rbp - 8]
lea rcx, [rbp - 0x28]
call fcn.14006d830
mov rdx, r12
cmp qword [r12 + 0x18], 0x10
jb 0x14005cb40
mov rdx, qword [r12]
xor r9d, r9d
mov r8d, dword [r12 + 0x10]
mov rcx, qword [rbp - 0x80]
call rax
mov dword [rbp + 0x1b0], r13d
mov dword [rbp + 0x1b8], 4
lea rax, [rbp - 0x78]
mov qword [rsp + 0x70], rax
movdqa xmm6, xmmword [0x140120c90]
mov word [rsp + 0x60], 0x422f
movaps xmmword [rbp - 0x50], xmm6
movzx eax, word [rsp + 0x60]
mov word [rbp - 0x40], ax
mov edi, 0x12
mov rdx, qword [0x14013b760]
test rdx, rdx
jne 0x14005cc03
mov ecx, edi
call fcn.140075634
mov rdx, rax
mov qword [0x14013b760], rax
mov rax, r13
lea rcx, [rdx + 0x11]
lea r8, [rbp - 0x3f]
cmp rdx, r8
ja 0x14005cbbf
lea r8, [rbp - 0x50]
cmp rcx, r8
jae 0x14005cbd4
movdqa xmm0, xmmword [0x140120e90]
pxor xmm0, xmm6
movdqu xmmword [rdx], xmm0
mov eax, 0x10
lea rcx, [rax + rdx]
lea r9, [rbp - 0x50]
sub r9, rdx
mov r8, rdi
sub r8, rax
nop word [rax + rax]
movzx eax, byte [r9 + rcx]
xor al, 0x42
mov byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x14005cbf0
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], 0
mov r8, rbx
inc r8
cmp byte [rdx + r8], 0
jne 0x14005cc16
lea rcx, [rbp - 0x78]
call fcn.1400064d0
nop
mov dword [rsp + 0x30], 0x1160401
mov dword [rsp + 0x34], 0x72730910
mov dword [rsp + 0x38], 0x2c2c246e
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x58], eax
mov byte [rsp + 0x5c], 0x40
mov r9, qword [0x14013bb18]
test r9, r9
jne 0x14005cca3
mov rcx, rsi
call fcn.140075634
mov r9, rax
mov qword [0x14013bb18], rax
mov rcx, rax
lea r8, [rsp + 0x50]
sub r8, rax
mov rdx, rsi
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
xor al, 0x40
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x14005cc90
mov qword [rbp + 0x28], r13
mov qword [rbp + 0x30], 0xf
mov byte [rbp + 0x18], 0
mov r8, rbx
inc r8
cmp byte [r9 + r8], 0
jne 0x14005ccb6
mov rdx, r9
lea rcx, [rbp + 0x18]
call fcn.1400064d0
nop
lea rdx, [rbp - 0x78]
lea rcx, [rbp + 0x18]
call fcn.14006da80
mov dword [rsp + 0x20], r13d
lea r9, [rbp + 0x1b8]
lea r8, [rbp + 0x1b0]
mov edx, 4
mov rcx, qword [rbp - 0x80]
call rax
mov ecx, dword [rbp + 0x1b0]
call fcn.140075634
mov r14, rax
lea rax, [rbp + 0x18]
mov qword [rsp + 0x70], rax
movdqa xmm6, xmmword [0x140120cf0]
mov word [rsp + 0x60], 0x462b
movaps xmmword [rbp - 0x50], xmm6
movzx ecx, word [rsp + 0x60]
mov word [rbp - 0x40], cx
mov rdx, qword [0x14013b510]
test rdx, rdx
jne 0x14005cda3
mov rcx, rdi
call fcn.140075634
mov rdx, rax
mov qword [0x14013b510], rax
mov rax, r13
lea rcx, [rdx + 0x11]
lea r8, [rbp - 0x3f]
cmp rdx, r8
ja 0x14005cd62
lea r8, [rbp - 0x50]
cmp rcx, r8
jae 0x14005cd77
movdqa xmm0, xmmword [0x140120ee0]
pxor xmm0, xmm6
movdqu xmmword [rdx], xmm0
mov eax, 0x10
lea rcx, [rdx + rax]
lea r8, [rbp - 0x50]
sub r8, rdx
sub rdi, rax
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
xor al, 0x46
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdi, 1
jne 0x14005cd90
mov qword [rbp + 0x28], r13
mov qword [rbp + 0x30], 0xf
mov byte [rbp + 0x18], 0
mov r8, rbx
inc r8
cmp byte [rdx + r8], 0
jne 0x14005cdb6
lea rcx, [rbp + 0x18]
call fcn.1400064d0
nop
mov dword [rsp + 0x30], 0x5120005
mov dword [rsp + 0x34], 0x76770d14
mov dword [rsp + 0x38], 0x2828206a
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x58], eax
mov byte [rsp + 0x5c], 0x44
mov r9, qword [0x14013b5d0]
test r9, r9
jne 0x14005ce43
mov rcx, rsi
call fcn.140075634
mov r9, rax
mov qword [0x14013b5d0], rax
mov rcx, rax
lea r8, [rsp + 0x50]
sub r8, rax
mov rdx, rsi
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
xor al, 0x44
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdx, 1
jne 0x14005ce30
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], 0
mov r8, rbx
inc r8
cmp byte [r9 + r8], 0
jne 0x14005ce56
mov rdx, r9
lea rcx, [rbp - 0x78]
call fcn.1400064d0
nop
lea rdx, [rbp + 0x18]
lea rcx, [rbp - 0x78]
call fcn.14006da80
mov dword [rsp + 0x20], r13d
lea r9, [rbp + 0x1b0]
mov r8, r14
mov edx, 2
mov rcx, qword [rbp - 0x80]
call rax
lea rcx, [rbp + 0x40]
call fcn.14006a850
nop
mov edi, r13d
cmp dword [rbp + 0x1b0], r13d
jbe 0x14005cf15
nop word [rax + rax]
mov rax, qword [rbp + 0x50]
movsxd rcx, dword [rax + 4]
mov byte [rbp + rcx + 0xa8], 0x30
mov edx, 2
lea rcx, [rbp - 0x50]
call fcn.140074420
mov r8, qword [rax]
mov rcx, qword [rbp + 0x50]
movsxd rdx, dword [rcx + 4]
lea rcx, [rbp + 0x50]
add rcx, rdx
mov rdx, qword [rax + 8]
call r8
mov rax, qword [rbp + 0x50]
movsxd rcx, dword [rax + 4]
lea rax, [rbp + 0x50]
add rcx, rax
call fcn.14005c650
mov eax, edi
movzx edx, byte [rax + r14]
lea rcx, [rbp + 0x50]
call fcn.14006ac80
inc edi
cmp edi, dword [rbp + 0x1b0]
jb 0x14005ceb0
cmp qword [rbp - 0x30], 0
je 0x14005d09f
lea rax, [rbp + 0x18]
mov qword [rsp + 0x70], rax
movdqa xmm6, xmmword [0x140120e20]
mov dword [rsp + 0x60], 0x4a3e322f
movaps xmmword [rsp + 0x30], xmm6
mov eax, dword [rsp + 0x60]
mov dword [rsp + 0x40], eax
mov rdx, qword [0x14013ba68]
test rdx, rdx
jne 0x14005cfc3
mov edi, 0x14
mov ecx, edi
call fcn.140075634
mov rdx, rax
mov qword [0x14013ba68], rax
mov rax, r13
lea rcx, [rdx + 0x13]
lea r8, [rsp + 0x43]
cmp rdx, r8
ja 0x14005cf83
lea r8, [rsp + 0x30]
cmp rcx, r8
jae 0x14005cf98
movdqa xmm0, xmmword [0x140120f20]
pxor xmm0, xmm6
movdqu xmmword [rdx], xmm0
mov eax, 0x10
lea rcx, [rax + rdx]
lea r8, [rsp + 0x30]
sub r8, rdx
sub rdi, rax
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
xor al, 0x4a
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdi, 1
jne 0x14005cfb0
mov qword [rbp + 0x28], r13
mov qword [rbp + 0x30], 0xf
mov byte [rbp + 0x18], 0
mov r8, rbx
inc r8
cmp byte [rdx + r8], 0
jne 0x14005cfd6
lea rcx, [rbp + 0x18]
call fcn.1400064d0
nop
mov dword [rsp + 0x30], 0x91e0c09
mov dword [rsp + 0x34], 0x7a7b0118
mov dword [rsp + 0x38], 0x24242c66
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x58], eax
mov byte [rsp + 0x5c], 0x48
mov rdx, qword [0x14013b678]
test rdx, rdx
jne 0x14005d063
mov rcx, rsi
call fcn.140075634
mov rdx, rax
mov qword [0x14013b678], rax
mov rcx, rax
lea r9, [rsp + 0x50]
sub r9, rax
mov r8, rsi
nop word [rax + rax]
movzx eax, byte [r9 + rcx]
xor al, 0x48
mov byte [rcx], al
lea rcx, [rcx + 1]
sub r8, 1
jne 0x14005d050
mov qword [rbp - 0x68], r13
mov qword [rbp - 0x60], 0xf
mov byte [rbp - 0x78], 0
mov r8, rbx
inc r8
cmp byte [rdx + r8], 0
jne 0x14005d076
lea rcx, [rbp - 0x78]
call fcn.1400064d0
nop
lea rdx, [rbp + 0x18]
lea rcx, [rbp - 0x78]
call fcn.14006dcd0
xor edx, edx
mov rcx, qword [rbp - 0x30]
call rax
cmp qword [rbp - 0x80], 0
je 0x14005d21c
lea rax, [rbp - 8]
mov qword [rsp + 0x70], rax
movdqa xmm6, xmmword [0x140120cb0]
movaps xmmword [rsp + 0x50], xmm6
mov byte [rsp + 0x60], 0x4e
mov rdx, qword [0x14013bb68]
test rdx, rdx
jne 0x14005d143
mov edi, 0x11
mov ecx, edi
call fcn.140075634
mov rdx, rax
mov qword [0x14013bb68], rax
mov rax, r13
lea rcx, [rdx + 0x10]
lea r8, [rsp + 0x60]
cmp rdx, r8
ja 0x14005d102
lea r8, [rsp + 0x50]
cmp rcx, r8
jae 0x14005d117
movdqa xmm0, xmmword [0x140120f30]
pxor xmm0, xmm6
movdqu xmmword [rdx], xmm0
mov eax, 0x10
lea rcx, [rax + rdx]
lea r8, [rsp + 0x50]
sub r8, rdx
sub rdi, rax
nop word [rax + rax]
movzx eax, byte [r8 + rcx]
xor al, 0x4e
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rdi, 1
jne 0x14005d130
mov qword [rbp + 8], r13
mov qword [rbp + 0x10], 0xf
mov byte [rbp - 8], 0
mov r8, rbx
inc r8
cmp byte [rdx + r8], 0
jne 0x14005d156
lea rcx, [rbp - 8]
call fcn.1400064d0
nop
mov dword [rsp + 0x30], 0xd1a080d
mov dword [rsp + 0x34], 0x7e7f051c
mov dword [rsp + 0x38], 0x20202862
movsd xmm0, qword [rsp + 0x30]
movsd qword [rsp + 0x50], xmm0
mov eax, dword [rsp + 0x38]
mov dword [rsp + 0x58], eax
mov byte [rsp + 0x5c], 0x4c
mov rdx, qword [0x14013b7c0]
test rdx, rdx
jne 0x14005d1e3
mov rcx, rsi
call fcn.140075634
mov rdx, rax
mov qword [0x14013b7c0], rax
mov rcx, rax
lea r8, [rsp + 0x50]
sub r8, rax
nop dword [rax]
nop dword [rax + rax]
movzx eax, byte [r8 + rcx]
xor al, 0x4c
mov byte [rcx], al
lea rcx, [rcx + 1]
sub rsi, 1
jne 0x14005d1d0
mov qword [rbp - 0x18], r13
mov qword [rbp - 0x10], 0xf
mov byte [rbp - 0x28], 0
inc rbx
cmp byte [rdx + rbx], 0
jne 0x14005d1f3
mov r8, rbx
lea rcx, [rbp - 0x28]
call fcn.1400064d0
nop
lea rdx, [rbp - 8]
lea rcx, [rbp - 0x28]
call fcn.14006df20
mov rcx, qword [rbp - 0x80]
call rax
mov rcx, r14
call fcn.14007562c
nop
mov qword [r15 + 0x10], r13
mov qword [r15 + 0x18], 0xf
mov byte [r15], 0
mov dword [rbp + 0x38], 4
mov ecx, dword [rbp + 0xc8]
test cl, 2
jne 0x14005d271
mov rax, qword [rbp + 0x98]
mov r8, qword [rax]
test r8, r8
je 0x14005d271
mov rax, qword [rbp + 0x78]
mov rdx, qword [rax]
cmp r8, qword [rbp + 0xc0]
cmovb r8, qword [rbp + 0xc0]
sub r8, rdx
jmp 0x14005d29c
test cl, 4
jne 0x14005d2a5
mov rax, qword [rbp + 0x90]
mov rcx, qword [rax]
test rcx, rcx
je 0x14005d2a5
mov rax, qword [rbp + 0x70]
mov rdx, qword [rax]
mov rax, qword [rbp + 0xa8]
movsxd r8, dword [rax]
sub r8, rdx
add r8, rcx
mov rcx, r15
call fcn.1400064d0
nop
lea rcx, [rbp + 0x40]
call fcn.14005d2e0
nop
mov rcx, r12
call fcn.140006470
mov rax, r15
movaps xmm6, xmmword [rsp + 0x240]
add rsp, 0x258
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret