Function at 0x14003a380
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
push rbp
push rbx
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x38]
sub rsp, 0x108
movaps xmmword [rax - 0x48], xmm6
movaps xmmword [rax - 0x58], xmm7
movaps xmmword [rax - 0x68], xmm8
mov rax, qword [0x1400ac2c0]
xor rax, rsp
mov qword [rbp - 0x40], rax
mov eax, dword [0x14009d730]
xor ebx, ebx
movups xmm3, xmmword [0x14009d710]
mov r15d, dword [0x1400ac318]
mov r13d, edx
mov dword [rbp - 0x70], eax
mov r12, rcx
movzx eax, word [0x14009d734]
mov r8d, ebx
mov word [rbp - 0x6c], ax
movups xmm0, xmmword [0x14009d720]
movups xmmword [rsp + 0x70], xmm3
movups xmmword [rbp - 0x80], xmm0
cmp r15d, 2
jl 0x14003a5ae
movdqa xmm4, xmmword [0x14009e430]
movdqa xmm2, xmmword [0x14009e350]
movdqa xmm5, xmmword [str.3333]
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
movdqa xmm6, xmmword [0x14009e400]
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm1, xmm0, 0xd8
pshufd xmm2, xmm1, 0xd8
movq xmm1, xmm3
movdqa xmm3, xmmword [0x14009e370]
paddw xmm2, xmm6
xorps xmm2, xmm1
movdqa xmm0, xmm3
punpckhdq xmm0, xmm3
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movq qword [rsp + 0x70], xmm2
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
pshufhw xmm0, xmm3, 0xd8
movdqa xmm3, xmmword [0x14009e390]
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rsp + 0x78]
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
paddw xmm2, xmm6
xorps xmm2, xmm0
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
movq qword [rsp + 0x78], xmm2
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm3, xmm0
pshufhw xmm0, xmm3, 0xd8
movdqa xmm3, xmmword [0x14009e3b0]
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp - 0x80]
pshufd xmm2, xmm1, 0xd8
movdqa xmm1, xmm3
punpckldq xmm1, xmm3
paddw xmm2, xmm6
xorps xmm2, xmm0
pmuldq xmm1, xmm4
movdqa xmm0, xmm3
movq qword [rbp - 0x80], xmm2
punpckhdq xmm0, xmm3
pmuldq xmm0, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm3
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
mov r8d, 0x10
pmulld xmm0, xmm5
psubd xmm3, xmm0
pshufhw xmm0, xmm3, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp - 0x78]
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmm6
xorps xmm2, xmm0
movq qword [rbp - 0x78], xmm2
mov eax, r8d
lea r9, [rsp + 0x70]
lea r9, [r9 + rax*2]
nop word [rax + rax]
mov eax, 0xa0a0a0a1
lea r9, [r9 + 2]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x33
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x34
xor word [r9 - 2], ax
cmp r8d, 0x13
jl 0x14003a5c0
lea r8, [rsp + 0x70]
mov edx, 0x64
lea rcx, [0x1400afd10]
call fcn.140068f00
movq xmm8, qword [0x14009cf40]
mov r8d, ebx
movzx eax, word [0x14009cf48]
movq qword [rbp - 0x80], xmm8
mov word [rbp - 0x78], ax
movups xmm7, xmmword [str.yFPC__SO]
movups xmmword [rsp + 0x70], xmm7
cmp r15d, 2
jl 0x14003a79c
movdqa xmm2, xmmword [0x14009e350]
mov r8d, reloc.WS2_32.dll_inet_ntoa
movdqa xmm4, xmmword [0x14009e430]
movdqa xmm1, xmm2
movdqa xmm5, xmmword [str.3333]
movdqa xmm0, xmm2
movdqa xmm6, xmmword [0x14009e400]
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm6
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm1, xmm7
paddw xmm3, xmm2
movdqa xmm2, xmmword [0x14009e370]
xorps xmm3, xmm1
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movq qword [rsp + 0x70], xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm6
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rsp + 0x78]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movdqa xmm2, xmmword [0x14009e390]
xorps xmm3, xmm0
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movq qword [rsp + 0x78], xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm6
pshuflw xmm1, xmm0, 0xd8
movq xmm0, xmm8
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rbp - 0x80], xmm3
mov eax, r8d
lea r9, [rsp + 0x70]
lea r9, [r9 + rax*2]
nop dword [rax + rax]
mov eax, 0xa0a0a0a1
lea r9, [r9 + 2]
imul r8d
add edx, r8d
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x33
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x34
xor word [r9 - 2], ax
cmp r8d, 0xd
jl 0x14003a7b0
lea rcx, [rsp + 0x70]
call qword [sym.imp.KERNEL32.dll_LoadLibraryW]
mov qword [rsp + 0x58], rbx
lea r8, [0x1400afd10]
mov qword [rsp + 0x50], r12
lea rdx, [0x1400af9f0]
mov qword [rsp + 0x48], rbx
mov r9d, 0xca0000
mov qword [rsp + 0x40], rbx
xor ecx, ecx
mov dword [rsp + 0x38], 0x352
mov dword [rsp + 0x30], 0x2ee
mov dword [rsp + 0x28], ebx
mov dword [rsp + 0x20], 0x80000000
call qword [sym.imp.USER32.dll_CreateWindowExW]
mov r14, rax
test rax, rax
jne 0x14003a8ea
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rcx, [rbp - 0x60]
mov qword [rsp + 0x30], rbx
mov dword [rsp + 0x28], ebx
mov r9d, 0x400
mov qword [rsp + 0x20], rcx
mov r8d, eax
mov ecx, 0x1300
xor edx, edx
call qword [sym.imp.KERNEL32.dll_FormatMessageW]
cmp word [reloc.WS2_32.dll_gethostname], bx
movsd xmm0, qword [0x14009ba08]
mov eax, dword [0x14009ba10]
movsd qword [rsp + 0x60], xmm0
mov dword [rsp + 0x68], eax
je 0x14003a8c2
xor word [rsp + 0x62], 0x35
mov eax, 0x45
xor word [rsp + 0x64], 0x36
xor word [rsp + 0x66], 0x37
xor word [rsp + 0x68], 0x38
xor word [rsp + 0x6a], 0x39
mov word [rsp + 0x60], ax
mov rdx, qword [rbp - 0x60]
lea r8, [rsp + 0x60]
mov r9d, 0x10
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov rcx, qword [rbp - 0x60]
call qword [sym.imp.KERNEL32.dll_LocalFree]
xor eax, eax
jmp 0x14003ad31
mov qword [rsp + 0x150], rsi
xor ecx, ecx
mov qword [rsp + 0x100], rdi
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov ecx, 1
mov esi, eax
call qword [sym.imp.USER32.dll_GetSystemMetrics]
lea rdx, [rbp - 0x50]
mov rcx, r14
mov edi, eax
call qword [sym.imp.USER32.dll_GetWindowRect]
mov eax, dword [rbp - 0x4c]
mov rcx, r14
sub eax, dword [rbp - 0x44]
add eax, edi
mov dword [rsp + 0x30], 5
cdq
mov dword [rsp + 0x28], ebx
sub eax, edx
mov dword [rsp + 0x20], ebx
sar eax, 1
mov r9d, eax
mov eax, dword [rbp - 0x50]
sub eax, dword [rbp - 0x48]
add eax, esi
cdq
sub eax, edx
xor edx, edx
sar eax, 1
mov r8d, eax
call qword [sym.imp.USER32.dll_SetWindowPos]
mov edx, WSAStartup
mov rcx, r12
call qword [sym.imp.USER32.dll_LoadBitmapW]
mov rdi, qword [rsp + 0x100]
mov rsi, qword [rsp + 0x150]
mov qword [0x1400b0120], rax
test rax, rax
jne 0x14003acb2
movsd xmm0, qword [str._pec8]
mov ecx, 0x54
movzx eax, word [0x14009bcd8]
movups xmm7, xmmword [0x14009dae8]
xor ax, 0x38
movq xmm8, qword [0x14009db08]
movsd qword [rbp - 0x60], xmm0
movups xmm0, xmmword [0x14009daf8]
xor word [rbp - 0x5e], 0x35
xor word [rbp - 0x5c], 0x36
xor word [rbp - 0x5a], 0x37
mov word [rbp - 0x58], ax
mov eax, dword [0x14009db10]
mov word [rbp - 0x60], cx
movq qword [rbp - 0x70], xmm8
mov dword [rbp - 0x68], eax
movups xmmword [rbp - 0x80], xmm0
movups xmmword [rsp + 0x70], xmm7
cmp r15d, 2
jl 0x14003ac20
movdqa xmm4, xmmword [0x14009e430]
movdqa xmm2, xmmword [0x14009e350]
movdqa xmm5, xmmword [str.3333]
movdqa xmm1, xmm2
movdqa xmm6, xmmword [0x14009e400]
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm6
pshuflw xmm1, xmm0, 0xd8
pshufd xmm3, xmm1, 0xd8
movq xmm1, xmm7
paddw xmm3, xmm2
movdqa xmm2, xmmword [0x14009e370]
xorps xmm3, xmm1
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movq qword [rsp + 0x70], xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm6
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rsp + 0x78]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movdqa xmm2, xmmword [0x14009e390]
xorps xmm3, xmm0
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movq qword [rsp + 0x78], xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm6
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp - 0x80]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movdqa xmm2, xmmword [0x14009e3b0]
xorps xmm3, xmm0
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
pmuldq xmm1, xmm4
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
movq qword [rbp - 0x80], xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
mov ebx, 0x14
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm6
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp - 0x78]
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
movdqa xmm2, xmmword [0x14009e3c0]
xorps xmm3, xmm0
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
movq qword [rbp - 0x78], xmm3
shufps xmm1, xmm0, 0xdd
paddd xmm1, xmm2
psrad xmm1, 5
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
movq xmm2, xmm6
pshuflw xmm1, xmm0, 0xd8
movq xmm0, xmm8
pshufd xmm3, xmm1, 0xd8
paddw xmm3, xmm2
xorps xmm3, xmm0
movq qword [rbp - 0x70], xmm3
mov eax, ebx
lea r9, [rsp + 0x70]
lea r9, [r9 + rax*2]
nop dword [rax + rax]
mov eax, 0xa0a0a0a1
lea r9, [r9 + 2]
imul ebx
add edx, ebx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x33
movzx eax, bx
inc ebx
sub ax, cx
add ax, 0x34
xor word [r9 - 2], ax
cmp ebx, 0x16
jl 0x14003ac30
mov r9d, 0x10
lea r8, [rbp - 0x60]
lea rdx, [rsp + 0x70]
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxW]
mov rcx, qword [0x1400afde0]
test rcx, rcx
je 0x14003acb2
xor r9d, r9d
mov edx, 0x402
mov r8d, 0x64
call qword [sym.imp.USER32.dll_SendMessageW]
mov rcx, qword [0x1400afde0]
call qword [sym.imp.USER32.dll_GetParent]
mov rcx, rax
xor edx, edx
call qword [sym.imp.USER32.dll_EndDialog]
mov edx, 0xffffffec
mov rcx, r14
call qword [sym.imp.USER32.dll_GetWindowLongW]
mov edx, 0xffffffec
mov rcx, r14
bts eax, 0x13
mov r8d, eax
call qword [sym.imp.USER32.dll_SetWindowLongW]
mov r9d, 2
mov r8b, 0xe5
xor edx, edx
mov rcx, r14
call qword [sym.imp.USER32.dll_SetLayeredWindowAttributes]
mov edx, 1
mov rcx, r14
call qword [sym.imp.SHELL32.dll_DragAcceptFiles]
mov edx, r13d
mov rcx, r14
call qword [sym.imp.USER32.dll_ShowWindow]
mov rcx, r14
call qword [sym.imp.USER32.dll_UpdateWindow]
mov rcx, qword [0x1400afde0]
test rcx, rcx
je 0x14003ad2c
xor r9d, r9d
mov edx, 0x402
mov r8d, gethostbyname
call qword [sym.imp.USER32.dll_SendMessageW]
mov eax, 1
mov rcx, qword [rbp - 0x40]
xor rcx, rsp
call fcn.140062690
lea r11, [rsp + 0x108]
movaps xmm6, xmmword [r11 - 0x18]
movaps xmm7, xmmword [r11 - 0x28]
movaps xmm8, xmmword [r11 - 0x38]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbx
pop rbp
ret