Function at 0x14004a670
Capabilities:
Encode data using xor
Log keystrokes via polling
Resolve function by parsing pe exports

Disassembly:
push rbp
push r13
push r15
lea rbp, [rsp - 0x370]
sub rsp, 0x470
mov rax, qword [0x1400e10c0]
xor rax, rsp
mov qword [rbp + 0x2b0], rax
mov rdx, qword [0x1401c7c48]
xor r13d, r13d
add rdx, 0xffbd30
movaps xmmword [rsp + 0x3f0], xmm12
cmp rdx, 0xffffffffffffffff
je 0x14004a6da
mov rcx, qword [0x1401c7c50]
lea rax, [rbp + 0x58]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x4c]
mov qword [rbp + 0x58], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
lea r15, [0x1401c66d0]
mov qword [rsp + 0x490], rbx
xorps xmm12, xmm12
mov qword [rsp + 0x498], rsi
mov qword [rsp + 0x4a0], rdi
mov qword [rsp + 0x460], r14
movaps xmmword [rsp + 0x450], xmm6
movaps xmmword [rsp + 0x440], xmm7
movaps xmmword [rsp + 0x430], xmm8
movaps xmmword [rsp + 0x420], xmm9
movaps xmmword [rsp + 0x410], xmm10
movaps xmmword [rsp + 0x400], xmm11
cmp dword [rbp - 0x4c], r13d
je 0x14004b83e
movdqa xmm10, xmmword [0x1400d0ff0]
mov edi, r13d
movss xmm11, dword [0x1400d0e5c]
movss xmm8, dword [0x1400d0e74]
mov r15d, dword [rsp + 0x48]
movaps xmmword [rsp + 0x3e0], xmm13
movdqa xmm13, xmmword [0x1400d1560]
movaps xmmword [rsp + 0x3d0], xmm14
movss xmm14, dword [0x1400d0f08]
movaps xmmword [rsp + 0x3c0], xmm15
movdqa xmm15, xmmword [0x1400d1010]
mov qword [rsp + 0x468], r12
mov dword [rsp + 0x68], r13d
nop dword [rax]
mov edx, dword [0x1400cef70]
add rdx, qword [0x1401c7c48]
cmp rdx, 0xffffffffffffffff
je 0x14004a7e7
mov rcx, qword [0x1401c7c50]
lea rax, [rbp + 0x60]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x50]
mov qword [rbp + 0x60], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov edx, dword [0x1400cef78]
add rdx, qword [0x1401c7c48]
cmp rdx, 0xffffffffffffffff
je 0x14004a824
mov rcx, qword [0x1401c7c50]
lea rax, [rbp + 0xe0]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x28]
mov qword [rbp + 0xe0], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov edx, dword [0x1400cef74]
add rdx, qword [0x1401c7c48]
cmp rdx, 0xffffffffffffffff
je 0x14004a85b
mov rcx, qword [0x1401c7c50]
lea rax, [rbp + 0x70]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x10]
mov qword [rbp + 0x70], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov ecx, dword [rbp - 0x50]
lea rax, [rbp + 0x78]
sub ecx, dword [rbp - 0x28]
lea r8, [rbp - 0x24]
mov edx, dword [rbp - 0x10]
mov r9d, 4
add edx, 0x29d60
mov dword [rbp - 0x50], ecx
add edx, ecx
mov qword [rbp + 0x78], r13
mov rcx, qword [0x1401c7c50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
cmp byte [reloc.WS2_32.dll_accept], 0
je 0x14004a8c2
mov eax, dword [rbp - 0x24]
and eax, 0x80000001
jge 0x14004a8ad
dec eax
or eax, 0xfffffffe
inc eax
test eax, eax
mov ecx, r13d
mov eax, edi
setne cl
and eax, 1
cmp eax, ecx
je 0x14004b7ff
mov rax, qword [0x1401c7c48]
lea rdx, [rax + 0xff20bc]
cmp rdx, 0xffffffffffffffff
je 0x14004a907
mov rcx, qword [0x1401c7c50]
lea rax, [rbp + 0x80]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x20]
mov qword [rbp + 0x80], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rax, qword [0x1401c7c48]
lea rdx, [rax + 0xff2078]
cmp rdx, 0xffffffffffffffff
je 0x14004a93e
mov rcx, qword [0x1401c7c50]
lea rax, [rbp + 0x128]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x1c]
mov qword [rbp + 0x128], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov ecx, dword [rbp - 0x20]
mov edx, edi
add ecx, dword [rbp - 0x1c]
call fcn.14003e7f0
mov ebx, eax
test eax, eax
je 0x14004b7ff
mov rcx, qword [0x1401c7c50]
lea edx, [rax + 0xddc]
lea rax, [rbp + 0x88]
mov qword [rbp + 0x88], r13
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x18]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, dword [rbp - 0x18]
test eax, eax
je 0x14004b7ff
mov rcx, qword [0x1401c7c50]
lea edx, [rax + 0x6c]
lea rax, [rbp + 0xc0]
mov qword [rbp + 0xc0], r13
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x14]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
cvttss2si esi, dword [rbp - 0x14]
test esi, esi
je 0x14004b7ff
cmp byte [0x1401c7bc5], 0
jne 0x14004a9e0
cmp byte [0x1401c7aad], 0
je 0x14004ab0b
mov rax, qword [0x1401c7c48]
lea rdx, [rax + 0xff1fd0]
cmp rdx, 0xffffffffffffffff
je 0x14004aa26
mov rcx, qword [0x1401c7c50]
lea rax, [rbp + 0xd8]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x78]
mov qword [rbp + 0xd8], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rax, qword [0x1401c7c48]
lea rdx, [rax + 0xff1f6c]
cmp rdx, 0xffffffffffffffff
je 0x14004aa5e
mov rcx, qword [0x1401c7c50]
lea rax, [rbp + 0x68]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x48]
mov qword [rbp + 0x68], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rax, qword [0x1401c7c48]
lea rdx, [rax + 0xff1f68]
cmp rdx, 0xffffffffffffffff
je 0x14004aa95
mov rcx, qword [0x1401c7c50]
lea rax, [rbp + 0xe8]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x78]
mov qword [rbp + 0xe8], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, dword [rsp + 0x78]
lea r8, [rsp + 0x70]
sub eax, dword [rbp - 0x48]
mov r9d, 4
mov rcx, qword [0x1401c7c50]
mov dword [rsp + 0x78], eax
mov qword [rbp + 0x128], r13
lea edx, [rax + 0x2b018]
lea edx, [rdx + rdi*4]
add edx, dword [rbp - 0x78]
lea rax, [rbp + 0x128]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov edx, dword [rsp + 0x70]
lea rax, [rbp + 0x120]
mov rcx, qword [0x1401c7c50]
lea r8, [rbp + 0x1b0]
add edx, 8
mov qword [rbp + 0x120], r13
mov r9d, 0x40
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r8d, 5
lea rcx, [rbp + 0x110]
mov edx, ebx
call fcn.14003e8c0
mov rcx, qword [0x1401c7c50]
lea edx, [rbx + 0x948]
mov r9d, 4
mov qword [rbp + 0x120], r13
lea r8, [rsp + 0x50]
movsd xmm7, qword [rax]
mov r14d, dword [rax + 8]
lea rax, [rbp + 0x120]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, dword [rsp + 0x50]
test eax, eax
je 0x14004abba
mov rcx, qword [0x1401c7c50]
lea edx, [rax + 0x60]
lea rax, [rbp + 0x50]
mov qword [rbp + 0x50], r13
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x58]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov eax, dword [rsp + 0x58]
test eax, eax
je 0x14004abba
mov rcx, qword [0x1401c7c50]
lea edx, [rax + 0x50]
lea rax, [rbp + 8]
mov qword [rbp + 8], r13
mov r9d, ntohl
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x90]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdx, qword [0x1401c7c48]
movsd xmm6, qword [rbp + 0x90]
add rdx, 0xffbd30
mov r12d, dword [rbp + 0x98]
movsd qword [rbp + 0xc8], xmm6
mov dword [rbp + 0x128], r12d
cmp rdx, 0xffffffffffffffff
je 0x14004ac16
mov rcx, qword [0x1401c7c50]
lea rax, [rbp]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x48]
mov qword [rbp], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r15d, dword [rsp + 0x48]
test r15d, r15d
je 0x14004acef
mov rcx, qword [0x1401c7c50]
lea rax, [rbp - 8]
lea edx, [r15 + 0xa08]
mov qword [rsp + 0x20], rax
mov r9d, 4
mov qword [rbp - 8], r13
lea r8, [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r15d, dword [rsp + 0x48]
test r15d, r15d
je 0x14004acef
mov rcx, qword [0x1401c7c50]
lea rax, [rbp - 0x30]
lea edx, [r15 + 0x40]
mov qword [rsp + 0x20], rax
mov r9d, 4
mov qword [rbp - 0x30], r13
lea r8, [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r15d, dword [rsp + 0x48]
test r15d, r15d
je 0x14004acef
mov rcx, qword [0x1401c7c50]
lea rax, [rbp - 0x60]
lea edx, [r15 + 0x20]
mov qword [rsp + 0x20], rax
mov r9d, 4
mov qword [rbp - 0x60], r13
lea r8, [rsp + 0x48]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r15d, dword [rsp + 0x48]
test r15d, r15d
je 0x14004acef
mov rcx, qword [0x1401c7c50]
lea rax, [rbp - 0x40]
lea edx, [r15 + 0xe8]
mov qword [rsp + 0x20], rax
mov r9d, ntohl
mov qword [rbp - 0x40], r13
lea r8, [rbp + 0x10]
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov r15d, dword [rsp + 0x48]
mov r9d, dword [0x1401c7c28]
lea rdx, [rbp + 0xf0]
mov r8d, dword [0x1401c7c58]
lea rcx, [rbp + 0xa0]
mov eax, 0x64
movsd qword [rbp + 0xa0], xmm7
cmp esi, 0x64
mov dword [rbp + 0xa8], r14d
mov edi, esi
cmovge edi, eax
call fcn.14003e540
test al, al
je 0x14004b7ff
mov r9d, dword [0x1401c7c28]
lea rdx, [rbp + 0x100]
mov r8d, dword [0x1401c7c58]
lea rcx, [rbp + 0xb0]
movsd qword [rbp + 0xb0], xmm6
mov dword [rbp + 0xb8], r12d
call fcn.14003e540
test al, al
je 0x14004b7ff
cmp byte [reloc.WS2_32.dll_accept], 0
lea r14, [0x1401c66d0]
je 0x14004ad86
mov rdx, r14
mov ecx, ebx
call fcn.14003eac0
cmp byte [0x1401c7abf], 0
movss xmm7, dword [rbp + 0xf4]
movss xmm9, dword [rbp + 0xf0]
movss xmm6, dword [rbp + 0x104]
je 0x14004ae81
movaps xmm0, xmm7
subss xmm0, xmm6
comiss xmm12, xmm0
jbe 0x14004adbe
mulss xmm0, xmm14
mov ecx, dword [0x1401c6890]
xorps xmm1, xmm1
cvttss2si r9d, xmm0
xorps xmm0, xmm0
cvtsi2sd xmm0, rcx
mov ecx, dword [0x1401c6894]
mov eax, r9d
cdq
sub eax, edx
sar eax, 1
cvtsi2sd xmm1, rcx
mov ecx, dword [0x1401c6898]
mov r8d, eax
mov eax, dword [0x1401c689c]
divsd xmm0, qword [0x1400d0e28]
divsd xmm1, qword [0x1400d0e20]
cvtpd2ps xmm0, xmm0
movss dword [rbp + 0x20], xmm0
cvtpd2ps xmm0, xmm1
xorps xmm1, xmm1
cvtsi2sd xmm1, rcx
lea rcx, [rbp + 0x20]
movss dword [rbp + 0x24], xmm0
divsd xmm1, qword [0x1400d0e00]
cvtpd2ps xmm0, xmm1
xorps xmm1, xmm1
cvtsi2sd xmm1, rax
movss dword [rbp + 0x28], xmm0
divsd xmm1, qword [0x1400d0e28]
cvtpd2ps xmm0, xmm1
movss dword [rbp + 0x2c], xmm0
call fcn.1400036f0
mov dword [rbp + 0x120], eax
mov eax, r8d
cdq
sub eax, edx
sar eax, 1
cvttss2si ecx, xmm9
cvttss2si r10d, xmm7
sub ecx, eax
lea rax, [rbp + 0x120]
mov qword [rsp + 0x20], rax
mov edx, r10d
call fcn.14003d870
cmp byte [0x1401c7bc7], 0
je 0x14004aead
mov eax, dword [0x1401c7c58]
cdq
mov qword [rsp + 0x20], r14
sub eax, edx
xor edx, edx
sar eax, 1
cvttss2si r9d, xmm7
mov ecx, eax
cvttss2si r8d, xmm9
call fcn.14003d770
movaps xmm0, xmm7
subss xmm0, xmm6
comiss xmm12, xmm0
jbe 0x14004aebf
mulss xmm0, xmm14
cvttss2si eax, xmm0
cvttss2si ebx, xmm9
test eax, eax
jns 0x14004aece
inc eax
sar eax, 1
cmp byte [0x1401c7aaa], 0
cvttss2si r13d, xmm7
lea r12d, [rax + rbx]
je 0x14004afb7
test di, di
je 0x14004afb7
movaps xmm0, xmm7
subss xmm0, xmm6
comiss xmm12, xmm0
jbe 0x14004af01
mulss xmm0, xmm14
cvttss2si r9d, xmm0
subss xmm6, xmm7
mov eax, r9d
cdq
and edx, 3
add eax, edx
sar eax, 2
sub ebx, eax
movzx eax, di
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, xmm6
divss xmm0, dword [0x1400d0ea4]
cvttss2si r14, xmm0
cmp di, 0x4b
ja 0x14004af51
cmp di, 0x28
jbe 0x14004af48
movups xmm0, xmmword [0x1401c67c0]
jmp 0x14004af58
movups xmm0, xmmword [0x1401c66d0]
jmp 0x14004af58
movups xmm0, xmmword [0x1401c6710]
lea rax, [0x1401c6870]
add r9d, 2
lea edx, [r13 - 1]
mov qword [rsp + 0x20], rax
lea ecx, [rbx - 6]
mov r8d, 5
movups xmmword [rbp - 0x40], xmm0
call fcn.14003dfe0
mov eax, r14d
lea ecx, [rbx - 5]
xorps xmm0, xmm0
movd xmm1, r13d
cvtdq2ps xmm1, xmm1
mov r9d, r14d
mov r8d, 3
cvtsi2ss xmm0, rax
lea rax, [rbp - 0x40]
mov qword [rsp + 0x20], rax
subss xmm6, xmm0
addss xmm6, xmm1
cvttss2si edx, xmm6
call fcn.14003dfe0
cmp byte [0x1401c7bc5], 0
mov ebx, esi
je 0x14004b21a
movaps xmm8, xmm9
mov dword [rbp + 0x30], 9
subss xmm8, dword [0x1400d0ea0]
movaps xmm6, xmm7
mov dword [rbp + 0x34], 9
subss xmm6, dword [0x1400d0e98]
lea rax, [rbp + 0x30]
mov dword [rbp + 0x38], 9
mov r9d, reloc.WLDAP32.dll_Ordinal_26
mov dword [rbp + 0x3c], 0xff
cvttss2si r14d, xmm8
mov r8d, 0x9b
mov dword [rbp + 0x40], Ordinal_33
mov dword [rbp + 0x44], Ordinal_60
mov dword [rbp + 0x48], Ordinal_60
mov dword [rbp + 0x4c], 0xff
mov qword [rsp + 0x20], rax
cvttss2si ebx, xmm6
mov ecx, r14d
mov edx, ebx
call fcn.14003dfe0
lea rax, [rbp + 0x40]
mov r9d, Ordinal_30
mov r8d, reloc.WLDAP32.dll_Ordinal_30
mov qword [rsp + 0x20], rax
mov edx, ebx
mov ecx, r14d
call fcn.14003dfe0
cmp word [0x1400d0766], 0
mov ebx, esi
mov rax, qword [0x1400d0760]
mov qword [rbp + 0x120], rax
je 0x14004b135
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14004b0f5
movdqa xmm2, xmm10
movdqa xmm0, xmm10
punpckldq xmm2, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm2, xmm13
pmuldq xmm0, xmm13
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm10
psrad xmm2, 4
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
pmulld xmm1, xmm15
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp + 0x120]
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmmword [0x1400d1030]
xorps xmm2, xmm0
movq qword [rbp + 0x120], xmm2
jmp 0x14004b135
lea r9, [rbp + 0x120]
xor r8d, r8d
nop
mov eax, 0x5397829d
lea r9, [r9 + 2]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x31
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x38
xor word [r9 - 2], ax
cmp r8d, 4
jl 0x14004b100
lea r9, [rbp + 0x1b0]
mov edx, reloc.WLDAP32.dll_Ordinal_32
lea r8, [rbp + 0x120]
lea rcx, [rbp + 0x1f0]
call fcn.140039b30
addss xmm8, dword [0x1400d0e84]
movaps xmm0, xmm6
mov dword [rbp - 0x70], 0xc9
addss xmm0, dword [0x1400d0e34]
lea rax, [rbp + 0x1f0]
mov dword [rbp - 0x6c], reloc.WS2_32.dll_recv
mov qword [rsp + 0x30], rax
lea r9, [rbp - 0x70]
cvttss2si edx, xmm8
mov byte [rsp + 0x28], 0
mov dword [rbp - 0x68], reloc.WS2_32.dll_recv
mov dword [rbp - 0x64], 0xff
mov byte [rsp + 0x20], 0
cvttss2si r8d, xmm0
movaps xmm0, xmm11
movd ecx, xmm0
call fcn.14003ce50
movss xmm8, dword [0x1400d0e74]
lea rcx, [0x1401c66f0]
cmp edi, 0x32
addss xmm6, xmm8
mov eax, edi
lea rsi, [0x1401c6710]
cmovge rcx, rsi
lea r9, [0x1401c66d0]
cdq
cmp edi, 0x14
cmovge r9, rcx
sub eax, edx
sar eax, 1
mov ecx, r14d
mov qword [rsp + 0x20], r9
mov r9d, 6
cvttss2si edx, xmm6
movd xmm0, eax
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x1400d0df8]
cvttss2si r8d, xmm0
call fcn.14003dfe0
jmp 0x14004b221
lea rsi, [0x1401c6710]
cmp byte [0x1401c7abc], 0
je 0x14004b3c3
cmp byte [0x1400d0bff], 0
mov rax, qword [0x1400d0bf8]
mov qword [rbp + 0x120], rax
je 0x14004b381
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14004b339
movdqa xmm2, xmmword [0x1400d1000]
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
movdqa xmm0, xmm10
pmuldq xmm1, xmm13
punpckhdq xmm0, xmm10
pmuldq xmm0, xmm13
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm10
pmulld xmm0, xmm15
psubd xmm1, xmm0
movd xmm0, dword [rbp + 0x120]
andps xmm1, xmmword [0x1400d1020]
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x1400d1080]
xorps xmm1, xmm0
movdqa xmm0, xmm2
movd dword [rbp + 0x120], xmm1
movdqa xmm1, xmm2
punpckldq xmm1, xmm2
pmuldq xmm1, xmm13
punpckhdq xmm0, xmm2
pmuldq xmm0, xmm13
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movdqa xmm1, xmm2
pmulld xmm0, xmm15
psubd xmm1, xmm0
movd xmm0, dword [rbp + 0x124]
andps xmm1, xmmword [0x1400d1020]
packuswb xmm1, xmm1
packuswb xmm1, xmm1
paddb xmm1, xmmword [0x1400d1080]
xorps xmm1, xmm0
movd dword [rbp + 0x124], xmm1
jmp 0x14004b381
lea r9, [rbp + 0x120]
xor r8d, r8d
nop dword [rax]
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x38
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x14004b350
mov r8d, ebx
lea rdx, [rbp + 0x120]
lea rcx, [rbp + 0x170]
call fcn.14004f440
movaps xmm0, xmm11
lea rax, [rbp + 0x170]
mov qword [rsp + 0x30], rax
mov r9, rsi
movd ecx, xmm0
mov r8d, r13d
mov byte [rsp + 0x28], 0
mov edx, r12d
mov byte [rsp + 0x20], 0
call fcn.14003c5e0
cmp byte [0x1401c7aad], 0
je 0x14004b50a
cmp word [0x1400d0766], 0
mov rax, qword [0x1400d0760]
subss xmm9, dword [0x1400d0e88]
subss xmm7, dword [0x1400d0e50]
mov qword [rbp + 0x120], rax
je 0x14004b4b6
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14004b477
movdqa xmm2, xmm10
movdqa xmm0, xmm10
punpckldq xmm2, xmm10
punpckhdq xmm0, xmm10
pmuldq xmm2, xmm13
pmuldq xmm0, xmm13
shufps xmm2, xmm0, 0xdd
movdqa xmm0, xmm10
psrad xmm2, 4
movdqa xmm1, xmm2
psrld xmm1, 0x1f
paddd xmm1, xmm2
pmulld xmm1, xmm15
psubd xmm0, xmm1
pshufhw xmm0, xmm0, 0xd8
pshuflw xmm1, xmm0, 0xd8
movq xmm0, qword [rbp + 0x120]
pshufd xmm2, xmm1, 0xd8
paddw xmm2, xmmword [0x1400d1030]
xorps xmm2, xmm0
movq qword [rbp + 0x120], xmm2
jmp 0x14004b4b6
lea r9, [rbp + 0x120]
xor r8d, r8d
mov eax, 0x5397829d
lea r9, [r9 + 2]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movzx eax, dx
imul ecx, eax, 0x31
movzx eax, r8w
inc r8d
sub ax, cx
add ax, 0x38
xor word [r9 - 2], ax
cmp r8d, 4
jl 0x14004b481
lea r9, [rbp + 0x1b0]
mov edx, reloc.WLDAP32.dll_Ordinal_32
lea r8, [rbp + 0x120]
lea rcx, [rbp + 0x230]
call fcn.140039b30
addss xmm7, xmm8
movaps xmm0, xmm11
lea rax, [rbp + 0x230]
movd ecx, xmm0
mov qword [rsp + 0x30], rax
mov r9, rsi
cvttss2si edx, xmm9
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
cvttss2si r8d, xmm7
call fcn.14003ce50
cmp byte [0x1401c7aba], 0
je 0x14004b72b
movss xmm2, dword [rbp + 0x10]
xorps xmm0, xmm0
movss xmm3, dword [rbp + 0x14]
subss xmm3, dword [rbp + 0xcc]
subss xmm2, dword [rbp + 0xc8]
movss xmm1, dword [rbp + 0x18]
subss xmm1, dword [rbp + 0x128]
mulss xmm3, xmm3
mulss xmm2, xmm2
mulss xmm1, xmm1
addss xmm3, xmm2
addss xmm3, xmm1
ucomiss xmm0, xmm3
ja 0x14004b563
xorps xmm4, xmm4
sqrtss xmm4, xmm3
jmp 0x14004b56e
movaps xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm4, xmm0
cmp byte [0x1400d081f], 0
mov rax, qword [0x1400d0818]
mov qword [rbp + 0x128], rax
je 0x14004b6c1
cmp dword [reloc.WS2_32.dll_accept], 2
jl 0x14004b67b
mov eax, dword [0x1400d1080]
movdqa xmm1, xmm10
punpckldq xmm1, xmm10
movdqa xmm0, xmm10
punpckhdq xmm0, xmm10
movdqa xmm2, xmm10
pmuldq xmm0, xmm13
pmuldq xmm1, xmm13
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rbp + 0x128]
pmulld xmm0, xmm15
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmmword [0x1400d1020]
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp + 0x128], xmm2
movdqa xmm2, xmmword [0x1400d1000]
movdqa xmm1, xmm2
movdqa xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm13
pmuldq xmm1, xmm13
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movdqa xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
movd xmm1, dword [rbp + 0x12c]
pmulld xmm0, xmm15
psubd xmm2, xmm0
movd xmm0, eax
andps xmm2, xmmword [0x1400d1020]
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
xorps xmm2, xmm1
movd dword [rbp + 0x12c], xmm2
jmp 0x14004b6c1
lea r9, [rbp + 0x128]
xor r8d, r8d
nop word [rax + rax]
mov eax, 0x5397829d
lea r9, [r9 + 1]
imul r8d
sar edx, 4
mov eax, edx
shr eax, 0x1f
add edx, eax
movsx eax, dl
imul ecx, eax, 0x31
movzx eax, r8b
inc r8d
sub al, cl
add al, 0x38
xor byte [r9 - 1], al
cmp r8d, 8
jl 0x14004b690
xorps xmm2, xmm2
lea rdx, [rbp + 0x128]
cvtss2sd xmm2, xmm4
lea rcx, [rbp + 0x190]
movq r8, xmm2
call fcn.140039bf0
cmp byte [0x1401c7abc], 0
movd xmm0, r13d
cvtdq2ps xmm0, xmm0
je 0x14004b6f9
addss xmm0, dword [0x1400d0e60]
cvttss2si r8d, xmm0
lea rax, [rbp + 0x190]
mov edx, r12d
mov qword [rsp + 0x30], rax
lea r9, [0x1401c66f0]
mov byte [rsp + 0x28], 0
mov byte [rsp + 0x20], 0
movaps xmm0, xmm11
movd ecx, xmm0
call fcn.14003c5e0
xor r13d, r13d
cmp byte [0x1401c7aac], r13b
je 0x14004b7ff
cmp byte [reloc.WS2_32.dll_accept], r13b
jne 0x14004b7ff
mov rdx, qword [0x1401c7c48]
add rdx, 0xff1f94
cmp rdx, 0xffffffffffffffff
je 0x14004b781
mov rcx, qword [0x1401c7c50]
lea rax, [rbp - 0x58]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x60]
mov qword [rbp - 0x58], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov edx, dword [rsp + 0x60]
test edx, edx
je 0x14004b7ff
mov eax, dword [0x1401c7c24]
lea r8, [rsp + 0x40]
mov ecx, dword [rsp + 0x68]
mov r9d, 1
mov qword [rbp - 0x80], r13
lea ecx, [rax + rcx*8]
add edx, ecx
lea rax, [rbp - 0x80]
mov rcx, qword [0x1401c7c50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
cmp byte [rsp + 0x40], 1
jne 0x14004b7ff
xor r9d, r9d
mov qword [rsp + 0x20], r13
xor r8d, r8d
xor edx, edx
mov ecx, 2
call qword [sym.imp.USER32.dll_mouse_event]
mov ecx, 1
call qword [sym.imp.KERNEL32.dll_Sleep]
xor r9d, r9d
mov qword [rsp + 0x20], r13
xor r8d, r8d
xor edx, edx
mov ecx, 4
call qword [sym.imp.USER32.dll_mouse_event]
mov eax, dword [rsp + 0x68]
inc eax
mov dword [rsp + 0x68], eax
mov edi, eax
cmp eax, 0xf
jle 0x14004a7b0
movaps xmm15, xmmword [rsp + 0x3c0]
lea r15, [0x1401c66d0]
movaps xmm14, xmmword [rsp + 0x3d0]
movaps xmm13, xmmword [rsp + 0x3e0]
mov r12, qword [rsp + 0x468]
cmp byte [reloc.WS2_32.dll_accept], 0
mov rsi, qword [0x1401c7ab0]
je 0x14004b937
movss xmm1, dword [rsi + 0x10]
lea rcx, [rbp - 0x70]
movss xmm2, dword [rsi + 0x14]
lea rdi, [rsi + 0x1cc8]
mulss xmm1, dword [0x1400d0d80]
mov dword [rbp - 0x70], 0x3f800000
mulss xmm2, dword [0x1400d0d80]
mov dword [rbp - 0x6c], 0x3f800000
movss xmm0, dword [rsi + 0x1550]
movss dword [rbp + 0x128], xmm1
movss dword [rbp + 0x12c], xmm2
movss dword [rbp - 0x64], xmm0
mov dword [rbp - 0x68], 0x3f800000
call fcn.1400036f0
mov r14d, eax
test eax, 0xff000000
je 0x14004b937
movss xmm0, dword [0x1400d0e38]
lea rdx, [rbp + 0x128]
movss xmm2, dword [0x1400d0df4]
movaps xmm3, xmm12
mov dword [rsp + 0x28], ntohl
mov rcx, rdi
movss dword [rsp + 0x20], xmm0
call fcn.14001e9c0
mov r8d, dword [rdi + 0x80]
mov r9d, r14d
mov rdx, qword [rdi + 0x88]
mov rcx, rdi
call fcn.14001e190
mov ecx, dword [rdi + 0x84]
test ecx, ecx
jns 0x14004b929
mov eax, ecx
cdq
sub eax, edx
mov edx, r13d
sar eax, 1
add eax, ecx
lea rcx, [rdi + 0x80]
test eax, eax
cmovg edx, eax
call fcn.140014270
mov rsi, qword [0x1401c7ab0]
mov dword [rdi + 0x80], r13d
cmp byte [reloc.WS2_32.dll_accept], 0
movaps xmm12, xmmword [rsp + 0x3f0]
mov r14, qword [rsp + 0x460]
je 0x14004ba95
movss xmm0, dword [0x1401c6cd4]
lea rdi, [rbp + 0x134]
mov eax, dword [0x1401c7c28]
movaps xmm11, xmm0
divss xmm11, dword [0x1400d0eb4]
cdq
mov qword [rbp + 0x130], 0
sub eax, edx
mov qword [rbp + 0x138], 0
mov ebx, r13d
sar eax, 1
mov qword [rbp + 0x140], 0
mov qword [rbp + 0x148], 0
mov qword [rbp + 0x150], 0
mov qword [rbp + 0x158], 0
mov qword [rbp + 0x160], 0
mov qword [rbp + 0x168], 0
movss xmm10, dword [0x1400d0d9c]
movd xmm9, eax
mov eax, dword [0x1401c7c58]
cdq
cvttss2si r8d, xmm0
sub eax, edx
sar eax, 1
movd xmm8, eax
cvtdq2ps xmm8, xmm8
movd xmm7, r8d
cvtdq2ps xmm7, xmm7
cvtdq2ps xmm9, xmm9
nop word [rax + rax]
movd xmm6, ebx
cvtdq2ps xmm6, xmm6
mulss xmm6, xmm10
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
mulss xmm0, xmm7
addss xmm0, xmm8
movss dword [rdi - 4], xmm0
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
mulss xmm0, xmm7
inc ebx
addss xmm0, xmm9
movss dword [rdi], xmm0
add rdi, 8
cmp ebx, 8
jl 0x14004ba10
movups xmm0, xmmword [0x1400e11a0]
lea rcx, [rbp - 0x70]
movups xmmword [rbp - 0x70], xmm0
call fcn.1400036f0
movss dword [rsp + 0x28], xmm11
lea rdx, [rbp + 0x130]
mov r9d, eax
mov byte [rsp + 0x20], 1
lea rcx, [rsi + 0x1cc8]
mov r8d, 8
call fcn.14001d270
mov rsi, qword [0x1401c7ab0]
cmp dword [rbp - 0x4c], 0
movaps xmm11, xmmword [rsp + 0x400]
movaps xmm10, xmmword [rsp + 0x410]
movaps xmm9, xmmword [rsp + 0x420]
movaps xmm8, xmmword [rsp + 0x430]
movaps xmm7, xmmword [rsp + 0x440]
movaps xmm6, xmmword [rsp + 0x450]
je 0x14004befd
cmp byte [reloc.WS2_32.dll_accept], 0
je 0x14004bb0e
movss xmm2, dword [rsi + 0x3b4]
lea rdx, str.FPS:__0.f
cvtps2pd xmm2, xmm2
lea rcx, [rbp + 0x270]
movq r8, xmm2
call fcn.140039bf0
lea r9, [rbp + 0x270]
mov r8, r15
call fcn.14003c1e0
mov edx, dword [0x1400cef70]
add rdx, qword [0x1401c7c48]
cmp rdx, 0xffffffffffffffff
je 0x14004bb46
mov rcx, qword [0x1401c7c50]
lea rax, [rbp - 0x40]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x68]
mov qword [rbp - 0x40], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov edx, dword [0x1400cef78]
add rdx, qword [0x1401c7c48]
cmp rdx, 0xffffffffffffffff
je 0x14004bb80
mov rcx, qword [0x1401c7c50]
lea rax, [rbp - 0x60]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp + 0x128]
mov qword [rbp - 0x60], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov edx, dword [0x1400cef74]
add rdx, qword [0x1401c7c48]
cmp rdx, 0xffffffffffffffff
je 0x14004bbb8
mov rcx, qword [0x1401c7c50]
lea rax, [rbp - 0x30]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x78]
mov qword [rbp - 0x30], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov ecx, dword [rsp + 0x68]
lea rax, [rbp - 8]
sub ecx, dword [rbp + 0x128]
lea r8, [rbp + 0x120]
mov edx, dword [rsp + 0x78]
mov r9d, 4
add edx, 0x29d60
mov dword [rsp + 0x68], ecx
add edx, ecx
mov qword [rbp - 8], r13
mov rcx, qword [0x1401c7c50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
imul ebx, dword [rbp + 0x120], 0x4c
mov r9d, 4
mov rcx, qword [0x1401c7c50]
add ebx, dword [0x1401c7c20]
add ebx, dword [rsp + 0x78]
add ebx, dword [rsp + 0x68]
cmp byte [0x1401c7ab9], 0
lea edx, [rbx + 0x30]
je 0x14004bc3a
mov dword [rsp + 0x58], 0x4e7e0003
lea rax, [rbp]
lea r8, [rsp + 0x58]
jmp 0x14004bc4b
mov dword [rsp + 0x50], 0xb7a7c5ac
lea rax, [rbp + 8]
lea r8, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1401c7aaf], 0
lea edx, [rbx + 0x20]
mov rcx, qword [0x1401c7c50]
mov r9d, 4
je 0x14004bc82
mov dword [rsp + 0x60], 0x4e8a99c4
lea rax, [rbp - 0x80]
lea r8, [rsp + 0x60]
jmp 0x14004bc93
mov dword [rsp + 0x70], 0
lea rax, [rbp - 0x58]
lea r8, [rsp + 0x70]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1401c7bc4], 0
lea edx, [rbx + 0x18]
mov rcx, qword [0x1401c7c50]
mov r9d, 4
je 0x14004bcca
mov dword [rsp + 0x58], 0x4e8a99c4
lea rax, [rbp - 0x40]
lea r8, [rsp + 0x58]
jmp 0x14004bcdb
mov dword [rsp + 0x50], 0
lea rax, [rbp - 0x60]
lea r8, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1401c7aab], 0
lea edi, [rbx + 0x24]
mov rcx, qword [0x1401c7c50]
mov edx, edi
mov r9d, 4
je 0x14004bd1a
movss xmm0, dword [0x1401c6cd0]
lea rax, [rbp - 0x80]
movss dword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
jmp 0x14004bd2b
mov dword [rsp + 0x70], 0xb7a7c5ac
lea rax, [rbp - 0x58]
lea r8, [rsp + 0x70]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1401c7aab], 0
mov r9d, 4
mov rcx, qword [0x1401c7c50]
mov rdx, rdi
je 0x14004bd62
mov dword [rsp + 0x58], 0x4e7a56ea
lea rax, [rbp - 0x40]
lea r8, [rsp + 0x58]
jmp 0x14004bd73
mov dword [rsp + 0x50], 0xb7a7c5ac
lea rax, [rbp - 0x60]
lea r8, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1401c7ab8], 0
lea edx, [rbx + 0xc]
mov rcx, qword [0x1401c7c50]
mov r9d, 4
je 0x14004bdb0
movss xmm0, dword [0x1401c6ca8]
lea rax, [rbp - 0x80]
movss dword [rsp + 0x60], xmm0
lea r8, [rsp + 0x60]
jmp 0x14004bdc1
mov dword [rsp + 0x70], 0xb7a7c5ac
lea rax, [rbp - 0x58]
lea r8, [rsp + 0x70]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1401c7abe], 0
lea edx, [rbx + 0x10]
mov rcx, qword [0x1401c7c50]
mov r9d, 4
je 0x14004bdfe
movss xmm0, dword [0x1401c6c3c]
lea rax, [rbp - 0x40]
movss dword [rsp + 0x58], xmm0
lea r8, [rsp + 0x58]
jmp 0x14004be0f
mov dword [rsp + 0x50], 0
lea rax, [rbp - 0x60]
lea r8, [rsp + 0x50]
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
cmp byte [0x1401c7aa9], 0
je 0x14004be98
mov rdx, qword [0x1401c7c48]
add rdx, 0xff2308
cmp rdx, 0xffffffffffffffff
je 0x14004be5c
mov rcx, qword [0x1401c7c50]
lea rax, [rbp - 0x80]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rsp + 0x60]
mov qword [rbp - 0x80], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov ecx, 0x79
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x14004be98
mov edx, dword [rsp + 0x60]
lea rax, [rbp - 0x30]
mov rcx, qword [0x1401c7c50]
lea r8, [rsp + 0x40]
add edx, 0x3c
mov byte [rsp + 0x40], 4
mov r9d, 1
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_WriteProcessMemory]
mov rdx, qword [0x1401c7c48]
add rdx, 0xfda12c
cmp rdx, 0xffffffffffffffff
je 0x14004bed0
mov rcx, qword [0x1401c7c50]
lea rax, [rbp - 0x80]
mov r9d, 4
mov qword [rsp + 0x20], rax
lea r8, [rbp - 0x78]
mov qword [rbp - 0x80], r13
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov edx, dword [rbp - 0x78]
lea rax, [rbp - 0x58]
mov rcx, qword [0x1401c7c50]
lea r8, [rbp - 0x48]
add edx, 0x1d4
mov qword [rbp - 0x58], r13
mov r9d, 4
mov qword [rsp + 0x20], rax
call qword [sym.imp.KERNEL32.dll_ReadProcessMemory]
mov rdi, qword [rsp + 0x4a0]
mov rsi, qword [rsp + 0x498]
mov rbx, qword [rsp + 0x490]
mov rcx, qword [rbp + 0x2b0]
xor rcx, rsp
call fcn.1400ae470
add rsp, 0x470
pop r15
pop r13
pop rbp
ret