Function at 0x1800e8530
Capabilities:
Encode data using xor
Log keystrokes via polling

Disassembly:
mov r11, rsp
push rbp
lea rbp, [r11 - 0x328]
sub rsp, 0x420
mov rax, qword [0x180249a80]
xor rax, rsp
mov qword [rbp + 0x250], rax
cmp qword [0x18024b0a0], 0
je 0x1800ea6f4
mov rax, qword [0x1802492b0]
cmp dword [rax], 6
je 0x1800ea6f4
mov qword [r11 + 0x18], rdi
mov qword [r11 - 0x10], r12
mov qword [r11 - 0x18], r13
lea r13, [0x18024b4e0]
mov qword [r11 - 0x20], r14
xor r14d, r14d
cmp byte [0x180248f75], r14b
mov qword [r11 - 0x28], r15
movaps xmmword [r11 - 0xa8], xmm13
movss xmm13, dword [0x1801ad848]
movaps xmmword [r11 - 0xb8], xmm14
xorps xmm14, xmm14
movaps xmmword [r11 - 0xc8], xmm15
movss xmm15, dword [0x1801c6dd4]
mov qword [r11 + 8], rbx
movaps xmmword [r11 - 0x38], xmm6
movaps xmmword [r11 - 0x48], xmm7
movaps xmmword [r11 - 0x58], xmm8
movaps xmmword [r11 - 0x68], xmm9
movaps xmmword [r11 - 0x78], xmm10
je 0x1800e8972
mov ecx, dword [reloc.WS2_32.dll_bind]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
cmp byte [0x180248fa4], r14b
movzx edx, ax
je 0x1800e8614
mov rcx, qword [0x18024b0b0]
movsd xmm0, qword [rcx + 0x60]
mov ecx, dword [rcx + 0x68]
mov dword [rsp + 0x48], ecx
jmp 0x1800e862d
mov rax, qword [0x18024b0a0]
movsd xmm0, qword [rax + 0x90]
mov eax, dword [rax + 0x98]
mov dword [rsp + 0x48], eax
movsd qword [rsp + 0x40], xmm0
test dx, dx
je 0x1800e88be
cmp byte [0x18024db6c], r14b
movss xmm10, dword [rsp + 0x48]
movaps xmmword [rsp + 0x3a0], xmm11
movss xmm11, dword [rsp + 0x44]
movaps xmmword [rsp + 0x390], xmm12
movss xmm12, dword [rsp + 0x40]
jne 0x1800e870b
mov ebx, r14d
mov rcx, r13
call fcn.1800b0850
mov qword [0x18024db70], rax
mov rdi, rax
test rax, rax
je 0x1800e8712
movsd xmm1, qword [rax + 0x90]
movaps xmm3, xmm12
subss xmm3, xmm1
movsd qword [rsp + 0x70], xmm1
movaps xmm0, xmm1
movaps xmm2, xmm11
shufps xmm0, xmm0, 0x55
movaps xmm1, xmm10
subss xmm1, dword [rax + 0x98]
subss xmm2, xmm0
xorps xmm0, xmm0
mulss xmm3, xmm3
mulss xmm1, xmm1
mulss xmm2, xmm2
addss xmm3, xmm2
addss xmm3, xmm1
ucomiss xmm0, xmm3
ja 0x1800e86e4
xorps xmm0, xmm0
sqrtss xmm0, xmm3
jmp 0x1800e86ec
movaps xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
comiss xmm0, xmm13
jae 0x1800e86ff
inc ebx
cmp ebx, 0xa
jl 0x1800e8673
jmp 0x1800e8712
mov qword [0x18024db70], r14
jmp 0x1800e88a0
mov rdi, qword [0x18024db70]
test rdi, rdi
je 0x1800e88a0
movss xmm0, dword [0x18024b4e0]
comiss xmm0, xmm14
mov byte [0x180248f78], r14b
movss xmm1, dword [0x1801ad7d4]
jbe 0x1800e8746
movss xmm0, dword [0x1802497b8]
addss xmm0, xmm1
jmp 0x1800e875c
comiss xmm14, xmm0
movss xmm0, dword [0x1802497b8]
jbe 0x1800e8764
addss xmm0, dword [0x1801c6e10]
movss dword [0x1802497b8], xmm0
comiss xmm1, xmm0
jbe 0x1800e8773
mov dword [0x1802497b8], 0x40a00000
cmp byte [0x18024db6c], r14b
jne 0x1800e8794
mov rax, qword [0x1802491f8]
mov rcx, rdi
mov rbx, qword [0x180249410]
call rax
mov rcx, rax
call rbx
mov edx, 2
lea rcx, [rbp + 0x88]
call qword [0x180249210]
movss xmm8, dword [rbp + 0x88]
mulss xmm8, dword [0x1801c6d20]
movss xmm6, dword [rbp + 0x98]
addss xmm6, dword [0x1801c6dc0]
movaps xmm0, xmm8
mulss xmm6, dword [0x1801c6d20]
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movss xmm7, dword [0x1802497b8]
movaps xmm9, xmm0
movaps xmm0, xmm6
mulss xmm9, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
mulss xmm9, xmm0
movaps xmm0, xmm6
addss xmm9, xmm12
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm6, xmm0
movaps xmm0, xmm8
mulss xmm6, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
mulss xmm6, xmm0
movaps xmm0, xmm8
addss xmm6, xmm11
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
mov r8, qword [0x18024b0a0]
lea rdx, [rsp + 0x70]
movaps xmm8, xmm0
xor r9d, r9d
mulss xmm8, xmm7
mov rcx, r13
addss xmm8, xmm10
call fcn.1800af570
cmp byte [0x180248f76], r14b
je 0x1800e8872
mov r8, qword [0x18024b0a0]
mov r9b, 1
mov rdx, qword [0x18024db70]
mov rcx, r13
mov byte [rsp + 0x20], r14b
call fcn.1800ae6e0
mov rcx, qword [0x18024db70]
movaps xmm3, xmm8
mov byte [rsp + 0x30], 1
movaps xmm2, xmm6
mov byte [rsp + 0x28], r14b
movaps xmm1, xmm9
mov byte [rsp + 0x20], r14b
call qword [0x180249248]
mov byte [0x18024db6d], r14b
movaps xmm12, xmmword [rsp + 0x390]
movaps xmm11, xmmword [rsp + 0x3a0]
mov byte [0x18024db6c], 1
jmp 0x1800e8972
cmp byte [0x18024db6d], r14b
jne 0x1800e8964
mov rcx, qword [0x18024db70]
test rcx, rcx
je 0x1800e8964
cmp qword [rcx + 0xd0], r14
je 0x1800e892a
cmp byte [0x180248f76], r14b
je 0x1800e890e
mov r8, qword [0x18024b0a0]
mov rdx, rcx
mov rcx, r13
mov byte [rsp + 0x20], 1
mov r9b, 1
call fcn.1800ae6e0
mov rcx, qword [0x18024db70]
mov rax, qword [0x1802491f8]
mov rbx, qword [0x180249410]
call rax
mov rcx, rax
call rbx
mov rcx, qword [0x18024db70]
cmp byte [0x180248f77], r14b
je 0x1800e894c
mov rax, qword [0x1802491f8]
mov rbx, qword [0x1802493f8]
call rax
mov rcx, rax
movaps xmm1, xmm15
call rbx
mov dword [0x1802497b8], 0x41200000
mov qword [0x18024db70], r14
mov byte [0x18024db6d], 1
mov byte [0x180248f78], 1
mov byte [0x18024db6c], r14b
cmp byte [0x180249498], r14b
je 0x1800e89d4
cmp qword [0x18024b0a0], r14
je 0x1800e89cd
mov rcx, qword [0x180249490]
test rcx, rcx
je 0x1800e89cd
call qword [0x1802493d8]
mov rax, qword [0x18024b0a0]
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x1800e89cd
mov eax, dword [0x180249490]
mov dword [rcx + 0x18], eax
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x50], 5
call fcn.180062690
mov rax, qword [0x18024b0a0]
mov byte [rax + 0x2c], Ordinal_41
mov byte [0x180249498], r14b
cmp byte [0x18024948c], r14b
je 0x1800e8a92
movsxd rax, dword [0x18024b500]
mov r10d, r14d
mov r11, 0xffffffffffffffff
mov r9, qword [r13 + rax*8 + 0x28]
inc r11
cmp byte [r9 + r11], r10b
jne 0x1800e89f7
add r11, r9
cmp r9, r11
je 0x1800e8a46
nop dword [rax + rax]
movzx r8d, byte [r9]
movzx eax, r8b
or al, 0x20
movzx ecx, al
lea edx, [r8 - 0x41]
cmp dl, 0x19
cmova ecx, r8d
inc r9
movsx eax, cl
add eax, r10d
imul r10d, eax, 0x401
mov eax, r10d
shr eax, 6
xor r10d, eax
cmp r9, r11
jne 0x1800e8a10
lea eax, [r10 + r10*8]
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
imul ebx, ecx, 0x8001
cmp qword [0x18024b0a0], r14
je 0x1800e8a8b
mov ecx, ebx
call qword [0x1802493d8]
mov rax, qword [0x18024b0a0]
mov rcx, qword [rax + 0x20]
test rcx, rcx
je 0x1800e8a8b
cmp dword [rcx + 0x18], ebx
je 0x1800e8a80
mov dword [rcx + 0x18], ebx
mov rax, qword [0x18024b0a0]
mov byte [rax + 0x2c], 1
mov byte [0x18024948c], r14b
cmp byte [0x180248fc0], r14b
lea r12, [0x1801bf00e]
mov qword [rsp + 0x438], rsi
lea r15, [0x1801bf008]
je 0x1800e8c19
mov ecx, 1
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800e8c19
cmp byte [reloc.WS2_32.dll_accept], r14b
jne 0x1800e8c19
mov r9d, r14d
mov r10, r15
nop dword [rax]
movzx r8d, byte [r10]
movzx eax, r8b
or al, 0x20
movzx ecx, al
lea edx, [r8 - 0x41]
cmp dl, 0x19
cmova ecx, r8d
inc r10
movsx eax, cl
add eax, r9d
imul r9d, eax, 0x401
mov eax, r9d
shr eax, 6
xor r9d, eax
cmp r10, r12
jne 0x1800e8ae0
lea eax, [r9 + r9*8]
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
imul eax, ecx, 0x8001
mov ecx, eax
mov esi, eax
call qword [0x1802493d8]
mov rax, qword [0x18024b0a0]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x50], reloc.WLDAP32.dll_Ordinal_50
movsd xmm6, qword [rax + 0x90]
mov ebx, dword [rax + 0x98]
call fcn.180062690
mov rdx, qword [0x18024b0a0]
mov rcx, r13
mov rdi, qword [0x1802493d0]
call fcn.1800afc80
movaps xmm3, xmm0
movd xmm2, ebx
addss xmm2, dword [0x1801c6d80]
xor eax, eax
movsd qword [rsp + 0x70], xmm6
mov dword [rbp + 0x8c], eax
lea rdx, [rbp - 0x80]
mov dword [rbp + 0x94], eax
movaps xmm1, xmm6
movups xmm0, xmmword [rbp + 0x88]
mov dword [rbp + 0x9c], eax
xor r9d, r9d
shufps xmm1, xmm1, 0x55
mov ecx, esi
movss xmm0, xmm6
mov dword [rsp + 0x20], r14d
shufps xmm0, xmm0, 0xd2
movss xmm0, xmm1
shufps xmm0, xmm0, 0xc9
movups xmmword [rbp + 0x88], xmm0
movaps xmmword [rbp - 0x80], xmm0
movsd xmm0, qword [rbp + 0x98]
movss xmm0, xmm2
movaps xmm2, xmm3
movsd qword [rbp + 0x98], xmm0
movsd qword [rbp - 0x70], xmm0
call rdi
mov rcx, rax
mov rbx, rax
call qword [0x1802493e0]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x50], 5
call fcn.180062690
movaps xmm1, xmm13
mov rcx, rbx
call qword [0x1802493f8]
cmp byte [0x18024949a], r14b
je 0x1800e8d1e
mov rcx, qword [0x180249480]
test rcx, rcx
je 0x1800e8d1e
cmp qword [rcx + 0xd0], r14
je 0x1800e8d10
mov eax, dword [0x18024db78]
inc eax
mov dword [0x18024db78], eax
cmp eax, 0x32
je 0x1800e8ca1
cmp eax, 0x96
jne 0x1800e8c93
mov rax, qword [0x1802491f8]
mov rdi, qword [0x1802493e8]
call rax
mov rdx, qword [0x1802491f8]
mov rbx, rax
mov rcx, qword [0x18024b0a0]
call rdx
mov r8d, 0xffffffff
mov rdx, rbx
mov rcx, rax
call rdi
jmp 0x1800e8d1e
cmp eax, 0xfa
jne 0x1800e8cd1
mov rcx, qword [0x180249480]
mov rax, qword [0x1802491f8]
mov rdi, qword [0x1802493e8]
call rax
mov rdx, qword [0x1802491f8]
mov rbx, rax
mov rcx, qword [0x18024b0a0]
call rdx
xor r8d, r8d
mov rdx, rbx
mov rcx, rax
call rdi
jmp 0x1800e8d1e
cmp eax, 0x15e
jl 0x1800e8d1e
mov rax, qword [0x1802491f8]
mov rcx, qword [0x180249480]
mov rdi, qword [0x1802493e8]
call rax
mov rdx, qword [0x1802491f8]
mov rbx, rax
mov rcx, qword [0x18024b0a0]
call rdx
mov r8d, 0xffffffff
mov rdx, rbx
mov rcx, rax
call rdi
mov byte [0x18024949a], r14b
mov dword [0x18024db78], r14d
cmp byte [0x18024949b], r14b
je 0x1800e8da3
cmp byte [0x18024900e], r14b
je 0x1800e8d68
mov rax, qword [0x1802491f8]
mov rcx, qword [0x18024b0a0]
mov rdi, qword [0x180249418]
call rax
mov rdx, qword [0x1802491f8]
mov rbx, rax
mov rcx, qword [0x1802494a0]
call rdx
mov r8d, 1
mov rdx, rbx
mov rcx, rax
call rdi
mov rax, qword [0x1802491f8]
mov rcx, qword [0x1802494a0]
mov rsi, qword [0x1802493e8]
mov edi, dword [0x1802494a8]
call rax
mov rdx, qword [0x1802491f8]
mov rbx, rax
mov rcx, qword [0x18024b0a0]
call rdx
mov r8d, edi
mov rdx, rbx
mov rcx, rax
call rsi
cmp byte [0x1802494b8], r14b
je 0x1800e8e74
mov rcx, qword [0x1802494b0]
test rcx, rcx
je 0x1800e8e74
mov rax, qword [0x1802492e0]
cmp qword [rax + rcx], r14
jne 0x1800e8dd4
mov byte [0x1802494b8], r14b
mov rax, qword [0x18024b0a8]
mov rsi, qword [rax + 0x10]
test rsi, rsi
je 0x1800e8e74
mov r12, qword [rsi + 0x188]
mov edi, r14d
movsd xmm0, qword [rcx + 0x90]
mov eax, dword [rcx + 0x98]
movsd qword [rsp + 0x40], xmm0
mov dword [rsp + 0x48], eax
test r12, r12
je 0x1800e8e6d
movss xmm6, dword [rsp + 0x48]
mov rbx, r14
movss xmm7, dword [rsp + 0x44]
movss xmm8, dword [rsp + 0x40]
nop word [rax + rax]
mov rax, qword [rsi + 0x180]
mov rcx, qword [rbx + rax]
test rcx, rcx
je 0x1800e8e5f
mov byte [rsp + 0x30], 1
movaps xmm3, xmm6
mov byte [rsp + 0x28], r14b
movaps xmm2, xmm7
movaps xmm1, xmm8
mov byte [rsp + 0x20], r14b
call qword [0x180249248]
inc edi
add rbx, 0x10
movsxd rax, edi
cmp rax, r12
jb 0x1800e8e30
lea r12, [0x1801bf00e]
cmp byte [0x1802494b9], r14b
je 0x1800e8fb1
mov r9d, r14d
mov r10, r15
nop word [rax + rax]
movzx r8d, byte [r10]
movzx eax, r8b
or al, 0x20
movzx ecx, al
lea edx, [r8 - 0x41]
cmp dl, 0x19
cmova ecx, r8d
inc r10
movsx eax, cl
add eax, r9d
imul r9d, eax, 0x401
mov eax, r9d
shr eax, 6
xor r9d, eax
cmp r10, r12
jne 0x1800e8e90
lea eax, [r9 + r9*8]
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
imul eax, ecx, 0x8001
mov ecx, eax
mov ebx, eax
call qword [0x1802493d8]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x50], reloc.WLDAP32.dll_Ordinal_50
call fcn.180062690
movss xmm2, dword [0x1802494c0]
lea rdx, [rbp - 0x80]
subss xmm2, dword [0x1801ad7f0]
movss xmm1, dword [0x1802494bc]
xor ecx, ecx
movss xmm3, dword [0x1802494c4]
xor r9d, r9d
mov rax, qword [0x1802493d0]
mov dword [rbp + 0x8c], ecx
mov dword [rbp + 0x94], ecx
movups xmm0, xmmword [rbp + 0x88]
mov dword [rbp + 0x9c], ecx
mov ecx, ebx
mov dword [rsp + 0x20], r14d
movss xmm0, xmm1
shufps xmm0, xmm0, 0xd2
movss xmm0, xmm2
movaps xmm2, xmm14
shufps xmm0, xmm0, 0xc9
movups xmmword [rbp + 0x88], xmm0
movaps xmmword [rbp - 0x80], xmm0
movsd xmm0, qword [rbp + 0x98]
movss xmm0, xmm3
movsd qword [rbp + 0x98], xmm0
movsd qword [rbp - 0x70], xmm0
call rax
mov rcx, rax
mov rbx, rax
call qword [0x1802493e0]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x50], 5
call fcn.180062690
movaps xmm1, xmm13
mov rcx, rbx
call qword [0x1802493f8]
mov byte [0x1802494b9], r14b
cmp byte [0x180249499], r14b
movaps xmm13, xmmword [rsp + 0x380]
je 0x1800e9100
mov r9d, r14d
mov r10, r15
nop dword [rax]
movzx r8d, byte [r10]
movzx eax, r8b
or al, 0x20
movzx ecx, al
lea edx, [r8 - 0x41]
cmp dl, 0x19
cmova ecx, r8d
inc r10
movsx eax, cl
add eax, r9d
imul r9d, eax, 0x401
mov eax, r9d
shr eax, 6
xor r9d, eax
cmp r10, r12
jne 0x1800e8fd0
lea eax, [r9 + r9*8]
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
imul eax, ecx, 0x8001
mov ecx, eax
mov ebx, eax
call qword [0x1802493d8]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x50], reloc.WLDAP32.dll_Ordinal_50
call fcn.180062690
movss xmm2, dword [0x1802494c0]
lea rdx, [rbp - 0x80]
movss xmm1, dword [0x1802494bc]
xor ecx, ecx
movss xmm3, dword [0x1802494c4]
xor r9d, r9d
mov rax, qword [0x1802493d0]
mov dword [rbp + 0x8c], ecx
mov dword [rbp + 0x94], ecx
movups xmm0, xmmword [rbp + 0x88]
mov dword [rbp + 0x9c], ecx
mov ecx, ebx
mov dword [rsp + 0x20], r14d
movss xmm0, xmm1
shufps xmm0, xmm0, 0xd2
movss xmm0, xmm2
movaps xmm2, xmm14
shufps xmm0, xmm0, 0xc9
movups xmmword [rbp + 0x88], xmm0
movaps xmmword [rbp - 0x80], xmm0
movsd xmm0, qword [rbp + 0x98]
movss xmm0, xmm3
movsd qword [rbp + 0x98], xmm0
movsd qword [rbp - 0x70], xmm0
call rax
mov rcx, rax
mov rbx, rax
call qword [0x1802493e0]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x50], reloc.WLDAP32.dll_Ordinal_35
call fcn.180062690
xor r8d, r8d
mov edx, 1
mov rcx, rbx
call qword [0x180249400]
lea rcx, [rsp + 0x50]
mov qword [rsp + 0x50], reloc.WLDAP32.dll_Ordinal_35
call fcn.180062690
mov byte [0x180249499], r14b
cmp byte [0x180249463], r14b
mov edi, 3
je 0x1800e932f
cmp byte [0x18024b00f], r14b
jne 0x1800e9127
call fcn.1800e2590
mov byte [0x18024b00f], 1
movdqa xmm0, xmmword [0x1801c6e60]
lea rbx, [rbp + 0x170]
movdqa xmm1, xmmword [0x1801c6e70]
movdqa xmmword [rbp + 0x170], xmm0
movdqa xmm0, xmmword [0x1801c6e80]
movdqa xmmword [rbp + 0x180], xmm1
movdqa xmm1, xmmword [0x1801c6ea0]
movdqa xmmword [rbp + 0x190], xmm0
movdqa xmm0, xmmword [0x1801c6eb0]
movdqa xmmword [rbp + 0x1a0], xmm1
movdqa xmm1, xmmword [0x1801c6ec0]
movdqa xmmword [rbp + 0x1b0], xmm0
movdqa xmmword [rbp + 0x1c0], xmm1
mov dword [rbp + 0x1d0], __WSAFDIsSet
nop dword [rax + rax]
mov edx, dword [rbx]
mov r8b, 1
xor ecx, ecx
call qword [0x180249428]
lea rax, [rbp + 0x1d4]
add rbx, 4
cmp rbx, rax
jne 0x1800e91a0
mov r8, qword [0x180249468]
lea rdx, [rsp + 0x40]
xor r9d, r9d
mov rcx, r13
call fcn.1800af570
mov rax, qword [0x18024b0b0]
movss xmm1, dword [rsp + 0x44]
movss xmm2, dword [rsp + 0x48]
subss xmm1, dword [0x1801ad7cc]
addss xmm2, dword [0x1801ad7c8]
test rax, rax
je 0x1800e9211
movss xmm0, dword [rsp + 0x40]
movss dword [rax + 0x60], xmm0
movss dword [rax + 0x64], xmm1
movss dword [rax + 0x68], xmm2
mov byte [0x180248fa4], r14b
cmp byte [0x18024b00e], r14b
je 0x1800e9a85
cmp byte [0x180248fae], r14b
je 0x1800e9a79
mov rax, qword [0x18024b0b0]
test rax, rax
je 0x1800e9a79
movsd xmm5, qword [rax + 0x60]
movss xmm1, dword [0x1801c6e18]
comiss xmm5, xmm1
movsd qword [rsp + 0x70], xmm5
jb 0x1800e9a79
movss xmm0, dword [0x1801c6dfc]
comiss xmm0, xmm5
jb 0x1800e9a79
movss xmm2, dword [rsp + 0x74]
comiss xmm2, xmm1
jb 0x1800e9a79
comiss xmm0, xmm2
jb 0x1800e9a79
movss xmm3, dword [rax + 0x68]
comiss xmm3, xmm1
jb 0x1800e9a79
comiss xmm0, xmm3
jb 0x1800e9a79
mov rcx, qword [0x18024b0a0]
test rcx, rcx
je 0x1800e9a79
mov rax, qword [0x180249380]
movaps xmm0, xmm5
movaps xmm1, xmm5
unpcklps xmm0, xmm2
test dword [rax + rcx + 4], 0x40000000
je 0x1800e9a05
mov rax, qword [0x1802492f0]
mov byte [rsp + 0x30], 1
mov byte [rsp + 0x28], r14b
mov byte [rsp + 0x20], r14b
mov rcx, qword [rax + rcx]
mov rax, qword [rcx + 0x30]
mov qword [rax + 0x30], r14
mov dword [rax + 0x38], r14d
mov qword [rcx + 0x320], r14
mov dword [rcx + 0x328], r14d
mov rdx, qword [rcx + 0x30]
movsd qword [rcx + 0x90], xmm0
movaps xmm0, xmm5
movss dword [rcx + 0x98], xmm3
unpcklps xmm0, xmm2
movsd qword [rdx + 0x50], xmm0
movss dword [rdx + 0x58], xmm3
call qword [0x180249248]
jmp 0x1800e9a79
cmp byte [0x18024b00f], r14b
je 0x1800e9344
call fcn.1800e24e0
mov byte [0x18024b00f], r14b
cmp byte [0x180248fa4], r14b
je 0x1800e9218
cmp qword [0x18024b0b0], r14
je 0x1800e9218
cmp qword [0x18024b0a0], r14
je 0x1800e9218
movdqa xmm0, xmmword [0x1801c6e60]
lea rbx, [rbp + 0x1e0]
movdqa xmm1, xmmword [0x1801c6e70]
movdqa xmmword [rbp + 0x1e0], xmm0
movdqa xmm0, xmmword [0x1801c6e80]
movdqa xmmword [rbp + 0x1f0], xmm1
movdqa xmm1, xmmword [0x1801c6ea0]
movdqa xmmword [rbp + 0x200], xmm0
movdqa xmm0, xmmword [0x1801c6eb0]
movdqa xmmword [rbp + 0x210], xmm1
movdqa xmm1, xmmword [0x1801c6ec0]
movdqa xmmword [rbp + 0x220], xmm0
movdqa xmmword [rbp + 0x230], xmm1
mov dword [rbp + 0x240], __WSAFDIsSet
nop dword [rax]
mov edx, dword [rbx]
mov r8b, 1
xor ecx, ecx
call qword [0x180249428]
lea rax, [rbp + 0x244]
add rbx, 4
cmp rbx, rax
jne 0x1800e93e0
cmp byte [0x18024b00e], r14b
jne 0x1800e9412
call fcn.1800e2590
mov byte [0x18024b00e], 1
mov rax, qword [0x18024b0b0]
mov ecx, 0xa0
movsd xmm0, qword [rax + 0x40]
movsd xmm10, qword [rax + 0x60]
mov r13d, dword [rax + 0x68]
mov ebx, dword [rax + 0x48]
movsd qword [rsp + 0x60], xmm0
movsd qword [rsp + 0x40], xmm10
mov dword [rsp + 0x48], r13d
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
movd xmm9, dword [reloc.WS2_32.dll_accept]
mov ecx, 1
cvtdq2ps xmm9, xmm9
test ax, ax
cmovne ecx, edi
mulss xmm9, dword [0x1801ad7b8]
movd xmm0, ecx
mov ecx, dword [str.ZS_QD]
cvtdq2ps xmm0, xmm0
mulss xmm9, xmm0
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1800e94d7
movss xmm0, dword [rsp + 0x60]
movss xmm7, dword [rsp + 0x40]
movss xmm1, dword [rsp + 0x64]
movss xmm8, dword [rsp + 0x44]
movss xmm6, dword [rsp + 0x48]
mulss xmm0, xmm9
mulss xmm1, xmm9
addss xmm7, xmm0
movd xmm0, ebx
mulss xmm0, xmm9
addss xmm8, xmm1
addss xmm6, xmm0
movaps xmm10, xmm7
unpcklps xmm10, xmm8
movd r13d, xmm6
jmp 0x1800e9632
mov ecx, dword [0x180249554]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1800e9539
movss xmm0, dword [rsp + 0x60]
movss xmm7, dword [rsp + 0x40]
movss xmm1, dword [rsp + 0x64]
movss xmm8, dword [rsp + 0x44]
movss xmm6, dword [rsp + 0x48]
mulss xmm0, xmm9
mulss xmm1, xmm9
subss xmm7, xmm0
movd xmm0, ebx
mulss xmm0, xmm9
subss xmm8, xmm1
subss xmm6, xmm0
movaps xmm10, xmm7
unpcklps xmm10, xmm8
movd r13d, xmm6
jmp 0x1800e9632
mov ecx, dword [reloc.WLDAP32.dll_Ordinal_32]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1800e955f
movss xmm6, dword [rsp + 0x48]
addss xmm6, xmm9
movd r13d, xmm6
jmp 0x1800e9625
mov ecx, dword [0x18024955c]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1800e9585
movss xmm6, dword [rsp + 0x48]
subss xmm6, xmm9
movd r13d, xmm6
jmp 0x1800e9625
mov ecx, dword [0x180249560]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1800e95e1
movss xmm0, dword [rsp + 0x64]
movss xmm1, dword [rsp + 0x60]
movss xmm7, dword [rsp + 0x40]
movss xmm8, dword [rsp + 0x44]
mulss xmm0, xmm9
mulss xmm1, xmm9
subss xmm7, xmm0
addss xmm8, xmm1
movss xmm6, dword [rsp + 0x48]
movaps xmm10, xmm7
mulss xmm9, xmm14
unpcklps xmm10, xmm8
addss xmm6, xmm9
movd r13d, xmm6
jmp 0x1800e9632
mov ecx, dword [0x180249564]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1800e9620
movss xmm0, dword [rsp + 0x64]
movss xmm1, dword [rsp + 0x60]
movss xmm7, dword [rsp + 0x40]
movss xmm8, dword [rsp + 0x44]
mulss xmm0, xmm9
mulss xmm1, xmm9
addss xmm7, xmm0
subss xmm8, xmm1
jmp 0x1800e95c2
movd xmm6, r13d
movss xmm8, dword [rsp + 0x44]
movss xmm7, dword [rsp + 0x40]
mov ecx, dword [reloc.WS2_32.dll_accept]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x1800e99e8
cmp byte [reloc.WS2_32.dll_accept], r14b
jne 0x1800e99e8
cmp byte [0x180248fb5], r14b
jne 0x1800e9696
cmp byte [0x180248fb0], r14b
jne 0x1800e9696
cmp byte [0x180248faf], r14b
jne 0x1800e9696
cmp byte [0x180248fb1], r14b
jne 0x1800e9696
cmp byte [0x180248fb3], r14b
jne 0x1800e9696
cmp byte [0x180248fb4], r14b
jne 0x1800e9696
cmp byte [0x180248fb6], r14b
je 0x1800e97d5
lea rcx, [0x18024b4e0]
call fcn.1800b0850
mov rdi, rax
test rax, rax
je 0x1800e97d5
mov rdx, qword [0x1802491f8]
mov rcx, rax
call rdx
mov rbx, rax
test rax, rax
je 0x1800e97d5
cmp byte [0x180248fb6], r14b
je 0x1800e96e9
mov rcx, rax
call qword [0x180249410]
mov rax, qword [0x180249238]
cmp byte [rax], 0x48
jne 0x1800e96e9
mov rcx, rdi
call rax
cmp byte [0x180248fb5], r14b
je 0x1800e9713
mov rax, qword [rdi + 0xd0]
test rax, rax
je 0x1800e9705
mov dword [rax + 0x208], r14d
mov rax, qword [0x180249360]
mov dword [rdi + rax], 1
cmp byte [0x180248fb1], r14b
je 0x1800e9730
mov rcx, rbx
call qword [0x180249410]
mov rax, qword [0x180249390]
mov byte [rax + rdi], reloc.WS2_32.dll_socket
cmp byte [0x180248fb0], r14b
je 0x1800e9753
mov rcx, rbx
call qword [0x180249410]
movss xmm1, dword [0x1801c6dec]
mov rcx, rbx
call qword [0x1802493f8]
cmp byte [0x180248faf], r14b
je 0x1800e9776
mov rcx, rbx
call qword [0x180249410]
xor r8d, r8d
mov edx, 1
mov rcx, rbx
call qword [0x180249400]
cmp byte [0x180248fb3], r14b
je 0x1800e97aa
mov rcx, rbx
call qword [0x180249410]
mov byte [rsp + 0x30], 1
movaps xmm3, xmm6
mov byte [rsp + 0x28], r14b
movaps xmm2, xmm8
movaps xmm1, xmm7
mov byte [rsp + 0x20], r14b
mov rcx, rdi
call qword [0x180249248]
cmp byte [0x180248fb4], r14b
je 0x1800e97d5
mov rax, qword [0x1802491f8]
mov rcx, qword [0x18024b0a0]
call rax
mov r8d, 1
mov rdx, rax
mov rcx, rbx
call qword [0x180249418]
mov ecx, dword [reloc.WS2_32.dll_accept]
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800e98f5
cmp byte [reloc.WS2_32.dll_accept], r14b
jne 0x1800e98f5
mov r8, qword [0x18024b0a0]
test r8, r8
je 0x1800e98f5
cmp byte [0x180248fb2], r14b
je 0x1800e98f5
mov rax, qword [0x18024b0a8]
mov rcx, qword [rax + 0x10]
test rcx, rcx
je 0x1800e98f5
mov rax, qword [rcx + 0x188]
mov r12d, r14d
mov qword [rsp + 0x50], rax
test rax, rax
je 0x1800e98f5
mov r15, rcx
mov rsi, r14
mov rcx, rax
nop dword [rax]
mov rax, qword [r15 + 0x180]
mov rdi, qword [rsi + rax]
test rdi, rdi
je 0x1800e98db
mov r9b, 1
mov byte [rsp + 0x20], r14b
mov rdx, rdi
lea rcx, [0x18024b4e0]
call fcn.1800ae6e0
mov rax, qword [0x1802491f8]
mov rcx, rdi
mov rbx, qword [0x180249410]
call rax
mov rcx, rax
call rbx
mov byte [rsp + 0x30], 1
movaps xmm3, xmm6
mov byte [rsp + 0x28], r14b
movaps xmm2, xmm8
movaps xmm1, xmm7
mov byte [rsp + 0x20], r14b
mov rcx, rdi
call qword [0x180249248]
mov r8, qword [0x18024b0a0]
lea rcx, [0x18024b4e0]
mov r9b, 1
mov byte [rsp + 0x20], 1
mov rdx, rdi
call fcn.1800ae6e0
mov r8, qword [0x18024b0a0]
mov rcx, qword [rsp + 0x50]
inc r12d
add rsi, 0x10
movsxd rax, r12d
cmp rax, rcx
jb 0x1800e9850
lea r15, [0x1801bf008]
cmp byte [0x180248fac], r14b
je 0x1800e99e8
mov r9d, r14d
lea r10, [0x1801bf00e]
nop dword [rax]
movzx r8d, byte [r15]
movzx eax, r8b
or al, 0x20
movzx ecx, al
lea edx, [r8 - 0x41]
cmp dl, 0x19
cmova ecx, r8d
inc r15
movsx eax, cl
add eax, r9d
imul r9d, eax, 0x401
mov eax, r9d
shr eax, 6
xor r9d, eax
cmp r15, r10
jne 0x1800e9910
lea eax, [r9 + r9*8]
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
imul eax, ecx, 0x8001
mov ecx, eax
mov ebx, eax
call qword [0x1802493d8]
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x58], reloc.WLDAP32.dll_Ordinal_50
call fcn.180062690
mov rax, qword [0x1802493d0]
lea rdx, [rbp - 0x80]
xor ecx, ecx
mov dword [rsp + 0x20], r14d
mov dword [rbp + 0x8c], ecx
xor r9d, r9d
mov dword [rbp + 0x94], ecx
movaps xmm2, xmm14
movups xmm0, xmmword [rbp + 0x88]
mov dword [rbp + 0x9c], ecx
mov ecx, ebx
movss xmm0, xmm7
shufps xmm0, xmm0, 0xd2
movss xmm0, xmm8
shufps xmm0, xmm0, 0xc9
movups xmmword [rbp + 0x88], xmm0
movaps xmmword [rbp - 0x80], xmm0
movsd xmm0, qword [rbp + 0x98]
movss xmm0, xmm6
movsd qword [rbp + 0x98], xmm0
movsd qword [rbp - 0x70], xmm0
call rax
mov rcx, rax
call qword [0x1802493e0]
mov rax, qword [0x18024b0b0]
movsd qword [rax + 0x60], xmm10
mov dword [rax + 0x68], r13d
lea r13, [0x18024b4e0]
jmp 0x1800e9a85
mov rax, qword [0x18024b0a0]
mov dword [rsp + 0x30], 1
mov dword [rsp + 0x28], 1
mov dword [rsp + 0x20], 0x42
mov rdx, qword [rax + 0x30]
mov qword [rdx + 0x30], r14
mov dword [rdx + 0x38], r14d
mov rax, qword [0x18024b0a0]
mov qword [rax + 0x320], r14
mov dword [rax + 0x328], r14d
mov rcx, qword [0x18024b0a0]
movsd qword [rcx + 0x90], xmm0
movaps xmm0, xmm5
movss dword [rcx + 0x98], xmm3
unpcklps xmm0, xmm2
movsd qword [rdx + 0x50], xmm0
movss dword [rdx + 0x58], xmm3
mov rcx, qword [0x18024b0a0]
call qword [0x1802493f0]
call fcn.1800e24e0
mov byte [0x18024b00e], r14b
cmp byte [0x180249471], r14b
movaps xmm10, xmmword [rsp + 0x3b0]
movaps xmm9, xmmword [rsp + 0x3c0]
je 0x1800e9ae7
mov rcx, qword [0x180249480]
test rcx, rcx
je 0x1800e9ae0
mov rax, qword [0x1802491f8]
mov rsi, qword [0x1802493e8]
mov edi, dword [0x180249488]
call rax
mov rdx, qword [0x1802491f8]
mov rbx, rax
mov rcx, qword [0x18024b0a0]
call rdx
mov r8d, edi
mov rdx, rbx
mov rcx, rax
call rsi
mov byte [0x180249471], r14b
cmp byte [0x180249461], r14b
je 0x1800e9cc3
mov rax, qword [0x18024b0a0]
xor ecx, ecx
mov dword [rbp + 0x8c], ecx
mov r10d, r14d
mov dword [rbp + 0x94], ecx
mov r11, 0xffffffffffffffff
movsd xmm7, qword [rax + 0x90]
movss xmm8, dword [rax + 0x98]
movaps xmm6, xmm7
xor eax, eax
shufps xmm6, xmm6, 0x55
mov dword [rbp + 0x9c], eax
movsxd rax, dword [0x18024b504]
movsd qword [rsp + 0x70], xmm7
mov r9, qword [r13 + rax*8 + 0x1058]
nop dword [rax + rax]
inc r11
cmp byte [r9 + r11], cl
jne 0x1800e9b50
add r11, r9
cmp r9, r11
je 0x1800e9b97
movzx r8d, byte [r9]
movzx eax, r8b
or al, 0x20
movzx ecx, al
lea edx, [r8 - 0x41]
cmp dl, 0x19
cmova ecx, r8d
inc r9
movsx eax, cl
add eax, r10d
imul r10d, eax, 0x401
mov eax, r10d
shr eax, 6
xor r10d, eax
cmp r9, r11
jne 0x1800e9b61
lea eax, [r10 + r10*8]
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
imul eax, ecx, 0x8001
mov ecx, eax
mov ebx, eax
call qword [0x1802493d8]
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x58], 0x64
call fcn.180062690
mov rax, qword [0x18024b0a0]
movaps xmm2, xmm14
mov rdi, qword [0x1802493d0]
test rax, rax
je 0x1800e9c18
movss xmm2, dword [rax + 0x74]
mov rcx, r13
movss xmm1, dword [rax + 0x64]
call fcn.180073de0
movaps xmm2, xmm0
movss xmm0, dword [0x1801bb1a4]
mulss xmm2, dword [0x1801c6dac]
comiss xmm14, xmm2
jbe 0x1800e9c0b
addss xmm2, xmm0
comiss xmm2, xmm0
jbe 0x1800e9c18
addss xmm2, dword [0x1801c6e14]
xor eax, eax
mov dword [rsp + 0x20], r14d
mov dword [rbp + 0x8c], eax
lea rdx, [rbp - 0x80]
mov dword [rbp + 0x94], eax
xor r9d, r9d
movups xmm0, xmmword [rbp + 0x88]
mov dword [rbp + 0x9c], eax
mov rcx, rbx
movss xmm0, xmm7
shufps xmm0, xmm0, 0xd2
movss xmm0, xmm6
shufps xmm0, xmm0, 0xc9
movups xmmword [rbp + 0x88], xmm0
movaps xmmword [rbp - 0x80], xmm0
movsd xmm0, qword [rbp + 0x98]
movss xmm0, xmm8
movsd qword [rbp + 0x98], xmm0
movsd qword [rbp - 0x70], xmm0
call rdi
cmp byte [0x180249462], r14b
mov rdi, rax
jne 0x1800e9c8e
mov rcx, rax
call qword [0x1802493e0]
cmp byte [0x180249470], r14b
je 0x1800e9cbc
mov rdx, qword [0x1802491f8]
mov rcx, qword [0x18024b0a0]
mov rbx, qword [0x1802493e8]
call rdx
mov rcx, rax
mov r8d, 0xffffffff
mov rdx, rdi
call rbx
mov byte [0x180249461], r14b
cmp byte [0x180249440], r14b
je 0x1800e9e4a
mov rax, qword [0x18024b0a0]
lea r9, str.sultan
xor ecx, ecx
mov r10d, r14d
mov dword [rbp + 0x8c], ecx
mov r11, 0xffffffffffffffff
mov dword [rbp + 0x94], ecx
movsd xmm7, qword [rax + 0x90]
movss xmm8, dword [rax + 0x98]
movaps xmm6, xmm7
xor eax, eax
shufps xmm6, xmm6, 0x55
movsd qword [rsp + 0x70], xmm7
mov dword [rbp + 0x9c], eax
nop dword [rax]
inc r11
cmp byte [r9 + r11], al
jne 0x1800e9d20
add r11, r9
cmp r9, r11
je 0x1800e9d67
movzx r8d, byte [r9]
movzx eax, r8b
or al, 0x20
movzx ecx, al
lea edx, [r8 - 0x41]
cmp dl, 0x19
cmova ecx, r8d
inc r9
movsx eax, cl
add eax, r10d
imul r10d, eax, 0x401
mov eax, r10d
shr eax, 6
xor r10d, eax
cmp r9, r11
jne 0x1800e9d31
lea eax, [r10 + r10*8]
mov ecx, eax
shr ecx, 0xb
xor ecx, eax
imul eax, ecx, 0x8001
mov ecx, eax
mov ebx, eax
call qword [0x1802493d8]
lea rcx, [rsp + 0x58]
mov qword [rsp + 0x58], 0x64
call fcn.180062690
mov rax, qword [0x1802493d0]
lea rdx, [rbp - 0x80]
xor ecx, ecx
mov dword [rsp + 0x20], r14d
mov dword [rbp + 0x8c], ecx
xor r9d, r9d
mov dword [rbp + 0x94], ecx
movaps xmm2, xmm14
movups xmm0, xmmword [rbp + 0x88]
mov dword [rbp + 0x9c], ecx
mov ecx, ebx
movss xmm0, xmm7
shufps xmm0, xmm0, 0xd2
movss xmm0, xmm6
shufps xmm0, xmm0, 0xc9
movups xmmword [rbp + 0x88], xmm0
movaps xmmword [rbp - 0x80], xmm0
movsd xmm0, qword [rbp + 0x98]
movss xmm0, xmm8
movsd qword [rbp + 0x98], xmm0
movsd qword [rbp - 0x70], xmm0
call rax
cmp byte [0x180249462], r14b
mov rdi, rax
jne 0x1800e9e15
mov rcx, rax
call qword [0x1802493e0]
cmp byte [0x180249470], r14b
je 0x1800e9e43
mov rdx, qword [0x1802491f8]
mov rcx, qword [0x18024b0a0]
mov rbx, qword [0x1802493e8]
call rdx
mov rcx, rax
mov r8d, 0xffffffff
mov rdx, rdi
call rbx
mov byte [0x180249440], r14b
cmp byte [0x1802491a4], r14b
movaps xmm8, xmmword [rsp + 0x3d0]
je 0x1800e9ef1
cmp qword [0x18024b0a0], r14
je 0x1800e9ef1
mov rax, qword [0x18024b0a8]
mov r15, qword [rax + 0x10]
test r15, r15
je 0x1800e9ef1
mov r12, qword [r15 + 0x188]
mov edi, r14d
test r12, r12
je 0x1800e9eea
mov rbx, r14
nop
mov rax, qword [r15 + 0x180]
mov rcx, qword [rbx + rax]
test rcx, rcx
je 0x1800e9edc
mov rax, qword [0x1802491f8]
call rax
cmp byte [0x1802491a4], r14b
mov rsi, rax
je 0x1800e9edc
test rax, rax
je 0x1800e9edc
mov rdx, qword [0x1802491f8]
mov rcx, qword [0x18024b0a0]
call rdx
mov r8d, 1
mov rdx, rax
mov rcx, rsi
call qword [0x180249418]
inc edi
add rbx, 0x10
movsxd rax, edi
cmp rax, r12
jb 0x1800e9e90
mov byte [0x1802491a4], r14b
cmp byte [0x1802491a6], r14b
je 0x1800e9f76
mov rax, qword [0x180249270]
mov rbx, qword [rax]
test rbx, rbx
je 0x1800e9f6f
mov edi, r14d
cmp dword [rbx + 0x10], r14d
jbe 0x1800e9f6f
mov rsi, r14
nop word [rax + rax]
mov rax, qword [rbx + 8]
mov ecx, edi
imul ecx, dword [rbx + 0x14]
movzx edx, byte [rsi + rax]
and edx, 0x80
add rcx, qword [rbx]
neg rdx
sar rdx, 0x3f
not rdx
and rdx, rcx
je 0x1800e9f65
cmp rdx, qword [0x18024b0a0]
je 0x1800e9f65
mov rax, qword [rdx + 0xd0]
test rax, rax
je 0x1800e9f65
movzx ecx, word [rax + 0xa]
call qword [0x180249200]
inc edi
inc rsi
cmp edi, dword [rbx + 0x10]
jb 0x1800e9f20
mov byte [0x1802491a6], r14b
cmp byte [0x1802491a5], r14b
je 0x1800e9ffe
cmp qword [0x18024b0a0], r14
je 0x1800e9ffe
mov rax, qword [0x18024b0a8]
mov r15, qword [rax + 0x10]
test r15, r15
je 0x1800e9ffe
mov r12, qword [r15 + 0x188]
mov esi, r14d
test r12, r12
je 0x1800e9ffe
mov rdi, r14
nop word [rax + rax]
mov rax, qword [r15 + 0x180]
mov rcx, qword [rdi + rax]
test rcx, rcx
je 0x1800e9ff0
mov rax, qword [0x1802491f8]
call rax
cmp byte [0x1802491a5], r14b
mov rbx, rax
je 0x1800e9ff0
test rax, rax
je 0x1800e9ff0
mov rcx, rax
call qword [0x180249410]
movaps xmm1, xmm15
mov rcx, rbx
call qword [0x1802493f8]
inc esi
add rdi, 0x10
movsxd rax, esi
cmp rax, r12
jb 0x1800e9fb0
mov ecx, 0x90
mov dword [rbp + 0xb4], r14d
mov qword [rbp + 0xc0], r14
call fcn.1801a8d04
xorps xmm0, xmm0
lea rcx, [rbp + 0xc8]
mov r8, rax
mov edx, reloc.WS2_32.dll_recv
mov qword [rax], rax
mov qword [rax + 8], rax
mov qword [rbp + 0xb8], rax
mov qword [rbp + 0xc8], r14
movdqa xmmword [rbp + 0xd0], xmm0
mov qword [rbp + 0xe0], 7
mov qword [rbp + 0xe8], 8
mov dword [rbp + 0xb0], 0x3f800000
call fcn.1800718d0
mov rax, qword [0x180249270]
movaps xmm15, xmmword [rsp + 0x360]
mov r12, qword [rsp + 0x418]
mov rdi, qword [rax]
test rdi, rdi
je 0x1800ea5fa
mov eax, dword [rdi + 0x10]
xorps xmm0, xmm0
movss xmm7, dword [rbp + 0xb0]
cvtsi2ss xmm0, rax
divss xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_ceilf
movss xmm6, dword [0x1801bb1b8]
xor eax, eax
comiss xmm0, xmm6
movabs r15, 0x8000000000000000
jb 0x1800ea0cf
subss xmm0, xmm6
comiss xmm0, xmm6
jae 0x1800ea0cf
mov rax, r15
mov rbx, qword [rbp + 0xc0]
cvttss2si rsi, xmm0
xorps xmm0, xmm0
add rsi, rax
test rbx, rbx
js 0x1800ea0ed
cvtsi2ss xmm0, rbx
jmp 0x1800ea105
mov rax, rbx
mov rcx, rbx
shr rcx, 1
and eax, 1
or rcx, rax
cvtsi2ss xmm0, rcx
addss xmm0, xmm0
divss xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_ceilf
xor eax, eax
comiss xmm0, xmm6
jb 0x1800ea121
subss xmm0, xmm6
comiss xmm0, xmm6
jae 0x1800ea121
mov rax, r15
cvttss2si rdx, xmm0
add rdx, rax
cmp rdx, rsi
cmovb rdx, rsi
cmp rdx, qword [rbp + 0xe8]
jbe 0x1800ea14c
lea rcx, [rbp + 0xb0]
call fcn.180072920
mov rbx, qword [rbp + 0xc0]
mov esi, r14d
cmp dword [rdi + 0x10], r14d
jbe 0x1800ea573
mov r15, r14
nop dword [rax]
mov rax, qword [rdi + 8]
mov ecx, esi
imul ecx, dword [rdi + 0x14]
movzx ebx, byte [r15 + rax]
and ebx, 0x80
add rcx, qword [rdi]
neg rbx
sar rbx, 0x3f
not rbx
and rbx, rcx
je 0x1800ea55e
cmp rbx, qword [0x18024b0a0]
je 0x1800ea55e
cmp qword [rbx + 0x90], r14
je 0x1800ea55e
mov rax, qword [0x180249378]
mov rcx, qword [rax + rbx]
test rcx, rcx
je 0x1800ea55e
cmp qword [rcx + 0x68], r14
je 0x1800ea55e
xorps xmm0, xmm0
mov qword [rbp + 0x118], r14
xorps xmm1, xmm1
movaps xmmword [rbp + 0x140], xmm0
xor r9d, r9d
movaps xmmword [rbp + 0x150], xmm1
mov r8, rbx
movaps xmmword [rbp + 0x160], xmm0
lea rdx, [rbp + 0x48]
mov qword [rbp + 0x120], r14
mov rcx, r13
mov qword [rbp + 0x138], r14
mov qword [rbp + 0xf0], rbx
call fcn.1800af570
lea r8, [rbp - 0x40]
mov rcx, r13
lea rdx, [rsp + 0x58]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rbp - 0x40], xmm0
mov dword [rbp - 0x38], eax
call fcn.1800eaec0
movsd xmm0, qword [rsp + 0x58]
lea rdx, [rbp + 0x54]
mov r9d, 7
movsd qword [rbp + 0xf8], xmm0
mov r8, rbx
mov rcx, r13
call fcn.1800af570
lea r8, [rbp - 0x30]
mov rcx, r13
lea rdx, [rsp + 0x50]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rbp - 0x30], xmm0
mov dword [rbp - 0x28], eax
call fcn.1800eaec0
movsd xmm0, qword [rsp + 0x50]
lea rdx, [rbp + 0x60]
mov r9d, 3
movsd qword [rbp + 0x100], xmm0
mov r8, rbx
mov rcx, r13
call fcn.1800af570
lea r8, [rbp - 0x20]
mov rcx, r13
lea rdx, [rbp - 0x60]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rbp - 0x20], xmm0
mov dword [rbp - 0x18], eax
call fcn.1800eaec0
movsd xmm0, qword [rbp - 0x60]
lea rdx, [rbp + 0x6c]
mov r9d, 4
movsd qword [rbp + 0x108], xmm0
mov r8, rbx
mov rcx, r13
call fcn.1800af570
lea r8, [rbp - 0x10]
mov rcx, r13
lea rdx, [rbp - 0x58]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rbp - 0x10], xmm0
mov dword [rbp - 8], eax
call fcn.1800eaec0
movsd xmm0, qword [rbp - 0x58]
lea rdx, [rbp + 0x78]
mov r9d, 5
movsd qword [rbp + 0x110], xmm0
mov r8, rbx
mov rcx, r13
call fcn.1800af570
lea r8, [rbp]
mov rcx, r13
lea rdx, [rbp - 0x50]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rbp], xmm0
mov dword [rbp + 8], eax
call fcn.1800eaec0
movsd xmm0, qword [rbp - 0x50]
lea rdx, [rbp - 0x80]
mov r9d, 6
movsd qword [rbp + 0x128], xmm0
mov r8, rbx
mov rcx, r13
call fcn.1800af570
lea r8, [rsp + 0x70]
mov rcx, r13
lea rdx, [rbp + 0xa0]
movsd xmm0, qword [rax]
mov eax, dword [rax + 8]
movsd qword [rsp + 0x70], xmm0
mov dword [rsp + 0x78], eax
call fcn.1800eaec0
cmp byte [0x180249041], r14b
movsd xmm0, qword [rbp + 0xa0]
movsd qword [rbp + 0x130], xmm0
je 0x1800ea544
cmp byte [0x180249040], r14b
je 0x1800ea544
mov r9d, 0xeeeb
lea rdx, [rbp + 0x10]
mov r8, rbx
mov rcx, r13
call fcn.1800b06b0
mov r9d, 0x6e5c
lea rdx, [rbp + 0x18]
mov r8, rbx
mov rcx, r13
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbp + 0x118], xmm0
movss dword [rbp + 0x11c], xmm1
call fcn.1800b06b0
mov r9d, 0x2e28
lea rdx, [rbp + 0x20]
mov r8, rbx
mov rcx, r13
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbp + 0x120], xmm0
movss dword [rbp + 0x124], xmm1
call fcn.1800b06b0
mov r9d, 0x9d4d
lea rdx, [rbp + 0x28]
mov r8, rbx
mov rcx, r13
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbp + 0x138], xmm0
movss dword [rbp + 0x13c], xmm1
call fcn.1800b06b0
mov r9d, 0xb1c5
lea rdx, [rbp + 0x30]
mov r8, rbx
mov rcx, r13
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbp + 0x140], xmm0
movss dword [rbp + 0x144], xmm1
call fcn.1800b06b0
mov r9d, 0x9000
lea rdx, [rbp + 0x38]
mov r8, rbx
mov rcx, r13
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbp + 0x148], xmm0
movss dword [rbp + 0x14c], xmm1
call fcn.1800b06b0
mov r9d, 0xf9bb
lea rdx, [rbp + 0x40]
mov r8, rbx
mov rcx, r13
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbp + 0x150], xmm0
movss dword [rbp + 0x154], xmm1
call fcn.1800b06b0
mov r9d, 0xca72
lea rdx, [rsp + 0x60]
mov r8, rbx
mov rcx, r13
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbp + 0x158], xmm0
movss dword [rbp + 0x15c], xmm1
call fcn.1800b06b0
mov r9d, 0xe39f
lea rdx, [rsp + 0x40]
mov r8, rbx
mov rcx, r13
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbp + 0x160], xmm0
movss dword [rbp + 0x164], xmm1
call fcn.1800b06b0
movss xmm0, dword [rax]
movss xmm1, dword [rax + 4]
movss dword [rbp + 0x168], xmm0
movss dword [rbp + 0x16c], xmm1
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0x88]
lea rcx, [rbp + 0xb0]
call fcn.180059df0
inc esi
inc r15
cmp esi, dword [rdi + 0x10]
jb 0x1800ea160
mov rbx, qword [rbp + 0xc0]
mov rcx, qword [0x18024dac0]
cmp rcx, qword [0x18024dac8]
je 0x1800ea58a
mov qword [0x18024dac8], rcx
mov rax, qword [0x18024dad0]
sub rax, rcx
mov qword [rbp + 0xa0], rbx
sar rax, 7
cmp rbx, rax
jbe 0x1800ea5ca
movabs rax, 0x1ffffffffffffff
cmp rbx, rax
ja 0x1800ea70c
lea rdx, [rbp + 0xa0]
lea rcx, [0x18024dac0]
call fcn.180057cc0
mov r8, qword [rbp + 0xb8]
mov rdx, qword [r8]
mov rax, rdx
cmp rdx, r8
je 0x1800ea5eb
nop dword [rax]
mov rax, qword [rax]
inc r14
cmp rax, r8
jne 0x1800ea5e0
mov r8, r14
lea rcx, [0x18024dac0]
call fcn.180054e30
mov rdi, qword [0x18024b0a0]
test rdi, rdi
je 0x1800ea69f
cmp byte [0x180249003], 0
mov rax, qword [0x1802492f0]
mov rdi, qword [rax + rdi]
je 0x1800ea656
mov ecx, 0x45
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
je 0x1800ea656
test rdi, rdi
je 0x1800ea656
mov rax, qword [0x1802491f8]
mov rcx, rdi
mov rbx, qword [0x1802493f8]
movss xmm6, dword [0x180249008]
call rax
movaps xmm1, xmm6
mov rcx, rax
call rbx
cmp byte [0x180249004], 0
je 0x1800ea69f
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
jns 0x1800ea69f
test rdi, rdi
je 0x1800ea69f
mov ecx, 0x53
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x1800ea69f
mov rax, qword [0x1802491f8]
mov rcx, rdi
mov rbx, qword [0x1802493f8]
call rax
mov rcx, rax
movaps xmm1, xmm14
call rbx
lea rcx, [rbp + 0xb0]
call fcn.180068c80
mov rsi, qword [rsp + 0x438]
movaps xmm6, xmmword [rsp + 0x3f0]
movaps xmm7, xmmword [rsp + 0x3e0]
mov rbx, qword [rsp + 0x430]
mov r13, qword [rsp + 0x410]
mov rdi, qword [rsp + 0x440]
mov r14, qword [rsp + 0x408]
mov r15, qword [rsp + 0x400]
movaps xmm14, xmmword [rsp + 0x370]
mov rcx, qword [rbp + 0x250]
xor rcx, rsp
call fcn.1801a9230
add rsp, 0x420
pop rbp
ret
call fcn.1800737d0
int3