Function at 0x1400d4500
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Get common file path
Terminate process

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov qword [rsp + 0x20], r12
push rbp
push r14
push r15
lea rbp, [rsp - 0x470]
sub rsp, 0x570
mov rax, qword [0x1403f20c0]
xor rax, rsp
mov qword [rbp + 0x460], rax
xor r12d, r12d
lea rcx, [0x14048d6c2]
call fcn.140289ea0
call qword [sym.imp.KERNEL32.dll_GetConsoleWindow]
xor edx, edx
mov rcx, rax
call qword [sym.imp.USER32.dll_ShowWindow]
movdqa xmm0, xmmword [0x1403c0090]
movdqa xmmword [rsp + 0x60], xmm0
movdqa xmm1, xmmword [0x1403c00e0]
movdqa xmmword [rsp + 0x70], xmm1
movdqa xmm0, xmmword [0x1403bf960]
movdqa xmmword [rbp - 0x80], xmm0
movdqa xmm1, xmmword [0x1403bf970]
movdqa xmmword [rbp - 0x70], xmm1
mov word [rbp - 0x60], 0x50
mov eax, r12d
nop dword [rax + rax]
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x61], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x62], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x63], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x64], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x65], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x66], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x67], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x68], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x69], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x6a], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x6b], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x6c], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x6d], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x6e], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x6f], cl
movzx ecx, byte [rsp + 0x60]
xor byte [rsp + rax + 0x70], cl
add rax, 0x10
cmp rax, 0x40
jb 0x1400d45a0
mov byte [rbp - 0x5f], r12b
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0xf0], r12
mov qword [rbp + 0xf8], r12
lea rax, [rsp + 0x61]
mov rdi, 0xffffffffffffffff
mov r8, rdi
nop dword [rax]
inc r8
cmp byte [rax + r8], r12b
jne 0x1400d4670
lea rdx, [rsp + 0x61]
lea rcx, [rbp + 0xe0]
call fcn.140043b60
lea rax, [rbp + 0xe0]
mov qword [rsp + 0x58], rax
mov r8, qword [rbp + 0xf0]
cmp r8, 0x40
jne 0x1400d470a
lea rbx, [0x140469380]
mov rdx, rbx
mov rsi, qword [0x140469380]
mov r14, qword [0x140469398]
cmp r14, 0xf
cmova rdx, rsi
lea rcx, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova rcx, qword [rbp + 0xe0]
cmp r8, qword [0x140469390]
jne 0x1400d470a
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x1400d470a
mov qword [0x140469390], r12
cmp r14, 0xf
cmova rbx, rsi
mov byte [rbx], al
lea rcx, [0x1404668f0]
call fcn.140233fb0
nop
lea rcx, [rbp + 0xe0]
call fcn.14005bde0
call fcn.1401c3c50
lea rax, [rbp + 0x250]
mov qword [rsp + 0x20], rax
xor r9d, r9d
xor r8d, r8d
mov edx, reloc.WLDAP32.dll_Ordinal_26
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_SHGetFolderPathW]
test eax, eax
js 0x1400d47b3
mov qword [rsp + 0x38], r12
mov qword [rsp + 0x30], r12
mov dword [rsp + 0x28], 0x104
lea rax, [rbp + 0x140]
mov qword [rsp + 0x20], rax
mov r9d, edi
lea r8, [rbp + 0x250]
xor edx, edx
mov ecx, 0xfde9
call qword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
test eax, eax
jle 0x1400d47b3
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0xf0], r12
mov qword [rbp + 0xf8], r12
lea rax, [rbp + 0x140]
mov r8, rdi
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x1400d47a0
lea rdx, [rbp + 0x140]
jmp 0x1400d47d5
xorps xmm0, xmm0
movups xmmword [rbp + 0xe0], xmm0
mov qword [rbp + 0xf0], r12
mov qword [rbp + 0xf8], r12
xor r8d, r8d
lea rdx, [0x1403b0689]
lea rcx, [rbp + 0xe0]
call fcn.140043b60
nop
mov dword [rsp + 0x48], 0x68705c04
mov dword [rsp + 0x4c], 0x6e6f746f
mov byte [rsp + 0x50], 0
lea rax, [rsp + 0x49]
mov rcx, rdi
nop
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400d4800
movabs rsi, 0x7fffffffffffffff
mov rax, rsi
mov rdx, qword [rbp + 0xf0]
sub rax, rdx
cmp rax, rcx
jb 0x1400d57fe
lea r9, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova r9, qword [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x49]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r8, [rbp + 0xe0]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0x100]
call fcn.140065770
nop
lea rax, [rbp + 0x100]
cmp qword [rbp + 0x118], 0xf
cmova rax, qword [rbp + 0x100]
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp + 0x110]
mov qword [rbp + 0xc8], rax
call fcn.140287f60
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea r8, [rbp + 0xc0]
mov edx, eax
lea rcx, [rbp + 0x120]
call fcn.1400ccef0
nop
mov qword [rbp + 0xc0], r12
lea r14, str.hY_
mov qword [rbp + 0xc8], r14
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x120]
call fcn.1400ce880
movzx ebx, al
cmp dword [rbp + 0xc0], 0
jne 0x1400d5804
lea rcx, [rbp + 0x120]
call fcn.1400d1160
nop
lea rcx, [rbp + 0x100]
call fcn.14005bde0
test bl, bl
jne 0x1400d4a28
mov dword [rsp + 0x48], 0x68705c69
mov dword [rsp + 0x4c], 0x6e6f746f
mov byte [rsp + 0x50], bl
lea rax, [rsp + 0x49]
mov rcx, rdi
nop dword [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400d4940
mov rax, rsi
mov rdx, qword [rbp + 0xf0]
sub rax, rdx
cmp rax, rcx
jb 0x1400d581f
lea r9, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova r9, qword [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rax, [rsp + 0x49]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r8, [rbp + 0xe0]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp - 0x50]
call fcn.140065770
nop
lea rax, [rbp - 0x50]
cmp qword [rbp - 0x38], 0xf
cmova rax, qword [rbp - 0x50]
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp - 0x40]
mov qword [rbp + 0xc8], rax
call fcn.140287f60
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea r8, [rbp + 0xc0]
mov edx, eax
lea rcx, [rbp + 0x100]
call fcn.1400ccef0
nop
lea rcx, [rbp + 0x100]
cmp qword [rbp + 0x118], 7
cmova rcx, qword [rbp + 0x100]
call fcn.1402881c0
shr rax, 0x20
test eax, eax
jne 0x1400d5825
lea rcx, [rbp + 0x100]
call fcn.1400d1160
nop
lea rcx, [rbp - 0x50]
call fcn.14005bde0
movdqa xmm0, xmmword [0x1403c07e0]
movdqu xmmword [rbp + 0xc0], xmm0
mov byte [rbp + 0xd0], 0
lea rax, [rbp + 0xc1]
mov rcx, rdi
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400d4a50
mov rax, rsi
mov rdx, qword [rbp + 0xf0]
sub rax, rdx
cmp rax, rcx
jb 0x1400d583b
lea r9, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova r9, qword [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0xc1]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r8, [rbp + 0xe0]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0x100]
call fcn.140065770
nop
lea rax, [rbp + 0x100]
cmp qword [rbp + 0x118], 0xf
cmova rax, qword [rbp + 0x100]
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp + 0x110]
mov qword [rbp + 0xc8], rax
call fcn.140287f60
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea r8, [rbp + 0xc0]
mov edx, eax
lea rcx, [rbp + 0x120]
call fcn.1400ccef0
nop
mov qword [rbp + 0xc0], r12
mov qword [rbp + 0xc8], r14
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x120]
call fcn.1400ce880
movzx ebx, al
cmp dword [rbp + 0xc0], 0
jne 0x1400d5841
lea rcx, [rbp + 0x120]
call fcn.1400d1160
nop
lea rcx, [rbp + 0x100]
call fcn.14005bde0
test bl, bl
jne 0x1400d4c6a
movdqa xmm0, xmmword [0x1403c07b0]
movdqu xmmword [rbp + 0xc0], xmm0
mov byte [rbp + 0xd0], bl
lea rax, [rbp + 0xc1]
mov rcx, rdi
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400d4b80
mov rax, rsi
mov rdx, qword [rbp + 0xf0]
sub rax, rdx
cmp rax, rcx
jb 0x1400d585c
lea r9, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova r9, qword [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0xc1]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r8, [rbp + 0xe0]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp - 0x50]
call fcn.140065770
nop
lea rax, [rbp - 0x50]
cmp qword [rbp - 0x38], 0xf
cmova rax, qword [rbp - 0x50]
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp - 0x40]
mov qword [rbp + 0xc8], rax
call fcn.140287f60
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea r8, [rbp + 0xc0]
mov edx, eax
lea rcx, [rbp + 0x100]
call fcn.1400ccef0
nop
lea rcx, [rbp + 0x100]
cmp qword [rbp + 0x118], 7
cmova rcx, qword [rbp + 0x100]
call fcn.1402881c0
shr rax, 0x20
test eax, eax
jne 0x1400d5862
lea rcx, [rbp + 0x100]
call fcn.1400d1160
nop
lea rcx, [rbp - 0x50]
call fcn.14005bde0
mov dword [rbp + 0xc0], 0x68705c2f
mov dword [rbp + 0xc4], 0x6e6f746f
mov dword [rbp + 0xc8], 0x61754c5c
mov byte [rbp + 0xcc], 0
lea rax, [rbp + 0xc1]
mov rcx, rdi
nop dword [rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400d4ca0
mov rax, rsi
mov rdx, qword [rbp + 0xf0]
sub rax, rdx
cmp rax, rcx
jb 0x1400d5878
lea r9, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova r9, qword [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0xc1]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r8, [rbp + 0xe0]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0x100]
call fcn.140065770
nop
lea rax, [rbp + 0x100]
cmp qword [rbp + 0x118], 0xf
cmova rax, qword [rbp + 0x100]
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp + 0x110]
mov qword [rbp + 0xc8], rax
call fcn.140287f60
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea r8, [rbp + 0xc0]
mov edx, eax
lea rcx, [rbp + 0x120]
call fcn.1400ccef0
nop
mov qword [rbp + 0xc0], r12
mov qword [rbp + 0xc8], r14
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x120]
call fcn.1400ce880
movzx ebx, al
cmp dword [rbp + 0xc0], 0
jne 0x1400d587e
lea rcx, [rbp + 0x120]
call fcn.1400d1160
nop
lea rcx, [rbp + 0x100]
call fcn.14005bde0
test bl, bl
jne 0x1400d4eca
mov dword [rbp + 0xc0], 0x68705c67
mov dword [rbp + 0xc4], 0x6e6f746f
mov dword [rbp + 0xc8], 0x61754c5c
mov byte [rbp + 0xcc], bl
lea rax, [rbp + 0xc1]
mov rcx, rdi
nop dword [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400d4de0
mov rax, rsi
mov rdx, qword [rbp + 0xf0]
sub rax, rdx
cmp rax, rcx
jb 0x1400d5899
lea r9, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova r9, qword [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0xc1]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r8, [rbp + 0xe0]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp - 0x50]
call fcn.140065770
nop
lea rax, [rbp - 0x50]
cmp qword [rbp - 0x38], 0xf
cmova rax, qword [rbp - 0x50]
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp - 0x40]
mov qword [rbp + 0xc8], rax
call fcn.140287f60
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea r8, [rbp + 0xc0]
mov edx, eax
lea rcx, [rbp + 0x100]
call fcn.1400ccef0
nop
lea rcx, [rbp + 0x100]
cmp qword [rbp + 0x118], 7
cmova rcx, qword [rbp + 0x100]
call fcn.1402881c0
shr rax, 0x20
test eax, eax
jne 0x1400d589f
lea rcx, [rbp + 0x100]
call fcn.1400d1160
nop
lea rcx, [rbp - 0x50]
call fcn.14005bde0
movdqa xmm0, xmmword [0x1403c08c0]
movdqu xmmword [rbp - 0x50], xmm0
mov dword [rbp - 0x40], 0x616f4c6f
mov word [rbp - 0x3c], 0x64
lea rax, [rbp - 0x4f]
mov rcx, rdi
nop dword [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400d4ef0
mov rax, rsi
mov rdx, qword [rbp + 0xf0]
sub rax, rdx
cmp rax, rcx
jb 0x1400d58b5
lea r9, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova r9, qword [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp - 0x4f]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r8, [rbp + 0xe0]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0x100]
call fcn.140065770
nop
lea rax, [rbp + 0x100]
cmp qword [rbp + 0x118], 0xf
cmova rax, qword [rbp + 0x100]
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp + 0x110]
mov qword [rbp + 0xc8], rax
call fcn.140287f60
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea r8, [rbp + 0xc0]
mov edx, eax
lea rcx, [rbp + 0x120]
call fcn.1400ccef0
nop
mov qword [rbp + 0xc0], r12
mov qword [rbp + 0xc8], r14
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x120]
call fcn.1400ce880
movzx ebx, al
cmp dword [rbp + 0xc0], 0
jne 0x1400d58bb
lea rcx, [rbp + 0x120]
call fcn.1400d1160
nop
lea rcx, [rbp + 0x100]
call fcn.14005bde0
test bl, bl
jne 0x1400d5119
movdqa xmm0, xmmword [0x1403c08d0]
movdqu xmmword [rbp - 0x50], xmm0
mov dword [rbp - 0x40], 0x616f4c6f
mov word [rbp - 0x3c], 0x64
lea rax, [rbp - 0x4f]
mov rcx, rdi
nop dword [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400d5020
mov rax, rsi
mov rdx, qword [rbp + 0xf0]
sub rax, rdx
cmp rax, rcx
jb 0x1400d58d6
lea r9, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova r9, qword [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp - 0x4f]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r8, [rbp + 0xe0]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0x120]
call fcn.140065770
nop
lea rax, [rbp + 0x120]
cmp qword [rbp + 0x138], 0xf
cmova rax, qword [rbp + 0x120]
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp + 0x130]
mov qword [rbp + 0xc8], rax
call fcn.140287f60
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea r8, [rbp + 0xc0]
mov edx, eax
lea rcx, [rbp + 0x100]
call fcn.1400ccef0
nop
lea rcx, [rbp + 0x100]
cmp qword [rbp + 0x118], 7
cmova rcx, qword [rbp + 0x100]
call fcn.1402881c0
shr rax, 0x20
test eax, eax
jne 0x1400d58dc
lea rcx, [rbp + 0x100]
call fcn.1400d1160
nop
lea rcx, [rbp + 0x120]
call fcn.14005bde0
mov dword [rbp + 0xc0], 0x68705c47
mov dword [rbp + 0xc4], 0x6e6f746f
mov dword [rbp + 0xc8], 0x7461445c
mov word [rbp + 0xcc], 0x61
lea rax, [rbp + 0xc1]
mov rcx, rdi
nop word [rax + rax]
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400d5150
mov rax, rsi
mov rdx, qword [rbp + 0xf0]
sub rax, rdx
cmp rax, rcx
jb 0x1400d58f2
lea r9, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova r9, qword [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0xc1]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r8, [rbp + 0xe0]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0x120]
call fcn.140065770
nop
lea rax, [rbp + 0x120]
cmp qword [rbp + 0x138], 0xf
cmova rax, qword [rbp + 0x120]
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp + 0x130]
mov qword [rbp + 0xc8], rax
call fcn.140287f60
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea r8, [rbp + 0xc0]
mov edx, eax
lea rcx, [rbp + 0x100]
call fcn.1400ccef0
nop
mov qword [rbp + 0xc0], r12
mov qword [rbp + 0xc8], r14
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x100]
call fcn.1400ce880
movzx ebx, al
cmp dword [rbp + 0xc0], 0
jne 0x1400d58f8
lea rcx, [rbp + 0x100]
call fcn.1400d1160
nop
lea rcx, [rbp + 0x120]
call fcn.14005bde0
test bl, bl
jne 0x1400d538c
mov dword [rbp + 0xc0], 0x68705c16
mov dword [rbp + 0xc4], 0x6e6f746f
mov dword [rbp + 0xc8], 0x7461445c
mov word [rbp + 0xcc], 0x61
lea rax, [rbp + 0xc1]
mov rcx, rdi
nop
inc rcx
cmp byte [rax + rcx], 0
jne 0x1400d5290
mov rax, rsi
mov rdx, qword [rbp + 0xf0]
sub rax, rdx
cmp rax, rcx
jb 0x1400d5913
lea r9, [rbp + 0xe0]
cmp qword [rbp + 0xf8], 0xf
cmova r9, qword [rbp + 0xe0]
mov qword [rsp + 0x30], rcx
lea rax, [rbp + 0xc1]
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdx
lea r8, [rbp + 0xe0]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0x120]
call fcn.140065770
nop
lea rax, [rbp + 0x120]
cmp qword [rbp + 0x138], 0xf
cmova rax, qword [rbp + 0x120]
mov qword [rbp + 0xc0], rax
mov rax, qword [rbp + 0x130]
mov qword [rbp + 0xc8], rax
call fcn.140287f60
movaps xmm0, xmmword [rbp + 0xc0]
movdqa xmmword [rbp + 0xc0], xmm0
lea r8, [rbp + 0xc0]
mov edx, eax
lea rcx, [rbp + 0x100]
call fcn.1400ccef0
nop
lea rcx, [rbp + 0x100]
cmp qword [rbp + 0x118], 7
cmova rcx, qword [rbp + 0x100]
call fcn.1402881c0
shr rax, 0x20
test eax, eax
jne 0x1400d5919
lea rcx, [rbp + 0x100]
call fcn.1400d1160
nop
lea rcx, [rbp + 0x120]
call fcn.14005bde0
cmp byte [0x140466516], 0
jne 0x1400d5623
xorps xmm0, xmm0
movups xmmword [rbp + 0x100], xmm0
mov qword [rbp + 0x110], r12
mov qword [rbp + 0x118], reloc.WS2_32.dll_ntohs
mov byte [rbp + 0x100], 0
lea rax, [rbp + 0x120]
mov qword [rsp + 0x58], rax
movdqa xmm0, xmmword [0x1403c03d0]
movdqa xmmword [rsp + 0x60], xmm0
movdqa xmm1, xmmword [0x1403bfb60]
movdqa xmmword [rsp + 0x70], xmm1
movdqa xmm0, xmmword [0x1403bfb20]
movdqa xmmword [rbp - 0x80], xmm0
movdqa xmm1, xmmword [0x1403bfb10]
movdqa xmmword [rbp - 0x70], xmm1
mov word [rbp - 0x60], 0x33
mov rcx, r12
nop word [rax + rax]
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x61], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x62], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x63], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x64], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x65], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x66], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x67], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x68], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x69], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x6a], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x6b], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x6c], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x6d], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x6e], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x6f], al
movzx eax, byte [rsp + 0x60]
xor byte [rsp + rcx + 0x70], al
add rcx, 0x10
cmp rcx, 0x40
jb 0x1400d5410
mov byte [rbp - 0x5f], 0
xorps xmm0, xmm0
movups xmmword [rbp + 0x120], xmm0
mov qword [rbp + 0x130], r12
mov qword [rbp + 0x138], r12
lea rax, [rsp + 0x61]
mov r8, rdi
inc r8
cmp byte [rax + r8], 0
jne 0x1400d54d2
lea rdx, [rsp + 0x61]
lea rcx, [rbp + 0x120]
call fcn.140043b60
nop
lea rax, [rbp - 0x20]
mov qword [rbp - 0x30], rax
lea r15, [0x14042ada0]
mov rdx, r15
lea rcx, [rbp - 0x20]
call fcn.140059850
mov rbx, rax
lea rdx, [0x14042adc0]
lea rcx, [rbp - 0x50]
call fcn.140059850
nop
lea r9, [rbp + 0x100]
lea r8, [rbp + 0x120]
mov rdx, rbx
mov rcx, rax
call fcn.1400d4120
test al, al
jne 0x1400d5661
mov qword [0x14042adb0], r12
cmp qword [reloc.WS2_32.dll_ntohs], 0xf
cmova r15, qword [0x14042ada0]
mov byte [r15], al
mov dword [rsp + 0x48], 0x72724513
mov dword [rsp + 0x4c], 0x203a726f
mov byte [rsp + 0x50], al
lea rax, [rsp + 0x49]
inc rdi
cmp byte [rax + rdi], 0
jne 0x1400d5571
mov rcx, qword [rbp + 0x110]
sub rsi, rcx
cmp rsi, rdi
jb 0x1400d57f8
lea rax, [rbp + 0x100]
cmp qword [rbp + 0x118], 0xf
cmova rax, qword [rbp + 0x100]
mov qword [rsp + 0x30], rcx
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rdi
lea r9, [rsp + 0x49]
lea r8, [rbp + 0x100]
movzx edx, byte [rsp + 0x40]
lea rcx, [rbp + 0x120]
call fcn.140065770
nop
mov dword [rsp + 0x58], 0x6f68703e
mov dword [rsp + 0x5c], 0x6e6f74
lea rdx, [rbp + 0x120]
cmp qword [rbp + 0x138], 0xf
cmova rdx, qword [rbp + 0x120]
xor r9d, r9d
lea r8, [rsp + 0x59]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
nop
lea rcx, [rbp + 0x120]
call fcn.14005bde0
nop
lea rcx, [rbp + 0x100]
call fcn.14005bde0
nop
lea rcx, [rbp + 0xe0]
call fcn.14005bde0
xor eax, eax
mov rcx, qword [rbp + 0x460]
xor rcx, rsp
call fcn.1402889f0
lea r11, [rsp + 0x570]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov r12, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
lea rax, [rbp + 0x18]
mov qword [rbp - 0x28], rax
mov rdx, r15
lea rcx, [rbp + 0x18]
call fcn.1400d3f80
mov r14, rax
lea rax, [rbp + 0x38]
mov qword [rbp - 0x30], rax
lea rdx, [rbp + 8]
call fcn.1400d59b0
lea rdx, [rax + 1]
movzx r8d, byte [rax]
xor byte [rdx], r8b
xor byte [rax + 2], r8b
xor byte [rax + 3], r8b
xor byte [rax + 4], r8b
xor byte [rax + 5], r8b
xor byte [rax + 6], r8b
xor byte [rax + 7], r8b
xor byte [rdx + 7], r8b
mov byte [rdx + 8], 0
lea rcx, [rbp - 0x20]
call fcn.140043a70
nop
lea rdx, [rbp - 0x20]
lea rcx, [rbp + 0x38]
call fcn.1400d3f80
mov rsi, rax
lea rax, [rbp + 0x58]
mov qword [rsp + 0x58], rax
lea rdx, [0x14042adc0]
lea rcx, [rbp + 0x58]
call fcn.1400d3f80
mov rdi, rax
lea rax, [rbp + 0x78]
mov qword [rbp], rax
lea rdx, [rbp + 0xc0]
call fcn.1400d5970
lea rdx, [rax + 1]
movzx r8d, byte [rax]
xor byte [rdx], r8b
xor byte [rax + 2], r8b
xor byte [rax + 3], r8b
xor byte [rax + 4], r8b
xor byte [rax + 5], r8b
xor byte [rax + 6], r8b
xor byte [rax + 7], r8b
xor byte [rdx + 7], r8b
mov byte [rdx + 8], 0
lea rcx, [rbp + 0x120]
call fcn.140043a70
nop
lea rdx, [rbp + 0x120]
lea rcx, [rbp + 0x78]
call fcn.1400d3f80
mov rbx, rax
lea rdx, [rbp - 0x50]
call fcn.1400d5930
lea r8, [rax + 1]
movzx edx, byte [rax]
xor byte [r8], dl
xor byte [rax + 2], dl
xor byte [rax + 3], dl
xor byte [rax + 4], dl
xor byte [rax + 5], dl
xor byte [rax + 6], dl
xor byte [rax + 7], dl
xor byte [rax + 8], dl
xor byte [rax + 9], dl
xor byte [rax + 0xa], dl
xor byte [rax + 0xb], dl
xor byte [rax + 0xc], dl
xor byte [rax + 0xd], dl
xor byte [rax + 0xe], dl
xor byte [rax + 0xf], dl
xor byte [rax + 0x10], dl
xor byte [rax + 0x11], dl
xor byte [r8 + 0x11], dl
mov byte [r8 + 0x12], 0
lea rdx, [rbp + 0xe0]
lea rcx, [rbp + 0x98]
call fcn.1400d5ca0
nop
mov qword [rsp + 0x20], r14
mov r9, rsi
mov r8, rdi
mov rdx, rbx
mov rcx, rax
call fcn.1400d3b70
nop
lea rcx, [rbp + 0x120]
call fcn.140059620
nop
lea rcx, [rbp - 0x20]
call fcn.140059620
mov rcx, r15
call fcn.140068160
lea rcx, [0x140466d68]
call fcn.140068160
call fcn.1400f2620
xor ecx, ecx
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_exit]
int3
call fcn.140041a10
nop
call fcn.140041a10
nop
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0xc0]
lea rcx, str.exists
call fcn.1400ce050
nop
call fcn.140041a10
nop
lea r8, [rbp + 0x100]
mov edx, eax
lea rcx, str.create_directory
call fcn.1400cdfd0
nop
call fcn.140041a10
nop
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0xc0]
lea rcx, str.exists
call fcn.1400ce050
nop
call fcn.140041a10
nop
lea r8, [rbp + 0x100]
mov edx, eax
lea rcx, str.create_directory
call fcn.1400cdfd0
nop
call fcn.140041a10
nop
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0xc0]
lea rcx, str.exists
call fcn.1400ce050
nop
call fcn.140041a10
nop
lea r8, [rbp + 0x100]
mov edx, eax
lea rcx, str.create_directory
call fcn.1400cdfd0
nop
call fcn.140041a10
nop
lea r8, [rbp + 0x120]
lea rdx, [rbp + 0xc0]
lea rcx, str.exists
call fcn.1400ce050
nop
call fcn.140041a10
nop
lea r8, [rbp + 0x100]
mov edx, eax
lea rcx, str.create_directory
call fcn.1400cdfd0
nop
call fcn.140041a10
nop
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0xc0]
lea rcx, str.exists
call fcn.1400ce050
nop
call fcn.140041a10
nop
lea r8, [rbp + 0x100]
mov edx, eax
lea rcx, str.create_directory
call fcn.1400cdfd0
int3