Function at 0x14004cfb0
Capabilities:
Log keystrokes via polling

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x10], rsi
mov qword [rax + 0x18], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0xde8]
sub rsp, 0xec0
movaps xmmword [rax - 0x38], xmm6
movaps xmmword [rax - 0x48], xmm7
movaps xmmword [rax - 0x58], xmm8
movaps xmmword [rax - 0x68], xmm9
movaps xmmword [rax - 0x78], xmm10
movaps xmmword [rax - 0x88], xmm11
movaps xmmword [rax - 0x98], xmm12
movaps xmmword [rax - 0xa8], xmm13
movaps xmmword [rax - 0xb8], xmm14
movaps xmmword [rax - 0xc8], xmm15
mov rax, qword [0x140154f00]
xor rax, rsp
mov qword [rbp + 0xd10], rax
mov ecx, 0x74
call qword [sym.imp.USER32.dll_GetAsyncKeyState]
test al, 1
je 0x14004d06c
mov rax, qword [0x14015e8d0]
mov qword [0x14015e8d8], rax
lea rcx, [0x14015e900]
call fcn.1400559a0
movabs rdx, 0x2001ffff00000000
mov r8d, 1
mov rcx, qword [0x14015e548]
call qword [sym.imp.VMM.dll_VMMDLL_ConfigSet]
mov rcx, qword [0x14015e698]
add rcx, 0x9b0
call fcn.140057560
lea rcx, [rax + 0x248]
call fcn.140057560
lea rcx, [rax + 0x18]
call fcn.1400571d0
mov edx, eax
lea rcx, [rbp + 0xac0]
call fcn.140047ab0
nop
lea rcx, [rbp + 0xac0]
call fcn.140043590
lea rdx, [rbp + 0xac0]
cmp qword [rbp + 0xad8], 0x10
cmovae rdx, qword [rbp + 0xac0]
mov r8, qword [rbp + 0xad0]
lea rbx, [0x140155020]
mov rcx, rbx
call fcn.140056260
nop
mov rdx, qword [rbp + 0xad8]
cmp rdx, 0x10
jb 0x14004d121
inc rdx
mov rcx, qword [rbp + 0xac0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004d11c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
jbe 0x14004d11c
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
int3
call fcn.14008da28
call fcn.14004c790
cmp qword [0x140155038], 0x10
setae r14b
mov rcx, rbx
mov rdi, qword [0x140155020]
cmovae rcx, rdi
xor r13d, r13d
mov rsi, qword [0x140155030]
cmp rsi, 7
jne 0x14004d167
mov r8, rsi
lea rdx, str.Sheriff
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14004d2a9
mov rdx, rbx
test r14b, r14b
cmovne rdx, rdi
cmp rsi, 5
jne 0x14004d1a7
mov rcx, r13
lea r8, str.Ghost
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r8 + rcx - 1]
jne 0x14004d19a
cmp rcx, 5
jne 0x14004d181
mov eax, r13d
jmp 0x14004d19f
sbb eax, eax
or eax, 1
test eax, eax
je 0x14004d2a9
mov rdx, rbx
test r14b, r14b
cmovne rdx, rdi
cmp rsi, 5
jne 0x14004d1e7
mov rcx, r13
lea r8, str.Judge
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r8 + rcx - 1]
jne 0x14004d1da
cmp rcx, 5
jne 0x14004d1c1
mov eax, r13d
jmp 0x14004d1df
sbb eax, eax
or eax, 1
test eax, eax
je 0x14004d2a9
mov rdx, rbx
test r14b, r14b
cmovne rdx, rdi
cmp rsi, 5
jne 0x14004d227
mov rcx, r13
lea r8, str.Bucky
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r8 + rcx - 1]
jne 0x14004d21a
cmp rcx, 5
jne 0x14004d201
mov eax, r13d
jmp 0x14004d21f
sbb eax, eax
or eax, 1
test eax, eax
je 0x14004d2a9
mov rdx, rbx
test r14b, r14b
cmovne rdx, rdi
cmp rsi, 6
jne 0x14004d263
mov rcx, r13
lea r8, str.Shorty
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r8 + rcx - 1]
jne 0x14004d25a
cmp rcx, 6
jne 0x14004d241
mov eax, r13d
jmp 0x14004d25f
sbb eax, eax
or eax, 1
test eax, eax
je 0x14004d2a9
mov rcx, rbx
test r14b, r14b
cmovne rcx, rdi
cmp rsi, 0xa
jne 0x14004d286
mov r8, rsi
lea rdx, str.Headhunter
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
je 0x14004d2a9
test r14b, r14b
cmovne rbx, rdi
cmp rsi, 8
jne 0x14004d2ad
mov r8, rsi
lea rdx, str.Guardian
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcmp
test eax, eax
jne 0x14004d2ad
mov al, 1
jmp 0x14004d2af
xor al, al
mov byte [0x14015e311], al
movss xmm2, dword [0x14016185c]
xorps xmm14, xmm14
movss xmm1, dword [0x1401550f4]
movss xmm5, dword [0x14011d868]
ucomiss xmm1, xmm5
jp 0x14004d2f6
jne 0x14004d2f6
ucomiss xmm2, xmm14
jp 0x14004d2f6
jne 0x14004d2f6
movss xmm0, dword [0x140161860]
addss xmm0, xmm5
movss dword [0x140161860], xmm0
jmp 0x14004d2fe
movss xmm0, dword [0x140161860]
movss xmm13, dword [0x14011d8e8]
movss xmm3, dword [0x14011d8dc]
comiss xmm0, xmm3
jbe 0x14004d334
ucomiss xmm2, xmm14
jp 0x14004d334
jne 0x14004d334
movaps xmm0, xmm13
movss dword [0x140161860], xmm0
addss xmm1, xmm5
movss dword [0x1401550f4], xmm1
movss xmm4, dword [0x14011da88]
comiss xmm1, xmm3
jbe 0x14004d361
ucomiss xmm2, xmm14
jp 0x14004d361
jne 0x14004d361
movaps xmm1, xmm13
movss dword [0x1401550f4], xmm1
addss xmm0, xmm4
movss dword [0x140161860], xmm0
comiss xmm5, xmm0
jbe 0x14004d385
ucomiss xmm1, xmm13
jp 0x14004d385
jne 0x14004d385
xorps xmm0, xmm0
movss dword [0x140161860], xmm0
addss xmm2, xmm5
movss dword [0x14016185c], xmm2
comiss xmm2, xmm3
jbe 0x14004d3aa
ucomiss xmm0, xmm14
jp 0x14004d3aa
jne 0x14004d3aa
movaps xmm2, xmm13
movss dword [0x14016185c], xmm2
addss xmm1, xmm4
movss dword [0x1401550f4], xmm1
comiss xmm5, xmm1
jbe 0x14004d3ce
ucomiss xmm2, xmm13
jp 0x14004d3ce
jne 0x14004d3ce
xorps xmm1, xmm1
movss dword [0x1401550f4], xmm1
addss xmm0, xmm5
movss dword [0x140161860], xmm0
comiss xmm0, xmm3
jbe 0x14004d3f3
ucomiss xmm1, xmm14
jp 0x14004d3f3
jne 0x14004d3f3
movaps xmm0, xmm13
movss dword [0x140161860], xmm0
addss xmm2, xmm4
movss dword [0x14016185c], xmm2
comiss xmm5, xmm2
jbe 0x14004d422
ucomiss xmm1, xmm14
jp 0x14004d422
jne 0x14004d422
mov dword [0x14016185c], r13d
addss xmm0, xmm4
movss dword [0x140161860], xmm0
comiss xmm5, xmm0
jbe 0x14004d422
mov dword [0x1401550f4], 0x3c23d70a
call qword [sym.imp.MSVCP140.dll__Query_perf_frequency]
call qword [sym.imp.MSVCP140.dll__Query_perf_counter]
mov ebx, 0x539
mov dword [rsp + 0x50], ebx
movss xmm0, dword [0x14011da7c]
movss dword [rbp], xmm0
movss dword [rsp + 0x5c], xmm0
mov rcx, qword [0x14015e8d8]
mov r8, qword [0x14015e8d0]
sub rcx, r8
movabs rax, 0xe38e38e38e38e39
imul rcx
sar rdx, 2
mov rax, rdx
shr rax, 0x3f
add rdx, rax
mov ecx, r13d
mov dword [rsp + 0x54], ecx
movsxd r12, edx
mov qword [rbp + 0x10], r12
movabs rsi, 0xffffff7fffffffff
movabs r10, 0xffffffff00000000
movabs r15, 0xffffff8000000000
test edx, edx
jle 0x14004dae9
mov r12, r13
mov edi, dword [rsp + 0x60]
mov ebx, dword [rsp + 0x60]
nop word [rax + rax]
lea rax, [r12 + r12*8]
movups xmm0, xmmword [r8 + rax*8]
movaps xmmword [rbp + 0xbc0], xmm0
movups xmm1, xmmword [r8 + rax*8 + 0x10]
movaps xmmword [rbp + 0xbd0], xmm1
movups xmm0, xmmword [r8 + rax*8 + 0x20]
movaps xmmword [rbp + 0xbe0], xmm0
movups xmm1, xmmword [r8 + rax*8 + 0x30]
movsd xmm0, qword [r8 + rax*8 + 0x40]
movsd qword [rbp + 0xc00], xmm0
mov r14d, ecx
mov rax, qword [0x14015e7f0]
lea r9, [rax + r14*4]
psrldq xmm1, 8
movq rcx, xmm1
add rcx, 0x1b0
mov rdx, rcx
and rdx, r10
lea rax, [rdx + r15]
mov qword [rsp + 0x20], r13
mov r8d, 4
test rsi, rax
je 0x14004d544
mov rdx, rcx
mov rcx, qword [0x14015e630]
jmp 0x14004d566
lea rax, [rdx + r15]
mov rdx, rcx
and edx, 0xffffff
add rdx, qword [0x14015e550]
test rsi, rax
cmovne rdx, rcx
mov rcx, qword [0x14015e538]
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_PrepareEx]
lea r15, [r14 + r14*2]
shl r15, 4
mov r9, qword [0x14015e838]
add r9, r15
mov rsi, qword [rbp + 0xbe8]
mov rcx, rsi
movabs rax, 0xffffffff00000000
and rcx, rax
movabs rdx, 0xffffff8000000000
lea rax, [rcx + rdx]
movabs r8, 0xffffff7fffffffff
mov qword [rsp + 0x20], r13
test r8, rax
je 0x14004d5c3
mov rdx, rsi
mov rcx, qword [0x14015e630]
jmp 0x14004d5e5
lea rax, [rcx + rdx]
mov rdx, rsi
and edx, 0xffffff
add rdx, qword [0x14015e550]
test r8, rax
cmovne rdx, rsi
mov rcx, qword [0x14015e538]
mov r8d, 0x30
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_PrepareEx]
mov r9, qword [0x14015e708]
add r9, r15
lea r10, [rsi + 0x180]
mov rcx, r10
movabs rax, 0xffffffff00000000
and rcx, rax
movabs rdx, 0xffffff8000000000
lea rax, [rcx + rdx]
movabs r8, 0xffffff7fffffffff
mov qword [rsp + 0x20], r13
test r8, rax
je 0x14004d640
mov rdx, r10
mov rcx, qword [0x14015e630]
jmp 0x14004d662
lea rax, [rcx + rdx]
mov rdx, r10
and edx, 0xffffff
add rdx, qword [0x14015e550]
test r8, rax
cmovne rdx, r10
mov rcx, qword [0x14015e538]
mov r8d, 0x30
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_PrepareEx]
mov r9, qword [0x14015e7d8]
add r9, r15
mov r10, qword [rbp + 0xbd8]
add r10, 0x250
mov rcx, r10
movabs rax, 0xffffffff00000000
and rcx, rax
movabs rdx, 0xffffff8000000000
lea rax, [rcx + rdx]
movabs r8, 0xffffff7fffffffff
mov qword [rsp + 0x20], r13
test r8, rax
je 0x14004d6c4
mov rdx, r10
mov rcx, qword [0x14015e630]
jmp 0x14004d6e6
lea rax, [rcx + rdx]
mov rdx, r10
and edx, 0xffffff
add rdx, qword [0x14015e550]
test r8, rax
cmovne rdx, r10
mov rcx, qword [0x14015e538]
mov r8d, 0x30
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_PrepareEx]
mov rax, qword [0x14015e6f0]
lea r9, [rax + r14*4]
mov r13, qword [rbp + 0xbd0]
mov r10, qword [rbp + 0xbc0]
add r10, 0x100
add r10, r13
mov rcx, r10
movabs rax, 0xffffffff00000000
and rcx, rax
movabs rdx, 0xffffff8000000000
lea rax, [rcx + rdx]
movabs r8, 0xffffff7fffffffff
mov qword [rsp + 0x20], 0
test r8, rax
je 0x14004d757
mov rdx, r10
mov rcx, qword [0x14015e630]
jmp 0x14004d779
lea rax, [rcx + rdx]
mov rdx, r10
and edx, 0xffffff
add rdx, qword [0x14015e550]
test r8, rax
cmovne rdx, r10
mov rcx, qword [0x14015e538]
mov r8d, 1
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_PrepareEx]
mov rax, qword [0x14015e820]
lea r9, [rax + r14*4]
lea rcx, [r13 + 0x18]
mov rdx, rcx
movabs rax, 0xffffffff00000000
and rdx, rax
movabs r8, 0xffffff8000000000
lea rax, [rdx + r8]
movabs r10, 0xffffff7fffffffff
mov qword [rsp + 0x20], 0
test r10, rax
je 0x14004d7d6
mov rdx, rcx
mov rcx, qword [0x14015e630]
jmp 0x14004d7f8
lea rax, [rdx + r8]
mov rdx, rcx
and edx, 0xffffff
add rdx, qword [0x14015e550]
test r10, rax
cmovne rdx, rcx
mov rcx, qword [0x14015e538]
mov r8d, 4
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_PrepareEx]
lea r13, [r14 + r14*2]
mov rax, qword [0x14015e808]
lea r9, [rax + r13*4]
mov rcx, qword [rbp + 0xbe0]
add rcx, 0xfc
mov rdx, rcx
movabs rax, 0xffffffff00000000
and rdx, rax
movabs r8, 0xffffff8000000000
lea rax, [rdx + r8]
movabs r10, 0xffffff7fffffffff
mov qword [rsp + 0x20], 0
test r10, rax
je 0x14004d863
mov rdx, rcx
mov rcx, qword [0x14015e630]
jmp 0x14004d885
lea rax, [rdx + r8]
mov rdx, rcx
and edx, 0xffffff
add rdx, qword [0x14015e550]
test r10, rax
cmovne rdx, rcx
mov rcx, qword [0x14015e538]
mov r8d, 0xc
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_PrepareEx]
mov r14d, dword [rbp + 0xc00]
mov eax, dword [0x140155090]
test eax, eax
jne 0x14004d8a7
lea edi, [rax + 8]
jmp 0x14004d8e4
cmp eax, 1
jne 0x14004d8cf
cmp r14d, 0x65
jne 0x14004d8b7
lea edi, [rax + 0x14]
jmp 0x14004d8e4
cmp r14d, 0x67
jne 0x14004d8c3
lea edi, [r14 - 0x5e]
jmp 0x14004d8e4
cmp r14d, 0x68
jne 0x14004d8e4
lea edi, [r14 - 0x53]
jmp 0x14004d8e4
cmp eax, 2
jne 0x14004d8d9
lea edi, [rax + 4]
jmp 0x14004d8e4
cmp eax, 3
mov eax, 3
cmove edi, eax
mov r9, qword [0x14015e7b8]
add r9, r15
movsxd rax, edi
lea rcx, [rax + rax*2]
shl rcx, 4
add rcx, rsi
mov rdx, rcx
movabs rax, 0xffffffff00000000
and rdx, rax
movabs r8, 0xffffff8000000000
lea rax, [rdx + r8]
movabs r10, 0xffffff7fffffffff
mov qword [rsp + 0x20], 0
test r10, rax
je 0x14004d93e
mov rdx, rcx
mov rcx, qword [0x14015e630]
jmp 0x14004d960
lea rax, [rdx + r8]
mov rdx, rcx
and edx, 0xffffff
add rdx, qword [0x14015e550]
test r10, rax
cmovne rdx, rcx
mov rcx, qword [0x14015e538]
mov r8d, 0x30
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_PrepareEx]
mov eax, dword [reloc.OLEAUT32.dll_SysReAllocString]
test eax, eax
jne 0x14004d97b
lea ebx, [rax + 8]
jmp 0x14004d9b8
cmp eax, 1
jne 0x14004d9a3
cmp r14d, 0x65
jne 0x14004d98b
lea ebx, [rax + 0x14]
jmp 0x14004d9b8
cmp r14d, 0x67
jne 0x14004d997
lea ebx, [r14 - 0x5e]
jmp 0x14004d9b8
cmp r14d, 0x68
jne 0x14004d9b8
lea ebx, [r14 - 0x53]
jmp 0x14004d9b8
cmp eax, 2
jne 0x14004d9ad
lea ebx, [rax + 4]
jmp 0x14004d9b8
cmp eax, 3
mov eax, 3
cmove ebx, eax
mov r9, qword [0x14015e7a0]
add r9, r15
movsxd r14, ebx
lea rcx, [r14 + r14*2]
shl rcx, 4
add rcx, rsi
mov rdx, rcx
movabs rax, 0xffffffff00000000
and rdx, rax
movabs r15, 0xffffff8000000000
lea rax, [rdx + r15]
movabs r8, 0xffffff7fffffffff
mov qword [rsp + 0x20], 0
test r8, rax
je 0x14004da12
mov rdx, rcx
mov rcx, qword [0x14015e630]
jmp 0x14004da34
lea rax, [rdx + r15]
mov rdx, rcx
and edx, 0xffffff
add rdx, qword [0x14015e550]
test r8, rax
cmovne rdx, rcx
mov rcx, qword [0x14015e538]
mov r8d, 0x30
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_PrepareEx]
mov rax, qword [0x14015e850]
lea r9, [rax + r13*4]
lea rax, [r14 + r14*2]
lea rcx, [rsi + rax*4]
mov rdx, rcx
movabs rax, 0xffffffff00000000
and rdx, rax
lea rax, [rdx + r15]
movabs rsi, 0xffffff7fffffffff
mov r8d, 0xc
test rsi, rax
je 0x14004da88
mov rdx, rcx
mov rcx, qword [0x14015e630]
jmp 0x14004daaa
lea rax, [rdx + r15]
mov rdx, rcx
and edx, 0xffffff
add rdx, qword [0x14015e550]
test rsi, rax
cmovne rdx, rcx
mov rcx, qword [0x14015e538]
xor r13d, r13d
mov qword [rsp + 0x20], r13
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_PrepareEx]
mov ecx, dword [rsp + 0x54]
inc ecx
mov dword [rsp + 0x54], ecx
inc r12
cmp r12, qword [rbp + 0x10]
jge 0x14004dae1
mov r8, qword [0x14015e8d0]
movabs r10, 0xffffffff00000000
jmp 0x14004d4c0
mov ebx, dword [rsp + 0x50]
mov r12, qword [rbp + 0x10]
mov qword [rbp + 0xa80], 0
mov dword [rbp + 0xa88], 0
mov qword [rbp + 0xaa0], 0
mov dword [rbp + 0xaa8], 0
mov r10, qword [0x14015e690]
add r10, 0x448
mov rcx, r10
movabs rdi, 0xffffffff00000000
and rcx, rdi
lea rax, [rcx + r15]
mov qword [rsp + 0x20], r13
lea r9, [rbp + 0xa80]
mov r8d, 0xc
mov rdx, r10
test rsi, rax
je 0x14004db58
mov rcx, qword [0x14015e630]
jmp 0x14004db77
lea rax, [rcx + r15]
and edx, 0xffffff
add rdx, qword [0x14015e550]
test rsi, rax
cmovne rdx, r10
mov rcx, qword [0x14015e538]
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_PrepareEx]
mov rcx, qword [0x14015e328]
add rcx, 0x164
mov rdx, rcx
and rdx, rdi
lea rax, [rdx + r15]
mov qword [rsp + 0x20], r13
lea r9, [rbp + 0xaa0]
mov r8d, 0xc
test rsi, rax
je 0x14004dbb8
mov rdx, rcx
mov rcx, qword [0x14015e630]
jmp 0x14004dbda
lea rax, [rdx + r15]
mov rdx, rcx
and edx, 0xffffff
add rdx, qword [0x14015e550]
test rsi, rax
cmovne rdx, rcx
mov rcx, qword [0x14015e538]
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_PrepareEx]
mov rcx, qword [0x14015e538]
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_ExecuteRead]
mov rcx, qword [0x14015e630]
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_ExecuteRead]
mov edx, 4
mov r8d, 0x80000131
mov rcx, qword [0x14015e538]
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_Clear]
mov r8d, 0x131
mov edx, dword [0x14015e508]
mov rcx, qword [0x14015e630]
call qword [sym.imp.VMM.dll_VMMDLL_Scatter_Clear]
mov r14d, r13d
mov dword [rbp - 0x60], r13d
test r12, r12
jle 0x1400500af
mov r12, r13
lea rsi, str._H:
movss xmm1, dword [0x14011da60]
nop dword [rax]
lea rcx, [r12 + r12*8]
mov rdx, qword [0x14015e8d0]
movups xmm0, xmmword [rdx + rcx*8]
movups xmmword [rbp + 0x490], xmm0
movups xmm0, xmmword [rdx + rcx*8 + 0x10]
movups xmmword [rbp + 0x4a0], xmm0
movaps xmmword [rbp + 0x870], xmm0
movups xmm0, xmmword [rdx + rcx*8 + 0x20]
movups xmmword [rbp + 0x4b0], xmm0
movups xmm0, xmmword [rdx + rcx*8 + 0x30]
movups xmmword [rbp + 0x4c0], xmm0
movaps xmmword [rbp + 0x890], xmm0
movsd xmm0, qword [rdx + rcx*8 + 0x40]
movsd qword [rbp + 0x28], xmm0
movsd qword [rbp + 0x8a0], xmm0
mov rax, qword [0x14015e7f0]
movss xmm15, dword [rax + r12*4]
comiss xmm14, xmm15
jae 0x14004dcc8
comiss xmm15, xmm1
ja 0x14004dcc8
mov al, 1
jmp 0x14004dcca
xor al, al
mov byte [rdx + rcx*8 + 0x44], al
cmp byte [rbp + 0x8a4], 0
je 0x140050038
lea r10, [r12 + r12*2]
add r10, r10
mov r9, qword [0x14015e7d8]
mov rax, qword [0x14015e838]
movups xmm0, xmmword [r9 + r10*8]
movaps xmmword [rbp + 0x6c0], xmm0
movups xmm1, xmmword [r9 + r10*8 + 0x10]
movaps xmmword [rbp + 0x6d0], xmm1
movups xmm0, xmmword [r9 + r10*8 + 0x20]
movaps xmmword [rbp + 0x6e0], xmm0
movups xmm1, xmmword [rax + r10*8]
movaps xmmword [rbp + 0x630], xmm1
movups xmm0, xmmword [rax + r10*8 + 0x10]
movaps xmmword [rbp + 0x640], xmm0
movups xmm1, xmmword [rax + r10*8 + 0x20]
movaps xmmword [rbp + 0x650], xmm1
lea rdx, [rbp + 0xac0]
lea rcx, [rbp + 0x6c0]
call fcn.140047340
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
movups xmm8, xmmword [rax + 0x20]
movups xmm9, xmmword [rax + 0x30]
lea rdx, [rbp + 0x380]
lea rcx, [rbp + 0x630]
call fcn.140047340
movaps xmmword [rbp + 0x940], xmm6
movaps xmmword [rbp + 0x950], xmm7
movaps xmmword [rbp + 0x960], xmm8
movaps xmmword [rbp + 0x970], xmm9
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x980], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x990], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x9a0], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x9b0], xmm1
lea r8, [rbp + 0x940]
lea rdx, [rbp + 0x980]
lea rcx, [rbp + 0x3c0]
call fcn.1400476a0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0xb30], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0xb40], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0xb50], xmm0
movups xmm12, xmmword [rax + 0x30]
movaps xmm11, xmm12
shufps xmm11, xmm12, 0x55
movaps xmm10, xmm12
shufps xmm10, xmm12, 0xaa
movss dword [rbp + 0x2b8], xmm10
mov rax, qword [0x14015e708]
movups xmm0, xmmword [r9 + r10*8]
movaps xmmword [rbp + 0x5d0], xmm0
movups xmm1, xmmword [r9 + r10*8 + 0x10]
movaps xmmword [rbp + 0x5e0], xmm1
movups xmm0, xmmword [r9 + r10*8 + 0x20]
movaps xmmword [rbp + 0x5f0], xmm0
movups xmm1, xmmword [rax + r10*8]
movaps xmmword [rbp + 0x570], xmm1
movups xmm0, xmmword [rax + r10*8 + 0x10]
movaps xmmword [rbp + 0x580], xmm0
movups xmm1, xmmword [rax + r10*8 + 0x20]
movaps xmmword [rbp + 0x590], xmm1
lea rdx, [rbp + 0xac0]
lea rcx, [rbp + 0x5d0]
call fcn.140047340
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
movups xmm8, xmmword [rax + 0x20]
movups xmm9, xmmword [rax + 0x30]
lea rdx, [rbp + 0x380]
lea rcx, [rbp + 0x570]
call fcn.140047340
movaps xmmword [rbp + 0x9c0], xmm6
movaps xmmword [rbp + 0x9d0], xmm7
movaps xmmword [rbp + 0x9e0], xmm8
movaps xmmword [rbp + 0x9f0], xmm9
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0x900], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x910], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x920], xmm0
movups xmm1, xmmword [rax + 0x30]
movaps xmmword [rbp + 0x930], xmm1
lea r8, [rbp + 0x9c0]
lea rdx, [rbp + 0x900]
lea rcx, [rbp + 0x3c0]
call fcn.1400476a0
movups xmm0, xmmword [rax]
movaps xmmword [rbp + 0xb30], xmm0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0xb40], xmm1
movups xmm0, xmmword [rax + 0x20]
movaps xmmword [rbp + 0xb50], xmm0
movups xmm9, xmmword [rax + 0x30]
movups xmmword [rbp + 0x110], xmm9
movaps xmm6, xmm9
shufps xmm6, xmm9, 0x55
movaps xmmword [rbp + 0x40], xmm6
movaps xmm8, xmm9
shufps xmm8, xmm9, 0xaa
movaps xmmword [rbp + 0x400], xmm8
movss dword [rbp + 0x448], xmm8
movaps xmm7, xmm10
subss xmm7, dword [0x14011d99c]
movss dword [rbp + 0x120], xmm12
movss dword [rbp + 0x124], xmm11
movss dword [rbp + 0x128], xmm10
lea rdx, [rbp + 0x120]
lea rcx, [rbp + 0xa20]
call fcn.140047d70
subss xmm10, dword [0x14011d9cc]
movss dword [rbp + 0x130], xmm12
movss dword [rbp + 0x134], xmm11
movss dword [rbp + 0x138], xmm10
lea rdx, [rbp + 0x130]
lea rcx, [rbp + 0xa30]
call fcn.140047d70
movss dword [rbp + 0x140], xmm9
movss dword [rbp + 0x144], xmm6
movss dword [rbp + 0x148], xmm8
lea rdx, [rbp + 0x140]
lea rcx, [rbp + 0xa10]
call fcn.140047d70
movaps xmm0, xmm8
addss xmm0, dword [0x14011d9cc]
movss dword [rbp + 0x150], xmm9
movss dword [rbp + 0x154], xmm6
movss dword [rbp + 0x158], xmm0
lea rdx, [rbp + 0x150]
lea rcx, [rbp + 0xb00]
call fcn.140047d70
movss xmm1, dword [rbp + 0xb04]
movss xmm0, dword [rbp + 0xa24]
movss dword [rsp + 0x58], xmm0
subss xmm1, xmm0
andps xmm1, xmmword [0x14011df00]
movss dword [rbp - 0x70], xmm1
cvtps2pd xmm0, xmm1
mulsd xmm0, qword [0x14011d930]
cvtpd2ps xmm8, xmm0
movss dword [rsp + 0x60], xmm8
movaps xmm0, xmmword [rbp + 0x400]
addss xmm0, dword [0x14011d9dc]
movss dword [rsp + 0x54], xmm0
movaps xmm6, xmmword [rbp + 0x400]
addss xmm6, dword [0x14011d9e4]
movaps xmm0, xmm12
unpcklps xmm0, xmm11
movaps xmmword [rbp + 0xe0], xmm0
movsd qword [rbp + 0x290], xmm0
mov r15d, dword [rbp + 0x2b8]
mov dword [rbp + 0x298], r15d
lea rdx, [rbp + 0x290]
lea rcx, [rbp + 0xb10]
call fcn.140047d70
movaps xmm0, xmm9
movaps xmm10, xmmword [rbp + 0x40]
unpcklps xmm0, xmm10
movsd qword [rbp + 0x2a0], xmm0
mov eax, dword [rbp + 0x448]
mov dword [rbp + 0x2a8], eax
lea rdx, [rbp + 0x2a0]
lea rcx, [rbp + 0xb20]
call fcn.140047d70
movss dword [rbp + 0x160], xmm12
movss dword [rbp + 0x164], xmm11
movss dword [rbp + 0x168], xmm7
lea rdx, [rbp + 0x160]
lea rcx, [rbp + 0xa00]
call fcn.140047d70
movss dword [rbp + 0x170], xmm9
movss dword [rbp + 0x174], xmm10
movss xmm0, dword [rsp + 0x54]
movss dword [rbp + 0x178], xmm0
lea rdx, [rbp + 0x170]
lea rcx, [rbp + 0xb80]
call fcn.140047d70
movss dword [rbp + 0x180], xmm9
movss dword [rbp + 0x184], xmm10
movss dword [rbp + 0x188], xmm6
lea rdx, [rbp + 0x180]
lea rcx, [rbp + 0xb90]
call fcn.140047d70
xor ecx, ecx
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [rbp - 0x68], eax
mov ecx, 1
call qword [sym.imp.USER32.dll_GetSystemMetrics]
mov dword [rbp - 0x64], eax
mov rcx, qword [0x14015e6f0]
cmp byte [0x14015508c], 0
je 0x14004e1bb
cmp dword [rcx + r12*4], 0
je 0x140050030
movss xmm10, dword [rbp + 0xa14]
movss dword [rbp - 0x6c], xmm10
movss xmm9, dword [rbp + 0xa10]
movss dword [rbp + 4], xmm9
cmp byte [0x14015504b], 1
jne 0x14004e2a7
movups xmm0, xmmword [0x1401550a4]
movups xmmword [rsp + 0x70], xmm0
mov rax, qword [0x14015e318]
mov rax, qword [rax + 0x4890]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.140008320
mov rbx, rax
lea rcx, [rsp + 0x70]
call fcn.140004c40
mov edi, eax
movss dword [rbp + 0x70], xmm9
movss dword [rbp + 0x74], xmm10
movaps xmm2, xmm8
divss xmm2, dword [0x14011d99c]
movss xmm8, dword [0x14011d8a8]
test eax, 0xff000000
je 0x14004e2b0
comiss xmm8, xmm2
ja 0x14004e2b0
subss xmm2, xmm8
mov dword [rsp + 0x28], 0x3f
movss xmm0, dword [0x14011d9b0]
movss dword [rsp + 0x20], xmm0
movaps xmm3, xmm14
lea rdx, [rbp + 0x70]
mov rcx, rbx
call fcn.140026170
movss dword [rsp + 0x28], xmm13
mov dword [rsp + 0x20], 1
mov r9d, edi
mov r8d, dword [rbx + 0x78]
mov rdx, qword [rbx + 0x80]
mov rcx, rbx
call fcn.1400247c0
mov dword [rbx + 0x78], r13d
jmp 0x14004e2b0
movss xmm8, dword [0x14011d8a8]
cvtps2pd xmm2, xmm15
movq r8, xmm2
lea rdx, str._H:__.f_
lea rcx, [rbp + 0xbc0]
call fcn.140056ea0
mov qword [rbp + 0xa40], r13
mov qword [rbp + 0xa50], r13
mov qword [rbp + 0xa58], sendto
mov byte [rbp + 0xa40], 0
lea rax, [rbp + 0xbc0]
mov rdi, 0xffffffffffffffff
mov r8, rdi
nop dword [rax]
inc r8
cmp byte [rax + r8], 0
jne 0x14004e300
lea rdx, [rbp + 0xbc0]
lea rcx, [rbp + 0xa40]
call fcn.140056260
nop
cvttss2si r8d, xmm15
lea r9, [rbp + 0xbb5]
test r8d, r8d
jns 0x14004e370
neg r8d
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14004e332
dec r9
mov byte [r9], 0x2d
jmp 0x14004e39a
dec r9
mov eax, 0xcccccccd
mul r8d
shr edx, 3
movzx eax, dl
shl al, 2
lea ecx, [rax + rdx]
add cl, cl
sub r8b, cl
add r8b, 0x30
mov byte [r9], r8b
mov r8d, edx
test edx, edx
jne 0x14004e370
mov qword [rbp - 0x40], r13
mov r8, r13
mov qword [rbp - 0x30], r13
mov ecx, 0xf
mov qword [rbp - 0x28], rcx
mov byte [rbp - 0x40], 0
lea rax, [rbp + 0xbb5]
cmp r9, rax
je 0x14004e3dc
lea r8, [rbp + 0xbb5]
sub r8, r9
mov rdx, r9
lea rcx, [rbp - 0x40]
call fcn.140056260
mov rcx, qword [rbp - 0x28]
mov r8, qword [rbp - 0x30]
mov rax, rcx
sub rax, r8
cmp rax, 4
jb 0x14004e470
lea rax, [r8 + 4]
mov qword [rbp - 0x30], rax
lea rbx, [rbp - 0x40]
cmp rcx, 0x10
cmovae rbx, qword [rbp - 0x40]
lea rax, [0x14011d100]
cmp rax, rbx
jbe 0x14004e428
lea rax, [rbx + r8]
cmp rsi, rax
ja 0x14004e428
cmp rbx, rsi
ja 0x14004e420
mov rdi, r13
jmp 0x14004e42d
mov rdi, rbx
sub rdi, rsi
jmp 0x14004e42d
mov edi, 4
inc r8
lea rcx, [rbx + 4]
mov rdx, rbx
call sub.VCRUNTIME140.dll_memmove
mov r8, rdi
mov rdx, rsi
mov rcx, rbx
call sub.VCRUNTIME140.dll_memcpy
mov r8d, 4
sub r8, rdi
lea rdx, [rsi + 4]
add rdx, rdi
lea rcx, [rbx + rdi]
call sub.VCRUNTIME140.dll_memcpy
lea rax, [rbp - 0x40]
mov rdi, 0xffffffffffffffff
jmp 0x14004e487
mov qword [rsp + 0x28], 4
mov edx, 4
lea rcx, [rbp - 0x40]
call fcn.140058dd0
mov qword [rbp - 0x20], r13
mov qword [rbp - 0x10], r13
mov qword [rbp - 8], r13
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x20], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x10], xmm1
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], sendto
mov byte [rax], 0
mov rcx, qword [rbp - 0x10]
mov rdx, qword [rbp - 8]
mov rax, rdx
sub rax, rcx
cmp rax, 1
jb 0x14004e4e6
lea rax, [rcx + 1]
mov qword [rbp - 0x10], rax
lea rax, [rbp - 0x20]
cmp rdx, 0x10
cmovae rax, qword [rbp - 0x20]
mov word [rax + rcx], 0x5d
lea rax, [rbp - 0x20]
jmp 0x14004e504
mov qword [rsp + 0x20], 1
lea r9, [0x14011c1dc]
mov edx, 1
lea rcx, [rbp - 0x20]
call fcn.140057ed0
movups xmm6, xmmword [rax]
movups xmm7, xmmword [rax + 0x10]
mov qword [rax + 0x10], r13
mov qword [rax + 0x18], sendto
mov byte [rax], 0
mov rdx, qword [rbp + 0xa58]
cmp rdx, 0x10
jb 0x14004e55b
inc rdx
mov rcx, qword [rbp + 0xa40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004e556
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005008c
call fcn.14008da28
movups xmmword [rbp + 0xa40], xmm6
movups xmmword [rbp + 0xa50], xmm7
mov rdx, qword [rbp - 8]
cmp rdx, 0x10
jb 0x14004e5a4
inc rdx
mov rcx, qword [rbp - 0x20]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004e59f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140050093
call fcn.14008da28
mov qword [rbp - 0x10], r13
mov qword [rbp - 8], sendto
mov byte [rbp - 0x20], 0
mov rdx, qword [rbp - 0x28]
cmp rdx, 0x10
jb 0x14004e5ef
inc rdx
mov rcx, qword [rbp - 0x40]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004e5ea
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005009a
call fcn.14008da28
mov qword [rbp - 0x30], r13
mov qword [rbp - 0x28], sendto
mov byte [rbp - 0x40], 0
lea rax, [rbp + 0xa40]
cmp qword [rbp + 0xa58], 0x10
cmovae rax, qword [rbp + 0xa40]
mov rbx, qword [0x14015e318]
movss xmm6, dword [rbx + 0x3c18]
test rax, rax
jne 0x14004e630
movaps xmm7, xmm14
jmp 0x14004e682
mov qword [rsp + 0x30], r13
mov qword [rsp + 0x28], rax
movss xmm0, dword [0x14011daa4]
movss dword [rsp + 0x20], xmm0
movss xmm3, dword [rbp]
movaps xmm2, xmm6
lea rdx, [rbp + 8]
mov rcx, qword [rbx + 0x3c10]
call fcn.14002b580
movss xmm0, dword [rbp + 8]
addss xmm0, dword [0x14011d8e0]
cvttss2si eax, xmm0
movd xmm7, eax
cvtdq2ps xmm7, xmm7
movss dword [rbp + 8], xmm7
movss xmm6, dword [rbp + 0xc]
movss xmm12, dword [rbp + 0xa00]
movss xmm11, dword [rbp + 0xb84]
cmp byte [0x140155086], 1
jne 0x14004ea9b
cmp dword [0x1401550a0], 0
jne 0x14004e7c4
mov rax, qword [rbx + 0x4890]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.140008320
mov r10, rax
lea r8, [rbp + 0xa40]
cmp qword [rbp + 0xa58], 0x10
cmovae r8, qword [rbp + 0xa40]
mov rbx, qword [0x14015e318]
mov qword [rbp + 0x270], 0x3f800000
mov dword [rbp + 0x278], 0
movss xmm0, dword [rbx + 0x37e0]
movss dword [rbp + 0x27c], xmm0
lea rcx, [rbp + 0x270]
call fcn.140004c40
mov r9d, eax
mulss xmm6, xmm8
movss xmm0, dword [rsp + 0x58]
subss xmm0, dword [0x14011d99c]
addss xmm6, xmm0
mulss xmm7, xmm8
movss xmm0, dword [rbp + 0xa20]
subss xmm0, xmm7
movss dword [rbp + 0x78], xmm0
movss dword [rbp + 0x7c], xmm6
test eax, 0xff000000
je 0x14004e7c4
mov rcx, rdi
nop word [rax + rax]
inc rcx
cmp byte [r8 + rcx], 0
jne 0x14004e760
add rcx, r8
cmp r8, rcx
je 0x14004e7c4
mov rax, qword [r10 + 0x38]
movups xmm0, xmmword [r10 + 0x88]
movups xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x48], 0
movss dword [rsp + 0x40], xmm14
mov qword [rsp + 0x38], rcx
mov qword [rsp + 0x30], r8
lea rcx, [rsp + 0x70]
mov qword [rsp + 0x28], rcx
mov dword [rsp + 0x20], r9d
lea r9, [rbp + 0x78]
movss xmm2, dword [rax + 0x10]
mov rdx, r10
mov rcx, qword [rax + 8]
call fcn.14002b7a0
mov rbx, qword [0x14015e318]
cmp dword [0x1401550a0], 1
jne 0x14004ea9b
movss xmm3, dword [rbp + 0xa04]
subss xmm3, xmm11
movaps xmm1, xmm3
divss xmm1, dword [0x14011d9bc]
mulss xmm1, xmm8
movaps xmm0, xmm3
andps xmm0, xmmword [0x14011df00]
cvtps2pd xmm2, xmm0
mulsd xmm2, qword [str.ffffff]
movaps xmm0, xmm12
subss xmm0, xmm1
xorps xmm1, xmm1
cvtss2sd xmm1, xmm0
subsd xmm1, xmm2
cvtpd2ps xmm10, xmm1
xorps xmm0, xmm0
cvtss2sd xmm0, xmm12
subsd xmm0, xmm2
cvtpd2ps xmm9, xmm0
movaps xmm7, xmm15
mulss xmm7, dword [0x14011d868]
movss xmm8, dword [0x14011da04]
subss xmm8, xmm15
mulss xmm8, dword [0x14011d868]
mulss xmm8, xmm3
movss xmm0, dword [0x14011da34]
mulss xmm7, xmm0
movaps xmm6, xmm0
subss xmm6, xmm7
divss xmm6, xmm0
divss xmm7, xmm0
mov rax, qword [rbx + 0x4890]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.140008320
mov r10, rax
mov rcx, qword [0x14015e318]
mov dword [rbp + 0x240], 0x3dcccccd
mov dword [rbp + 0x244], 0x3dcccccd
mov dword [rbp + 0x248], 0x3dcccccd
movss xmm0, dword [rcx + 0x37e0]
movss dword [rbp + 0x24c], xmm0
lea rcx, [rbp + 0x240]
call fcn.140004c40
movss dword [rbp + 0x80], xmm9
movss xmm15, dword [rbp + 0xa04]
movss dword [rbp + 0x84], xmm15
movss dword [rbp + 0x88], xmm10
movss dword [rbp + 0x8c], xmm11
mov dword [rsp + 0x28], sendto
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x80]
lea rdx, [rbp + 0x88]
mov rcx, r10
call fcn.140026d60
mov rax, qword [0x14015e318]
mov rax, qword [rax + 0x4890]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.140008320
mov r10, rax
mov rcx, qword [0x14015e318]
movss dword [rbp + 0x250], xmm6
movss dword [rbp + 0x254], xmm7
mov dword [rbp + 0x258], 0
movss xmm0, dword [rcx + 0x37e0]
movss dword [rbp + 0x25c], xmm0
lea rcx, [rbp + 0x250]
call fcn.140004c40
movss dword [rbp + 0xf0], xmm9
movss dword [rbp + 0xf4], xmm15
movss dword [rbp + 0x90], xmm10
addss xmm8, xmm11
movss dword [rbp + 0x94], xmm8
mov dword [rsp + 0x28], sendto
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0xf0]
lea rdx, [rbp + 0x90]
mov rcx, r10
call fcn.140026d60
mov rax, qword [0x14015e318]
mov rax, qword [rax + 0x4890]
lea r8, str.Foreground
mov edx, 1
mov rcx, qword [rax]
call fcn.140008320
mov r10, rax
mov rcx, qword [0x14015e318]
mov qword [rbp + 0x260], 0
mov dword [rbp + 0x268], 0
movss xmm0, dword [rcx + 0x37e0]
movss dword [rbp + 0x26c], xmm0
lea rcx, [rbp + 0x260]
call fcn.140004c40
movss dword [rbp + 0x98], xmm9
movss dword [rbp + 0x9c], xmm15
movss dword [rbp + 0xa0], xmm10
movss dword [rbp + 0xa4], xmm11
movss dword [rsp + 0x30], xmm13
mov dword [rsp + 0x28], sendto
movss dword [rsp + 0x20], xmm14
mov r9d, eax
lea r8, [rbp + 0x98]
lea rdx, [rbp + 0xa0]
mov rcx, r10
call fcn.140026c60
mov rbx, qword [0x14015e318]
movss xmm9, dword [rbp + 4]
movss xmm10, dword [rbp - 0x6c]
jmp 0x14004eaa4
movss xmm15, dword [rbp + 0xa04]
lea rcx, [r12 + r12*2]
mov rax, qword [0x14015e808]
movss xmm0, dword [rax + rcx*4 + 4]
movss xmm1, dword [rax + rcx*4]
mulss xmm1, xmm1
mulss xmm0, xmm0
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x14004ead7
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x14004eadf
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss dword [rsp + 0x58], xmm0
mov r13, qword [rbp + 0x870]
cmp byte [0x14015508a], 1
jne 0x14004f065
mov rax, qword [0x14015e820]
mov edx, dword [rax + r12*4]
lea rcx, [rbp + 0xac0]
call fcn.140047ab0
nop
lea rcx, [rbp + 0xac0]
call fcn.1400433e0
lea rcx, [r13 + 0x9b0]
call fcn.140057560
lea rcx, [rax + 0x248]
call fcn.140057560
lea rcx, [rax + 0x18]
call fcn.1400571d0
mov edx, eax
lea rcx, [rbp + 0xb30]
call fcn.140047ab0
nop
lea rcx, [rbp + 0xb30]
call fcn.140043590
mov r15, qword [rbp + 0xad0]
movabs rcx, 0x7fffffffffffffff
mov rax, rcx
sub rax, r15
cmp rax, 2
jb 0x1400501c4
lea r14, [rbp + 0xac0]
cmp qword [rbp + 0xad8], 0x10
cmovae r14, qword [rbp + 0xac0]
xor eax, eax
mov qword [rsp + 0x70], rax
mov qword [rbp - 0x80], rax
mov qword [rbp - 0x78], rax
lea rsi, [r15 + 2]
mov edi, 0xf
lea rbx, [rsp + 0x70]
cmp rsi, rdi
jbe 0x14004ec2a
mov rdi, rsi
or rdi, 0xf
cmp rdi, rcx
jbe 0x14004ebc4
mov rdi, rcx
jmp 0x14004ebd1
cmp rdi, 0x16
mov ecx, socket
cmovb rdi, rcx
mov rcx, rdi
add rcx, 1
mov rdx, 0xffffffffffffffff
cmovb rcx, rdx
cmp rcx, 0x1000
jb 0x14004ec18
lea rax, [rcx + 0x27]
cmp rax, rcx
jbe 0x1400501ca
mov rcx, rax
call fcn.14008e2c4
test rax, rax
je 0x1400500a1
lea rbx, [rax + 0x27]
and rbx, 0xffffffffffffffe0
mov qword [rbx - 8], rax
jmp 0x14004ec25
test rcx, rcx
je 0x14004ec22
call fcn.14008e2c4
mov rbx, rax
mov qword [rsp + 0x70], rbx
mov qword [rbp - 0x80], rsi
mov qword [rbp - 0x78], rdi
mov eax, 0x205b
mov word [rbx], ax
lea rcx, [rbx + 2]
mov r8, r15
mov rdx, r14
call sub.VCRUNTIME140.dll_memcpy
mov byte [rbx + rsi], 0
mov rcx, qword [rbp - 0x80]
mov rdx, qword [rbp - 0x78]
mov rax, rdx
sub rax, rcx
cmp rax, 4
jb 0x14004ec8b
lea rax, [rcx + 4]
mov qword [rbp - 0x80], rax
lea rax, [rsp + 0x70]
cmp rdx, 0x10
cmovae rax, qword [rsp + 0x70]
mov dword [rax + rcx], 0x203a5d20
mov byte [rax + rcx + 4], 0
lea rax, [rsp + 0x70]
jmp 0x14004ecaa
mov qword [rsp + 0x20], 4
lea r9, str.__:
mov edx, 4
lea rcx, [rsp + 0x70]
call fcn.140057ed0
xor r14d, r14d
mov qword [rbp + 0x380], r14
mov qword [rbp + 0x390], r14
mov qword [rbp + 0x398], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x380], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x390], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], sendto
mov byte [rax], r14b
mov rcx, qword [rbp + 0x390]
mov rdx, qword [rbp + 0x398]
mov rax, rdx
sub rax, rcx
cmp rax, 2
jb 0x14004ed35
lea rax, [rcx + 2]
mov qword [rbp + 0x390], rax
lea rax, [rbp + 0x380]
cmp rdx, 0x10
cmovae rax, qword [rbp + 0x380]
mov edx, 0x207b
mov word [rax + rcx], dx
mov byte [rax + rcx + 2], r14b
lea rax, [rbp + 0x380]
jmp 0x14004ed56
mov qword [rsp + 0x20], 2
lea r9, [0x14011d108]
mov edx, 2
lea rcx, [rbp + 0x380]
call fcn.140057ed0
mov qword [rbp + 0x3c0], r14
mov qword [rbp + 0x3d0], r14
mov qword [rbp + 0x3d8], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x3c0], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x3d0], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], sendto
mov byte [rax], 0
mov rdi, qword [rbp + 0xb40]
lea r9, [rbp + 0xb30]
cmp qword [rbp + 0xb48], 0x10
cmovae r9, qword [rbp + 0xb30]
mov rsi, qword [rbp + 0x3d0]
mov rcx, qword [rbp + 0x3d8]
mov rax, rcx
sub rax, rsi
cmp rdi, rax
ja 0x14004ee04
lea rax, [rsi + rdi]
mov qword [rbp + 0x3d0], rax
lea rbx, [rbp + 0x3c0]
cmp rcx, 0x10
cmovae rbx, qword [rbp + 0x3c0]
lea rcx, [rbx + rsi]
mov r8, rdi
mov rdx, r9
call sub.VCRUNTIME140.dll_memmove
lea rax, [rbx + rdi]
mov byte [rax + rsi], 0
lea rax, [rbp + 0x3c0]
jmp 0x14004ee18
mov qword [rsp + 0x20], rdi
mov rdx, rdi
lea rcx, [rbp + 0x3c0]
call fcn.140057ed0
mov qword [rbp + 0x50], r14
mov qword [rbp + 0x60], r14
mov qword [rbp + 0x68], r14
movups xmm0, xmmword [rax]
movups xmmword [rbp + 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp + 0x60], xmm1
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], sendto
mov byte [rax], 0
mov rcx, qword [rbp + 0x60]
mov rdx, qword [rbp + 0x68]
mov rax, rdx
sub rax, rcx
cmp rax, 2
jb 0x14004ee7f
lea rax, [rcx + 2]
mov qword [rbp + 0x60], rax
lea rax, [rbp + 0x50]
cmp rdx, 0x10
cmovae rax, qword [rbp + 0x50]
mov edx, 0x7d20
mov word [rax + rcx], dx
mov byte [rax + rcx + 2], 0
lea rax, [rbp + 0x50]
jmp 0x14004ee9d
mov qword [rsp + 0x20], 2
lea r9, [0x14011d104]
mov edx, 2
lea rcx, [rbp + 0x50]
call fcn.140057ed0
movups xmm6, xmmword [rax]
movups xmmword [rbp + 0x410], xmm6
movups xmm7, xmmword [rax + 0x10]
movups xmmword [rbp + 0x420], xmm7
mov qword [rax + 0x10], r14
mov qword [rax + 0x18], sendto
mov byte [rax], 0
mov rdx, qword [rbp + 0xad8]
cmp rdx, 0x10
jb 0x14004ef02
inc rdx
mov rcx, qword [rbp + 0xac0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14004eefd
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x1400500a8
call fcn.14008da28
movups xmmword [rbp + 0xac0], xmm6
movups xmmword [rbp + 0xad0], xmm7
mov qword [rbp + 0x420], r14
mov qword [rbp + 0x428], sendto
mov byte [rbp + 0x410], 0
lea rcx, [rbp + 0x410]
call fcn.140002460
nop
lea rcx, [rbp + 0x50]
call fcn.140002460
nop
lea rcx, [rbp + 0x3c0]
call fcn.140002460
nop
lea rcx, [rbp + 0x380]
call fcn.140002460
nop
lea rcx, [rsp + 0x70]
call fcn.140002460
lea rcx, [rbp + 0xac0]
call fcn.140002450
mov rdx, rax
movss xmm0, dword [0x14011daa4]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
lea rcx, [rbp + 0xa8]
call fcn.14000b360
call fcn.1400084f0
mov r10, rax
lea rcx, [rbp + 0xac0]
call fcn.140002450
mov r9, rax
movss dword [rsp + 0x20], xmm13
movaps xmm3, xmm14
movaps xmm2, xmm14
movaps xmm1, xmm13
lea rcx, [rbp + 0x480]
call fcn.1400024e0
lea rcx, [rbp + 0x480]
call fcn.140005120
movss xmm2, dword [rbp + 0xa34]
addss xmm2, dword [0x14011d99c]
movss xmm0, dword [rbp + 0xac]
movss xmm7, dword [0x14011d8a8]
mulss xmm0, xmm7
subss xmm2, xmm0
movss xmm1, dword [rbp + 0xa8]
mulss xmm1, xmm7
movss xmm0, dword [rbp + 0xa30]
subss xmm0, xmm1
movss dword [rbp + 0xb0], xmm0
movss dword [rbp + 0xb4], xmm2
mov r8d, eax
lea rdx, [rbp + 0xb0]
mov rcx, r10
call fcn.140027660
nop
lea rcx, [rbp + 0xb30]
call fcn.140002460
nop
lea rcx, [rbp + 0xac0]
call fcn.140002460
mov rbx, qword [0x14015e318]
mov r14d, dword [rbp - 0x60]
mov r15d, dword [rbp + 0x2b8]
jmp 0x14004f06d
movss xmm7, dword [0x14011d8a8]
mov esi, 2
mov qword [rsp + 0x20], 0
movss xmm2, dword [0x14011d9c4]
lea rdx, str.C:WindowsFontsCalibri.ttf
mov rcx, qword [rbx + 0x58]
call fcn.140028950
mov rcx, rax
call fcn.140010b40
call fcn.140010be0
cmp byte [0x140155080], 0
je 0x14004f40a
comiss xmm9, xmm14
jbe 0x14004f26d
movd xmm0, dword [rbp - 0x68]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm9
jbe 0x14004f26d
comiss xmm10, xmm14
jbe 0x14004f26d
movd xmm0, dword [rbp - 0x64]
cvtdq2ps xmm0, xmm0
comiss xmm0, xmm10
jbe 0x14004f26d
cmp dword [0x14015509c], 0
jne 0x14004f13e
movaps xmm0, xmm15
subss xmm0, xmm11
movaps xmm6, xmm0
mulss xmm6, xmm7
cvttss2si ebx, xmm0
cvttss2si edi, xmm6
mulss xmm6, xmm7
mov rcx, r13
call fcn.14004ca00
cvttss2si edx, xmm11
movaps xmm0, xmm12
mov r9d, ebx
mov r8d, edi
subss xmm0, xmm6
cvttss2si ecx, xmm0
test al, al
je 0x14004f134
mov byte [rsp + 0x20], 1
jmp 0x14004f139
mov byte [rsp + 0x20], 0
call fcn.140048d20
cmp dword [0x14015509c], 1
jne 0x14004f1a7
movss xmm6, dword [rsp + 0x60]
cvttss2si ebx, xmm6
mulss xmm6, xmm7
mov rcx, r13
call fcn.14004ca00
cvttss2si r9d, dword [rbp - 0x70]
cvttss2si edx, dword [rbp + 0xb04]
mov r8d, ebx
test al, al
lea rax, [rsp + 0x70]
mov qword [rsp + 0x28], rax
je 0x14004f185
movups xmm0, xmmword [0x1401550c4]
jmp 0x14004f18c
movups xmm0, xmmword [0x1401550b4]
movdqa xmmword [rsp + 0x70], xmm0
movss xmm0, dword [rbp + 0xb10]
subss xmm0, xmm6
cvttss2si ecx, xmm0
call fcn.140048880
cmp dword [0x14015509c], esi
jne 0x14004f40a
mov rcx, r13
call fcn.14004ca00
movups xmm6, xmmword [rbp + 0x110]
movaps xmm7, xmmword [rbp + 0x40]
movss xmm0, dword [rsp + 0x54]
movaps xmm8, xmmword [rbp + 0xe0]
movss dword [rsp + 0x20], xmm13
movss xmm2, dword [0x14011d9ec]
test al, al
je 0x14004f22a
movss dword [rbp + 0x190], xmm6
movss dword [rbp + 0x194], xmm7
movss dword [rbp + 0x198], xmm0
movsd qword [rbp + 0x2c0], xmm8
mov dword [rbp + 0x2c8], r15d
mov r9b, 1
lea rdx, [rbp + 0x190]
lea rcx, [rbp + 0x2c0]
call fcn.1400480a0
jmp 0x14004f41d
movss dword [rbp + 0x1a0], xmm6
movss dword [rbp + 0x1a4], xmm7
movss dword [rbp + 0x1a8], xmm0
movsd qword [rbp + 0x2d0], xmm8
mov dword [rbp + 0x2d8], r15d
xor r9d, r9d
lea rdx, [rbp + 0x1a0]
lea rcx, [rbp + 0x2d0]
call fcn.1400480a0
jmp 0x14004f41d
movd xmm8, dword [0x14015e7d4]
cvtdq2ps xmm8, xmm8
movd xmm10, dword [0x14015e7d0]
cvtdq2ps xmm10, xmm10
movss xmm0, dword [rbp - 0x6c]
subss xmm0, xmm8
subss xmm9, xmm10
movaps xmm1, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_atan2f
movaps xmm9, xmm0
xorps xmm1, xmm1
movsd xmm0, qword [0x14011d960]
ucomisd xmm1, xmm0
ja 0x14004f2ba
sqrtpd xmm0, xmm0
jmp 0x14004f2bf
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
movsd xmm11, qword [0x14011d970]
mulsd xmm0, xmm11
mulsd xmm0, qword [0x14011d920]
xorps xmm6, xmm6
cvtsd2ss xmm6, xmm0
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_sinf
movaps xmm7, xmm0
addss xmm6, dword [0x14011d9f8]
mulss xmm7, xmm6
addss xmm7, xmm8
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_cosf
movaps xmm8, xmm0
mulss xmm8, xmm6
addss xmm8, xmm10
movss dword [rbp + 0xc0], xmm8
movss dword [rbp + 0xc4], xmm7
xorps xmm10, xmm10
cvtss2sd xmm10, xmm7
cvtss2sd xmm9, xmm9
movaps xmm7, xmm9
addsd xmm7, qword [0x14011d928]
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
mulsd xmm0, xmm11
movaps xmm1, xmm10
subsd xmm1, xmm0
cvtpd2ps xmm6, xmm1
cvtss2sd xmm8, xmm8
movaps xmm0, xmm7
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
mulsd xmm0, xmm11
movaps xmm1, xmm8
subsd xmm1, xmm0
cvtsd2ss xmm1, xmm1
movss dword [rbp + 0xb8], xmm1
movss dword [rbp + 0xbc], xmm6
subsd xmm9, qword [0x14011d928]
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_sin
mulsd xmm0, xmm11
subsd xmm10, xmm0
cvtpd2ps xmm6, xmm10
movaps xmm0, xmm9
call sub.api_ms_win_crt_math_l1_1_0.dll_cos
mulsd xmm0, xmm11
subsd xmm8, xmm0
xorps xmm0, xmm0
cvtsd2ss xmm0, xmm8
movss dword [rbp + 0x108], xmm0
movss dword [rbp + 0x10c], xmm6
call fcn.1400084f0
mov r10, rax
lea rcx, [0x1401550b4]
call fcn.140004c40
movss dword [rsp + 0x28], xmm13
mov dword [rsp + 0x20], eax
lea r9, [rbp + 0x108]
lea r8, [rbp + 0xb8]
lea rdx, [rbp + 0xc0]
mov rcx, r10
call fcn.1400270f0
movups xmm6, xmmword [rbp + 0x110]
movaps xmm7, xmmword [rbp + 0x40]
movaps xmm8, xmmword [rbp + 0xe0]
cmp byte [0x140155082], 0
je 0x14004f509
movsxd rdx, r14d
lea rcx, [0x14015e7d8]
call fcn.1400544d0
mov r8, rax
lea rcx, [0x14015e708]
call fcn.1400544d0
movups xmm0, xmmword [r8]
movaps xmmword [rbp + 0x540], xmm0
movups xmm1, xmmword [r8 + 0x10]
movaps xmmword [rbp + 0x550], xmm1
movups xmm0, xmmword [r8 + 0x20]
movaps xmmword [rbp + 0x560], xmm0
movups xmm1, xmmword [rax]
movaps xmmword [rbp + 0x510], xmm1
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x520], xmm0
movups xmm1, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x530], xmm1
movups xmm0, xmmword [0x1401550e4]
movdqa xmmword [rsp + 0x70], xmm0
movups xmm1, xmmword [rbp + 0x490]
movaps xmmword [rbp + 0x810], xmm1
movups xmm0, xmmword [rbp + 0x4a0]
movaps xmmword [rbp + 0x820], xmm0
movups xmm1, xmmword [rbp + 0x4b0]
movaps xmmword [rbp + 0x830], xmm1
movups xmm0, xmmword [rbp + 0x4c0]
movaps xmmword [rbp + 0x840], xmm0
movsd xmm1, qword [rbp + 0x28]
movsd qword [rbp + 0x850], xmm1
lea rax, [rbp + 0x540]
mov qword [rsp + 0x20], rax
lea r9, [rbp + 0x510]
movss xmm2, dword [0x14011d8fc]
lea rdx, [rsp + 0x70]
lea rcx, [rbp + 0x810]
call fcn.140049010
cmp byte [0x140155085], 0
je 0x14004f60d
movsd qword [rbp + 0x2e0], xmm8
mov dword [rbp + 0x2e8], r15d
lea rdx, [rbp + 0x2e0]
call fcn.140047260
divss xmm0, dword [0x14011da04]
xorps xmm2, xmm2
cvtss2sd xmm2, xmm0
movq r8, xmm2
lea rdx, str._.fm
lea rcx, [rbp + 0xc10]
call fcn.140057780
movss xmm0, dword [0x14011daa4]
movss dword [rsp + 0x20], xmm0
xor r9d, r9d
xor r8d, r8d
lea rdx, [rbp + 0xc10]
lea rcx, [rbp + 0xd0]
call fcn.14000b360
call fcn.1400084f0
mov r10, rax
movss dword [rsp + 0x20], xmm13
movaps xmm3, xmm13
movaps xmm2, xmm13
movaps xmm1, xmm13
lea rcx, [rbp + 0x4d0]
call fcn.1400024e0
lea rcx, [rbp + 0x4d0]
call fcn.140005120
movaps xmm2, xmm15
addss xmm2, dword [0x14011d950]
movss xmm1, dword [rbp + 0xd0]
movss xmm9, dword [0x14011d8a8]
mulss xmm1, xmm9
movaps xmm0, xmm12
subss xmm0, xmm1
movss dword [rbp + 0xc8], xmm0
movss dword [rbp + 0xcc], xmm2
lea r9, [rbp + 0xc10]
mov r8d, eax
lea rdx, [rbp + 0xc8]
mov rcx, r10
call fcn.140027660
mov esi, sendto
jmp 0x14004f616
movss xmm9, dword [0x14011d8a8]
cmp byte [0x140155083], 0
je 0x14004f69a
call fcn.1400084f0
mov r10, rax
lea rcx, [0x1401550d4]
call fcn.140005120
movd xmm0, esi
cvtdq2ps xmm0, xmm0
addss xmm0, xmm15
movss dword [rbp + 0x100], xmm12
movss dword [rbp + 0x104], xmm0
mov ecx, dword [0x14015e7d4]
add ecx, ecx
movd xmm1, ecx
cvtdq2ps xmm1, xmm1
movd xmm0, dword [0x14015e7d0]
cvtdq2ps xmm0, xmm0
movss dword [rbp + 0xf8], xmm0
movss dword [rbp + 0xfc], xmm1
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rbp + 0x100]
lea rdx, [rbp + 0xf8]
mov rcx, r10
call fcn.140026b00
cmp byte [0x140155084], 0
je 0x14004f8a2
mov rdx, qword [rbp + 0x890]
add rdx, 0x170
lea rcx, [rbp + 0xb70]
call fcn.140057100
mov qword [rbp - 0x50], 0
mov dword [rbp - 0x48], 0
movss dword [rbp + 0x1c0], xmm6
movss dword [rbp + 0x1c4], xmm7
movaps xmm8, xmmword [rbp + 0x400]
movss dword [rbp + 0x1c8], xmm8
lea rdx, [rbp - 0x50]
lea rcx, [rbp + 0xb70]
call fcn.140047f40
movss xmm0, dword [rbp - 0x50]
movss xmm10, dword [0x14011da38]
mulss xmm0, xmm10
movss dword [rbp + 0x1b0], xmm0
movss xmm1, dword [rbp - 0x4c]
mulss xmm1, xmm10
movss dword [rbp + 0x1b4], xmm1
movss xmm0, dword [rbp - 0x48]
mulss xmm0, xmm10
movss dword [rbp + 0x1b8], xmm0
lea r8, [rbp + 0x1b0]
lea rdx, [rbp + 0x18]
lea rcx, [rbp + 0x1c0]
call fcn.140047300
movss dword [rbp + 0x1d0], xmm6
movss dword [rbp + 0x1d4], xmm7
movss dword [rbp + 0x1d8], xmm8
lea rdx, [rbp + 0x1d0]
lea rcx, [rbp + 0x690]
call fcn.140047d70
movsd xmm7, qword [rax]
movsd xmm8, qword [rbp + 0x18]
movsd qword [rbp + 0x2f0], xmm8
mov ebx, dword [rbp + 0x20]
mov dword [rbp + 0x2f8], ebx
lea rdx, [rbp + 0x2f0]
lea rcx, [rbp + 0x69c]
call fcn.140047d70
movsd xmm6, qword [rax]
call fcn.1400084f0
mov r10, rax
movss dword [rsp + 0x20], xmm13
movaps xmm3, xmm14
movaps xmm2, xmm13
movaps xmm1, xmm14
lea rcx, [rbp + 0x280]
call fcn.1400024e0
lea rcx, [rbp + 0x280]
call fcn.140005120
movss dword [rbp + 0xd8], xmm6
movaps xmm0, xmm6
shufps xmm0, xmm0, 0x55
movsd qword [rbp + 0x28], xmm6
movss dword [rbp + 0xdc], xmm0
movss dword [rbp - 0x5c], xmm7
movaps xmm0, xmm7
shufps xmm0, xmm0, 0x55
movsd qword [rbp + 0x28], xmm7
movss dword [rbp - 0x58], xmm0
movss dword [rsp + 0x20], xmm13
mov r9d, eax
lea r8, [rbp + 0xd8]
lea rdx, [rbp - 0x5c]
mov rcx, r10
call fcn.140026b00
movss xmm1, dword [rbp + 0x20]
addss xmm1, dword [0x14011d9dc]
movss xmm0, dword [rbp + 0x1c]
movss dword [rbp + 0x470], xmm1
movss xmm1, dword [rbp + 0x18]
unpcklps xmm1, xmm0
movsd qword [rbp + 0x300], xmm1
mov eax, dword [rbp + 0x470]
mov dword [rbp + 0x308], eax
movsd qword [rbp + 0x310], xmm8
mov dword [rbp + 0x318], ebx
movss dword [rsp + 0x20], xmm13
xor r9d, r9d
movss xmm2, dword [0x14011d9e4]
lea rdx, [rbp + 0x300]
lea rcx, [rbp + 0x310]
call fcn.1400480a0
xorps xmm0, xmm0
cvtsi2ss xmm0, dword [rbp - 0x68]
mulss xmm0, xmm9
movss xmm2, dword [rbp + 0xb20]
subss xmm2, xmm0
xorps xmm1, xmm1
cvtsi2ss xmm1, dword [rbp - 0x64]
mulss xmm1, xmm9
movss xmm3, dword [rbp + 0xb24]
subss xmm3, xmm1
mulss xmm3, xmm3
mulss xmm2, xmm2
addss xmm3, xmm2
xorps xmm0, xmm0
ucomiss xmm0, xmm3
ja 0x14004f8f1
xorps xmm6, xmm6
sqrtss xmm6, xmm3
jmp 0x14004f8fc
movaps xmm0, xmm3
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movaps xmm6, xmm0
movsxd rdi, dword [0x140154fb8]
cmp edi, 0x539
je 0x14004f9dd
mov rdx, rdi
lea rcx, [0x14015e7d8]
call fcn.1400544d0
mov r8, rax
lea rcx, [0x14015e7b8]
call fcn.1400544d0
movups xmm0, xmmword [r8]
movaps xmmword [rbp + 0x4e0], xmm0
movups xmm1, xmmword [r8 + 0x10]
movaps xmmword [rbp + 0x4f0], xmm1
movups xmm0, xmmword [r8 + 0x20]
movaps xmmword [rbp + 0x500], xmm0
movups xmm1, xmmword [rax]
movaps xmmword [rbp + 0x750], xmm1
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x760], xmm0
movups xmm1, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x770], xmm1
lea r8, [rbp + 0x4e0]
lea rdx, [rbp + 0x750]
lea rcx, [rbp + 0x6a8]
call fcn.140047fe0
mov eax, dword [rax + 8]
mov dword [rbp + 0x1e8], eax
mov rdx, rdi
lea rcx, [0x14015e850]
call fcn.1400544c0
mov eax, dword [rax + 8]
mov dword [rbp + 0x1f8], eax
mov rax, qword [0x14015e7f0]
movss xmm0, dword [0x14011d884]
movss xmm1, dword [rbp + 0x1f8]
comiss xmm0, dword [rax + rdi*4]
movss xmm0, dword [rbp + 0x1e8]
jb 0x14004f9e5
mov edi, 0x539
mov dword [0x140154fb8], edi
jmp 0x14004f9e5
movaps xmm0, xmm14
movaps xmm1, xmm14
movss xmm2, dword [rsp + 0x5c]
comiss xmm2, xmm6
jbe 0x140050016
cmp edi, 0x539
je 0x14004fda0
comiss xmm1, xmm0
jae 0x14004fda0
movsxd rax, dword [0x140155040]
lea rcx, [0x1400e06d0]
movzx ecx, byte [rax + rcx]
call fcn.140043740
test al, al
je 0x14004fda0
movsxd rbx, edi
mov rdx, rbx
lea rcx, [0x14015e7d8]
call fcn.1400544d0
mov r8, rax
lea rcx, [0x14015e7b8]
call fcn.1400544d0
movups xmm0, xmmword [r8]
movaps xmmword [rbp + 0x720], xmm0
movups xmm1, xmmword [r8 + 0x10]
movaps xmmword [rbp + 0x730], xmm1
movups xmm0, xmmword [r8 + 0x20]
movaps xmmword [rbp + 0x740], xmm0
movups xmm1, xmmword [rax]
movaps xmmword [rbp + 0x6f0], xmm1
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x700], xmm0
movups xmm1, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x710], xmm1
lea r8, [rbp + 0x720]
lea rdx, [rbp + 0x6f0]
lea rcx, [rbp + 0x200]
call fcn.140047fe0
mov rdx, rbx
lea rcx, [0x14015e850]
call fcn.1400544c0
mov eax, dword [rax + 8]
mov dword [rbp + 0x328], eax
movss xmm1, dword [rbp + 0x208]
movss xmm0, dword [rbp + 0x328]
comiss xmm0, xmm1
jb 0x14004fae7
mov ebx, 0x539
mov dword [rsp + 0x50], ebx
mov dword [0x140154fb8], ebx
jmp 0x14005001a
movss xmm0, dword [rbp + 0x204]
movss dword [rbp + 0x47c], xmm1
movss xmm1, dword [rbp + 0x200]
unpcklps xmm1, xmm0
movsd qword [rbp + 0x330], xmm1
mov eax, dword [rbp + 0x47c]
mov dword [rbp + 0x338], eax
lea rdx, [rbp + 0x330]
lea rcx, [rbp + 0xa90]
call fcn.140047d70
mov rdx, rbx
lea rcx, [0x14015e7d8]
call fcn.1400544d0
mov r8, rax
lea rcx, [0x14015e7a0]
call fcn.1400544d0
movups xmm0, xmmword [r8]
movaps xmmword [rbp + 0x660], xmm0
movups xmm1, xmmword [r8 + 0x10]
movaps xmmword [rbp + 0x670], xmm1
movups xmm0, xmmword [r8 + 0x20]
movaps xmmword [rbp + 0x680], xmm0
movups xmm1, xmmword [rax]
movaps xmmword [rbp + 0x600], xmm1
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x610], xmm0
movups xmm1, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x620], xmm1
lea r8, [rbp + 0x660]
lea rdx, [rbp + 0x600]
lea rcx, [rbp + 0x210]
call fcn.140047fe0
movss xmm2, dword [rbp + 0x214]
movss xmm0, dword [rbp + 0x218]
movss dword [rbp + 0x458], xmm0
movss xmm1, dword [rbp + 0x210]
unpcklps xmm1, xmm2
movsd qword [rbp + 0x340], xmm1
mov eax, dword [rbp + 0x458]
mov dword [rbp + 0x348], eax
lea rdx, [rbp + 0x340]
lea rcx, [rbp + 0xab0]
call fcn.140047d70
mov rdx, rbx
lea rcx, [0x14015e808]
call fcn.1400544c0
mov r10, rax
mov rdx, rbx
lea rcx, [0x14015e808]
call fcn.1400544c0
mov r9, rax
mov rdx, rbx
lea rcx, [0x14015e808]
call fcn.1400544c0
mov r8, rax
mov rdx, rbx
lea rcx, [0x14015e808]
call fcn.1400544c0
movss xmm1, dword [r8 + 4]
mulss xmm1, dword [rax + 4]
movss xmm0, dword [r10]
mulss xmm0, dword [r9]
addss xmm1, xmm0
xorps xmm0, xmm0
ucomiss xmm0, xmm1
ja 0x14004fc5d
xorps xmm0, xmm0
sqrtss xmm0, xmm1
jmp 0x14004fc65
movaps xmm0, xmm1
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrtf
movss xmm1, dword [0x14011da64]
comiss xmm1, xmm0
jb 0x140050016
mov rdx, rbx
call fcn.1400545a0
movups xmm1, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x8c0], xmm1
cmp byte [0x14015504a], 1
jne 0x14004fd27
mov rcx, qword [rbp + 0x8c0]
call fcn.14004ca00
test al, al
je 0x140050016
movd xmm3, dword [0x14015e68c]
cvtdq2ps xmm3, xmm3
movss xmm0, dword [rbp + 0xa90]
subss xmm0, xmm3
cvttss2si eax, xmm0
mov dword [0x14015e640], eax
movd xmm2, dword [0x14015e644]
cvtdq2ps xmm2, xmm2
movss xmm0, dword [rbp + 0xa94]
subss xmm0, xmm2
cvttss2si eax, xmm0
mov dword [0x14015e688], eax
movss xmm1, dword [rbp + 0xab0]
subss xmm1, xmm3
cvttss2si eax, xmm1
mov dword [0x14015e648], eax
movss xmm0, dword [rbp + 0xab4]
subss xmm0, xmm2
cvttss2si eax, xmm0
mov dword [0x14015e63c], eax
mov ebx, dword [0x140154fb8]
mov dword [rsp + 0x50], ebx
jmp 0x14005001a
movd xmm3, dword [0x14015e68c]
cvtdq2ps xmm3, xmm3
movss xmm0, dword [rbp + 0xa90]
subss xmm0, xmm3
cvttss2si eax, xmm0
mov dword [0x14015e640], eax
movd xmm2, dword [0x14015e644]
cvtdq2ps xmm2, xmm2
movss xmm0, dword [rbp + 0xa94]
subss xmm0, xmm2
cvttss2si eax, xmm0
mov dword [0x14015e688], eax
movss xmm1, dword [rbp + 0xab0]
subss xmm1, xmm3
cvttss2si eax, xmm1
mov dword [0x14015e648], eax
movss xmm0, dword [rbp + 0xab4]
subss xmm0, xmm2
cvttss2si eax, xmm0
mov dword [0x14015e63c], eax
mov ebx, edi
mov dword [rsp + 0x50], ebx
jmp 0x14005001a
mov dword [0x140154fb8], 0x539
movsxd rbx, r14d
mov rdx, rbx
lea rcx, [0x14015e7d8]
call fcn.1400544d0
mov r8, rax
lea rcx, [0x14015e7b8]
call fcn.1400544d0
movups xmm0, xmmword [r8]
movaps xmmword [rbp + 0x5a0], xmm0
movups xmm1, xmmword [r8 + 0x10]
movaps xmmword [rbp + 0x5b0], xmm1
movups xmm0, xmmword [r8 + 0x20]
movaps xmmword [rbp + 0x5c0], xmm0
movups xmm1, xmmword [rax]
movaps xmmword [rbp + 0x780], xmm1
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x790], xmm0
movups xmm1, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x7a0], xmm1
lea r8, [rbp + 0x5a0]
lea rdx, [rbp + 0x780]
lea rcx, [rbp + 0x220]
call fcn.140047fe0
mov rdx, rbx
lea rcx, [0x14015e850]
call fcn.1400544c0
mov eax, dword [rax + 8]
mov dword [rbp + 0x358], eax
movss xmm1, dword [rbp + 0x228]
movss xmm0, dword [rbp + 0x358]
comiss xmm0, xmm1
jb 0x14004fe6a
lea rcx, [rbp + 0xa40]
call fcn.140002460
mov ebx, dword [rsp + 0x50]
jmp 0x140050026
movss xmm0, dword [rbp + 0x224]
movss dword [rbp + 0x464], xmm1
movss xmm1, dword [rbp + 0x220]
unpcklps xmm1, xmm0
movsd qword [rbp + 0x360], xmm1
mov eax, dword [rbp + 0x464]
mov dword [rbp + 0x368], eax
lea rdx, [rbp + 0x360]
lea rcx, [rbp + 0xa60]
call fcn.140047d70
mov rdx, rbx
lea rcx, [0x14015e7d8]
call fcn.1400544d0
mov r8, rax
lea rcx, [0x14015e7a0]
call fcn.1400544d0
movups xmm0, xmmword [r8]
movaps xmmword [rbp + 0x7b0], xmm0
movups xmm1, xmmword [r8 + 0x10]
movaps xmmword [rbp + 0x7c0], xmm1
movups xmm0, xmmword [r8 + 0x20]
movaps xmmword [rbp + 0x7d0], xmm0
movups xmm1, xmmword [rax]
movaps xmmword [rbp + 0x7e0], xmm1
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rbp + 0x7f0], xmm0
movups xmm1, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x800], xmm1
lea r8, [rbp + 0x7b0]
lea rdx, [rbp + 0x7e0]
lea rcx, [rbp + 0x230]
call fcn.140047fe0
movss xmm2, dword [rbp + 0x234]
movss xmm0, dword [rbp + 0x238]
movss dword [rbp + 0x438], xmm0
movss xmm1, dword [rbp + 0x230]
unpcklps xmm1, xmm2
movsd qword [rbp + 0x370], xmm1
mov eax, dword [rbp + 0x438]
mov dword [rbp + 0x378], eax
lea rdx, [rbp + 0x370]
lea rcx, [rbp + 0xa70]
call fcn.140047d70
movss xmm0, dword [0x14011da64]
comiss xmm0, dword [rsp + 0x58]
jb 0x140050016
cmp byte [0x14015504a], 1
jne 0x14004ff99
mov rcx, r13
call fcn.14004ca00
test al, al
je 0x140050016
movd xmm3, dword [0x14015e68c]
cvtdq2ps xmm3, xmm3
movss xmm0, dword [rbp + 0xa60]
subss xmm0, xmm3
cvttss2si eax, xmm0
mov dword [0x14015e640], eax
movd xmm2, dword [0x14015e644]
cvtdq2ps xmm2, xmm2
movss xmm0, dword [rbp + 0xa64]
subss xmm0, xmm2
cvttss2si eax, xmm0
mov dword [0x14015e688], eax
movss xmm1, dword [rbp + 0xa70]
subss xmm1, xmm3
cvttss2si eax, xmm1
mov dword [0x14015e648], eax
movss xmm0, dword [rbp + 0xa74]
subss xmm0, xmm2
cvttss2si eax, xmm0
mov dword [0x14015e63c], eax
movss dword [rsp + 0x5c], xmm6
mov ebx, r14d
mov dword [rsp + 0x50], ebx
jmp 0x14005001a
mov ebx, dword [rsp + 0x50]
lea rcx, [rbp + 0xa40]
call fcn.140002460
xor r13d, r13d
lea rsi, str._H:
movss xmm1, dword [0x14011da60]
inc r14d
mov dword [rbp - 0x60], r14d
inc r12
cmp r12, qword [rbp + 0x10]
jl 0x14004dc50
cmp ebx, 0x539
je 0x1400500af
mov dword [0x140154fb8], ebx
mov eax, dword [0x14015e640]
mov dword [0x14015e654], eax
mov eax, dword [0x14015e688]
mov dword [0x14015e650], eax
mov eax, dword [0x14015e648]
mov dword [0x14015e638], eax
mov eax, dword [0x14015e63c]
mov dword [0x14015e64c], eax
jmp 0x1400500ce
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
call qword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
nop
mov dword [0x14015e654], r13d
mov dword [0x14015e650], r13d
mov dword [0x14015e638], 0x539
mov dword [0x14015e64c], r13d
cmp byte [0x140155056], 0
je 0x140050150
call fcn.1400084f0
mov r8, rax
movss dword [rsp + 0x20], xmm13
movaps xmm3, xmm13
movaps xmm2, xmm13
movaps xmm1, xmm13
lea rcx, [rbp + 0x280]
call fcn.1400024e0
lea rcx, [rbp + 0x280]
call fcn.140005120
movd xmm0, dword [0x14015e7d0]
cvtdq2ps xmm0, xmm0
movss dword [rbp - 0x5c], xmm0
movd xmm1, dword [0x14015e7d4]
cvtdq2ps xmm1, xmm1
movss dword [rbp - 0x58], xmm1
movss dword [rsp + 0x28], xmm13
mov dword [rsp + 0x20], 0x40
mov r9d, eax
movss xmm2, dword [0x14015505c]
lea rdx, [rbp - 0x5c]
mov rcx, r8
call fcn.1400273a0
lea rcx, [rbp + 0xd0]
call fcn.140042f90
mov rcx, qword [rbp + 0xd10]
xor rcx, rsp
call fcn.14008da00
lea r11, [rsp + 0xec0]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
movaps xmm7, xmmword [r11 - 0x20]
movaps xmm8, xmmword [r11 - 0x30]
movaps xmm9, xmmword [r11 - 0x40]
movaps xmm10, xmmword [r11 - 0x50]
movaps xmm11, xmmword [r11 - 0x60]
movaps xmm12, xmmword [r11 - 0x70]
movaps xmm13, xmmword [r11 - 0x80]
movaps xmm14, xmmword [r11 - 0x90]
movaps xmm15, xmmword [r11 - 0xa0]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret
call fcn.140043250
nop
call fcn.140043100
int3