Function at 0x1800ea550
Capabilities:
Log keystrokes via polling

Disassembly:
push rbp
push rdi
push r12
lea rbp, [rsp - 0x47]
sub rsp, 0xe0
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
movabs rdi, 0xd80958fc74e988a6
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
movabs r12, 0x997abd671d25ca0b
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, r12
call fcn.18006aef0
test eax, eax
je 0x1800eb792
cmp byte [0x18025cf6d], 0
mov qword [rsp + 0x108], rbx
mov qword [rsp + 0x110], rsi
mov qword [rsp + 0x118], r13
mov qword [rsp + 0xd8], r14
mov qword [rsp + 0xd0], r15
movaps xmmword [rsp + 0xc0], xmm6
movaps xmmword [rsp + 0xb0], xmm7
je 0x1800ea60d
mov ecx, reloc.WS2_32.dll_WSAStartup
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x1800ea60d
cmp byte [0x18025cee0], 0
sete byte [0x18025cee0]
cmp byte [0x18025cf6f], 0
je 0x1800ea62a
mov ecx, WSAStartup
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x1800ea62a
call fcn.1800ea340
call fcn.1800e7100
movss xmm6, dword [0x1801e5660]
xor r14d, r14d
cmp byte [0x18025cee0], r14b
xorps xmm7, xmm7
movabs rsi, 0x9a9112a0fe9a4713
movabs r13, 0x6094ad011a2ea87d
je 0x1800ea77b
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rcx, qword [0x1801e68c8]
mov rax, qword [rcx]
mov ebx, dword [rax]
call fcn.180001db0
mov rdx, qword [0x1801e68c8]
mov qword [rbp + 0x67], r14
mov dword [rbp + 0x67], ebx
mov rax, qword [rbp + 0x67]
mov ecx, dword [rdx + 8]
mov qword [rdx + rcx*8 + 0x130], rax
inc dword [rdx + 8]
mov rdx, r13
mov rcx, qword [0x1801e68c8]
call fcn.180001e60
mov rcx, qword [0x1801e68c8]
mov rax, qword [rcx]
cmp dword [rax], r14d
je 0x1800ea77b
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
xor r8d, r8d
mov edx, eax
movabs rcx, 0x89f149b6131e57da
mov ebx, eax
call fcn.18006aef0
movabs rdx, 0x837765a25378f0bb
lea r8d, [r14 + 2]
lea rcx, [rbp - 9]
call fcn.18006bb40
movss xmm3, dword [rbp + 7]
mov ecx, ebx
movss xmm2, dword [rbp - 1]
movss xmm1, dword [rbp - 9]
mov byte [rsp + 0x28], 1
mov dword [rsp + 0x20], 2
call fcn.1800740a0
lea edx, [r14 + 2]
movabs rcx, 0xe2587f8cbbd87b1d
lea r8d, [r14 + 0x57]
call fcn.180069d00
mov edx, ebx
movabs rcx, 0xab54a438726d25d5
test eax, eax
je 0x1800ea773
movaps xmm2, xmm6
jmp 0x1800ea776
xorps xmm2, xmm2
call fcn.18006b770
cmp byte [0x18025cf1d], r14b
movabs r15, 0xafbd61cc738d9eb9
je 0x1800ea939
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov rcx, qword [0x1801e68c8]
mov ebx, eax
call fcn.180001db0
mov r8, qword [0x1801e68c8]
mov qword [rbp + 0x67], r14
mov dword [rbp + 0x67], ebx
mov rcx, qword [rbp + 0x67]
mov edx, dword [r8 + 8]
mov qword [r8 + rdx*8 + 0x130], rcx
movabs rdx, 0x831e0242595560df
inc dword [r8 + 8]
mov rcx, qword [0x1801e68c8]
call fcn.180001e60
mov rcx, qword [0x1801e68c8]
mov rax, qword [rcx]
movss xmm6, dword [rax]
call fcn.180001db0
mov rdx, qword [0x1801e68c8]
mov qword [rbp + 0x67], r14
mov dword [rbp + 0x67], ebx
mov rax, qword [rbp + 0x67]
mov ecx, dword [rdx + 8]
mov qword [rdx + rcx*8 + 0x130], rax
inc dword [rdx + 8]
movabs rdx, 0x1dbd58820fa61d71
mov rcx, qword [0x1801e68c8]
call fcn.180001e60
mov rax, qword [0x1801e68c8]
mov rcx, qword [rax]
cmp dword [rcx], r14d
je 0x1800ea939
comiss xmm6, dword [0x180192d74]
ja 0x1800ea880
movss xmm0, dword [0x180192e38]
comiss xmm0, xmm6
jbe 0x1800ea939
mov ecx, ebx
call fcn.1800742d0
test eax, eax
jne 0x1800ea939
mov ecx, ebx
call fcn.180074260
test eax, eax
jne 0x1800ea939
mov ecx, ebx
call fcn.180069310
test eax, eax
jne 0x1800ea939
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rdx, qword [0x1801e68c8]
mov qword [rbp + 0x67], r14
mov dword [rbp + 0x67], ebx
mov rax, qword [rbp + 0x67]
mov ecx, dword [rdx + 8]
mov qword [rdx + rcx*8 + 0x130], rax
inc dword [rdx + 8]
movabs rdx, 0xdce4334788af94ea
mov rcx, qword [0x1801e68c8]
call fcn.180001e60
mov rax, qword [0x1801e68c8]
mov rcx, qword [rax]
cmp dword [rcx], r14d
jne 0x1800ea939
mov ecx, ebx
call fcn.1800e6570
mov r9d, 2
lea rcx, [rbp - 9]
mov r8d, ebx
mov rdx, r15
call fcn.18006ba90
movss xmm3, dword [rbp + 7]
xorps xmm2, xmm2
xorps xmm1, xmm1
mov byte [rsp + 0x28], 1
mov ecx, ebx
mov dword [rsp + 0x20], 2
call fcn.1800740a0
cmp byte [0x18025cf1c], r14b
movabs rbx, 0xeb9dc3c7d8596c46
movabs r15, 0x1aa8a837d2169d94
je 0x1800eaad9
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov rcx, qword [0x1801e68c8]
mov ebx, eax
call fcn.180001db0
mov rdx, qword [0x1801e68c8]
mov qword [rbp + 0x67], r14
mov dword [rbp + 0x67], ebx
mov rax, qword [rbp + 0x67]
mov ecx, dword [rdx + 8]
mov qword [rdx + rcx*8 + 0x130], rax
inc dword [rdx + 8]
movabs rdx, 0xbcdc5017d3ce1e9e
mov rcx, qword [0x1801e68c8]
call fcn.180001e60
mov rcx, qword [0x1801e68c8]
mov rax, qword [rcx]
cmp dword [rax], r14d
je 0x1800eaa55
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov rcx, qword [0x1801e68c8]
mov ebx, eax
call fcn.180001db0
mov rdx, qword [0x1801e68c8]
mov qword [rbp + 0x67], r14
mov dword [rbp + 0x67], ebx
mov rax, qword [rbp + 0x67]
mov ecx, dword [rdx + 8]
mov qword [rdx + rcx*8 + 0x130], rax
inc dword [rdx + 8]
movabs rdx, 0x115722b1b9c14c1c
mov rcx, qword [0x1801e68c8]
call fcn.180001e60
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov r8d, 1
mov edx, eax
mov rcx, r15
call fcn.180069d00
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
movabs rbx, 0xeb9dc3c7d8596c46
xor r8d, r8d
mov rcx, rbx
mov edx, eax
call fcn.18006aef0
cmp byte [0x18025cf1e], r14b
je 0x1800eab5b
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
mov r8d, 1
mov rcx, qword [rax]
mov edx, dword [rcx]
movabs rcx, 0x7a6535691b477c48
call fcn.180069d00
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r9d, r9d
mov rcx, qword [rax]
lea r8d, [r9 + 0x20]
mov edx, dword [rcx]
movabs rcx, 0x1913fe4cbf41c463
call fcn.18006acf0
cmp byte [0x18025cf19], r14b
je 0x1800eabee
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
mov rcx, qword [0x1801e68c8]
test ax, ax
je 0x1800eabaf
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov r8b, 1
jmp 0x1800eabdd
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
xor r8d, r8d
mov edx, eax
movabs rcx, 0x222ff6a823d122e2
call fcn.18006aef0
cmp byte [0x18025cf21], r14b
je 0x1800eacc2
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov r8d, 1
mov edx, eax
mov rcx, r15
call fcn.180069d00
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
xor r8d, r8d
mov edx, eax
mov rcx, rbx
call fcn.18006aef0
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov r8b, 1
mov edx, eax
movabs rcx, 0x3882114bde571ad4
call fcn.18006aef0
cmp byte [0x18025cef0], r14b
lea r15, [0x180000000]
je 0x1800ead86
cmp byte [0x18025cee3], r14b
je 0x1800ead02
mov rcx, qword [0x18025cee8]
lea r8, str.wheel_rf
mov rdx, qword [r15 + rcx*8 + 0x1e5c18]
mov rcx, qword [r15 + rcx*8 + 0x1e5be8]
call fcn.1800e7390
cmp byte [0x18025cee4], r14b
je 0x1800ead2e
mov rcx, qword [0x18025cee8]
lea r8, str.wheel_lf
mov rdx, qword [r15 + rcx*8 + 0x1e5c18]
mov rcx, qword [r15 + rcx*8 + 0x1e5be8]
call fcn.1800e7390
cmp byte [0x18025cee1], r14b
je 0x1800ead5a
mov rcx, qword [0x18025cee8]
lea r8, str.wheel_rr
mov rdx, qword [r15 + rcx*8 + 0x1e5c18]
mov rcx, qword [r15 + rcx*8 + 0x1e5be8]
call fcn.1800e7390
cmp byte [0x18025cee2], r14b
je 0x1800ead86
mov rcx, qword [0x18025cee8]
lea r8, str.wheel_lr
mov rdx, qword [r15 + rcx*8 + 0x1e5c18]
mov rcx, qword [r15 + rcx*8 + 0x1e5be8]
call fcn.1800e7390
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rcx, qword [0x1801e68c8]
mov rax, qword [rcx]
mov ebx, dword [rax]
call fcn.180001db0
mov rdx, qword [0x1801e68c8]
mov qword [rbp + 0x67], r14
mov dword [rbp + 0x67], ebx
mov rax, qword [rbp + 0x67]
mov ecx, dword [rdx + 8]
mov qword [rdx + rcx*8 + 0x130], rax
inc dword [rdx + 8]
mov rdx, r13
mov rcx, qword [0x1801e68c8]
call fcn.180001e60
mov rax, qword [0x1801e68c8]
movzx r9d, byte [0x18025ced0]
movss xmm2, dword [0x1801e5640]
mov rcx, qword [rax]
mov eax, dword [rcx]
movzx ecx, byte [0x18025ced1]
mov dword [rsp + 0x20], eax
mov rax, qword [0x18025ced8]
mov edx, dword [r15 + rax*4 + 0x1e5bd8]
call fcn.1800e76c0
cmp byte [0x18025cf15], r14b
je 0x1800eae61
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov ecx, eax
mov r9b, 1
call fcn.180069a10
cmp byte [0x18025cf12], r14b
je 0x1800eaf1f
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, r12
call fcn.18006aef0
test eax, eax
je 0x1800eaf1f
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rcx, qword [0x1801e68c8]
mov rax, qword [rcx]
mov ebx, dword [rax]
call fcn.180001db0
mov r8, qword [0x1801e68c8]
mov rdx, r13
mov qword [rbp + 0x67], r14
mov dword [rbp + 0x67], ebx
mov rax, qword [rbp + 0x67]
mov ecx, dword [r8 + 8]
mov qword [r8 + rcx*8 + 0x130], rax
inc dword [r8 + 8]
mov rcx, qword [0x1801e68c8]
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
movabs rcx, 0x49733e92263139d1
call fcn.180069d00
cmp byte [0x18025cf13], r14b
movabs r15, 0xb69317bf5e782347
je 0x1800eb05b
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov rcx, qword [0x1801e68c8]
mov ebx, eax
call fcn.180001db0
mov rdx, qword [0x1801e68c8]
mov qword [rbp + 0x67], r14
mov dword [rbp + 0x67], ebx
mov rax, qword [rbp + 0x67]
mov ecx, dword [rdx + 8]
mov qword [rdx + rcx*8 + 0x130], rax
inc dword [rdx + 8]
mov rdx, r15
mov rcx, qword [0x1801e68c8]
call fcn.180001e60
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
movabs r13, 0xafbd61cc738d9eb9
lea rcx, [rbp - 9]
mov rdx, r13
mov r9d, reloc.WS2_32.dll_sendto
mov r8d, eax
call fcn.18006ba90
movss xmm0, dword [rbp + 7]
mov rcx, qword [0x1801e68c8]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x180192cb0]
cvtpd2ps xmm6, xmm0
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
movaps xmm3, xmm6
mov byte [rsp + 0x28], 1
xorps xmm2, xmm2
mov dword [rsp + 0x20], reloc.WS2_32.dll_sendto
xorps xmm1, xmm1
mov ecx, eax
call fcn.1800740a0
jmp 0x1800eb065
movabs r13, 0xafbd61cc738d9eb9
cmp byte [0x18025cf10], r14b
je 0x1800eb1c5
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, r12
call fcn.18006aef0
test eax, eax
je 0x1800eb1c5
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov rcx, qword [0x1801e68c8]
mov ebx, eax
call fcn.180001db0
mov rdx, qword [0x1801e68c8]
mov qword [rbp + 0x67], r14
mov dword [rbp + 0x67], ebx
mov rax, qword [rbp + 0x67]
mov ecx, dword [rdx + 8]
mov qword [rdx + rcx*8 + 0x130], rax
inc dword [rdx + 8]
mov rdx, r15
mov rcx, qword [0x1801e68c8]
call fcn.180001e60
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov r9d, 2
lea rcx, [rbp - 9]
mov r8d, eax
mov rdx, r13
call fcn.18006ba90
movss xmm0, dword [rbp + 7]
mov rcx, qword [0x1801e68c8]
cvtps2pd xmm0, xmm0
addsd xmm0, qword [0x180192c60]
cvtpd2ps xmm6, xmm0
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
movaps xmm3, xmm6
mov byte [rsp + 0x28], 1
xorps xmm2, xmm2
mov dword [rsp + 0x20], 2
xorps xmm1, xmm1
mov ecx, eax
call fcn.1800740a0
cmp byte [0x18025cf11], r14b
mov r15, qword [rsp + 0xd0]
mov r13, qword [rsp + 0x118]
je 0x1800eb250
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, r12
call fcn.18006aef0
test eax, eax
je 0x1800eb250
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov ecx, eax
mov r9b, 1
call fcn.180069a10
call fcn.1800e8b50
call fcn.1800e9770
cmp byte [0x18025cf1a], r14b
je 0x1800eb268
call fcn.1800e8f10
cmp byte [0x18025cf35], r14b
je 0x1800eb323
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rdx, qword [0x1801e68c8]
mov qword [rbp + 0x67], r14
mov byte [rbp + 0x67], 1
mov rax, qword [rbp + 0x67]
mov ecx, dword [rdx + 8]
mov qword [rdx + rcx*8 + 0x130], rax
inc dword [rdx + 8]
movabs rdx, 0x4cc7f0fea5283fe0
mov rcx, qword [0x1801e68c8]
call fcn.180001e60
cmp byte [0x18025cf34], r14b
je 0x1800eb323
mov edx, dword [0x1801e56f0]
mov ecx, dword [0x18025cf30]
test edx, edx
jle 0x1800eb2ed
test ecx, ecx
jne 0x1800eb2ed
mov eax, dword [0x18025cf2c]
dec edx
inc eax
mov dword [0x1801e56f0], edx
mov dword [0x18025cf2c], eax
jmp 0x1800eb2f3
mov eax, dword [0x18025cf2c]
test eax, eax
jle 0x1800eb30b
test edx, edx
jne 0x1800eb30b
dec eax
inc ecx
mov dword [0x18025cf2c], eax
mov dword [0x18025cf30], ecx
test ecx, ecx
jle 0x1800eb323
test eax, eax
jne 0x1800eb323
inc edx
dec ecx
mov dword [0x1801e56f0], edx
mov dword [0x18025cf30], ecx
mov rcx, qword [0x1801e68c8]
movzx ebx, byte [0x18025cf17]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
movzx r8d, bl
mov edx, eax
movabs rcx, 0x730f5f8d3f0f2050
call fcn.18006aef0
mov rcx, qword [0x1801e68c8]
movzx ebx, byte [reloc.WS2_32.dll_accept]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov r9b, 1
movzx r8d, bl
mov edx, eax
movabs rcx, 0x1a9205c1b9ee827f
call fcn.18006b810
cmp byte [0x18025cf1f], r14b
je 0x1800eb414
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
xor r9d, r9d
xor r8d, r8d
mov edx, eax
movabs rcx, 0xea1c610a04db6bbb
call fcn.18006b810
cmp byte [reloc.WS2_32.dll_accept], r14b
je 0x1800eb468
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
movss xmm2, dword [0x180192de0]
mov edx, eax
movabs rcx, 0xe46a3fcbde2a1b1
call fcn.18006b770
mov rax, qword [0x18025cef8]
test rax, rax
je 0x1800eb58c
sub rax, 1
je 0x1800eb4e1
cmp rax, 1
jne 0x1800eb5ef
xorps xmm0, xmm0
mov dword [rbp - 0x19], 8
lea ecx, [rax + 0xf]
mov dword [rbp - 0x15], 0xd10
movdqu xmmword [rbp - 9], xmm0
mov dword [rbp - 0x11], reloc.WLDAP32.dll_Ordinal_32
mov dword [rbp - 0xd], 0x58b
mov qword [rbp + 7], r14
call fcn.1801381f8
mov r8d, reloc.WS2_32.dll_recv
mov qword [rbp - 9], rax
lea rdx, [rbp - 0x19]
mov qword [rbp - 1], rax
mov rcx, rax
lea rbx, [rax + 0x10]
mov qword [rbp + 7], rbx
call sub.VCRUNTIME140.dll_memmove
mov dl, Ordinal_41
jmp 0x1800eb5e2
xorps xmm0, xmm0
mov dword [rbp - 0x19], 8
mov ecx, reloc.WS2_32.dll_recv
mov dword [rbp - 0x15], 0xd10
movdqu xmmword [rbp - 9], xmm0
mov dword [rbp - 0x11], reloc.WLDAP32.dll_Ordinal_32
mov dword [rbp - 0xd], 0x58b
mov qword [rbp + 7], r14
call fcn.1801381f8
mov r8d, reloc.WS2_32.dll_recv
mov qword [rbp - 9], rax
lea rdx, [rbp - 0x19]
mov qword [rbp - 1], rax
mov rcx, rax
lea rbx, [rax + 0x10]
mov qword [rbp + 7], rbx
call sub.VCRUNTIME140.dll_memmove
mov dl, 0x42
mov qword [rbp - 1], rbx
lea rcx, [rbp - 9]
call fcn.1800eb7a0
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
xorps xmm2, xmm2
mov edx, eax
movabs rcx, 0xe00f2ab100b76e89
call fcn.18006b770
jmp 0x1800eb5ef
xorps xmm0, xmm0
mov dword [rbp - 0x19], 8
mov ecx, reloc.WS2_32.dll_recv
mov dword [rbp - 0x15], 0xd10
movdqu xmmword [rbp - 9], xmm0
mov dword [rbp - 0x11], reloc.WLDAP32.dll_Ordinal_32
mov dword [rbp - 0xd], 0x58b
mov qword [rbp + 7], r14
call fcn.1801381f8
mov r8d, reloc.WS2_32.dll_recv
mov qword [rbp - 9], rax
lea rdx, [rbp - 0x19]
mov qword [rbp - 1], rax
mov rcx, rax
lea rbx, [rax + 0x10]
mov qword [rbp + 7], rbx
call sub.VCRUNTIME140.dll_memmove
xor edx, edx
lea rcx, [rbp - 9]
mov qword [rbp - 1], rbx
call fcn.1800eb7a0
cmp qword [0x18025cf00], r14
je 0x1800eb76a
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
xor r8d, r8d
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, rsi
call fcn.18006aef0
mov ebx, eax
mov rax, qword [0x18025cf00]
sub rax, 1
je 0x1800eb6b5
cmp rax, 1
jne 0x1800eb76a
lea ecx, [rax + 0x1f]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800eb76a
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
mov r8b, 1
mov rcx, r12
mov rdx, qword [rax]
mov edx, dword [rdx]
call fcn.18006aef0
test eax, eax
je 0x1800eb76a
mov ecx, ebx
call fcn.1800ebaf0
movaps xmm6, xmm0
mov ecx, ebx
addss xmm6, xmm7
call fcn.1800eba80
movaps xmm3, xmm0
movss xmm0, dword [0x180192b14]
jmp 0x1800eb71e
mov ecx, reloc.WLDAP32.dll_Ordinal_32
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x1800eb76a
mov rcx, qword [0x1801e68c8]
call fcn.180001db0
mov rcx, qword [0x1801e68c8]
mov rdx, rdi
call fcn.180001e60
mov rax, qword [0x1801e68c8]
mov r8b, 1
mov rcx, qword [rax]
mov edx, dword [rcx]
mov rcx, r12
call fcn.18006aef0
test eax, eax
je 0x1800eb76a
mov ecx, ebx
call fcn.1800ebaf0
movaps xmm6, xmm0
mov ecx, ebx
addss xmm6, xmm7
call fcn.1800eba80
movaps xmm3, xmm0
movss xmm0, dword [0x180192d10]
mov dword [rsp + 0x70], 1
addss xmm3, xmm7
mov dword [rsp + 0x68], 1
mov r8d, 1
mov dword [rsp + 0x50], r14d
mov edx, ebx
mov dword [rsp + 0x48], 1
movss dword [rsp + 0x40], xmm7
movss dword [rsp + 0x38], xmm7
movss dword [rsp + 0x30], xmm7
movss dword [rsp + 0x28], xmm0
movss dword [rsp + 0x20], xmm6
call fcn.180069070
movaps xmm6, xmmword [rsp + 0xc0]
mov r14, qword [rsp + 0xd8]
mov rsi, qword [rsp + 0x110]
mov rbx, qword [rsp + 0x108]
movaps xmm7, xmmword [rsp + 0xb0]
add rsp, 0xe0
pop r12
pop rdi
pop rbp
ret