Function at 0x1003a4e0
Capabilities:
Log keystrokes via polling

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x100f2365
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x48
cmp byte [0x1028f9e0], 0
push esi
push edi
je 0x1003b438
mov ecx, dword [0x1028c140]
lea edx, [ebp - 0x14]
push edx
lea edx, [ebp - 0x18]
push edx
mov eax, dword [ecx]
call dword [eax + 0x14]
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10255fac]
mov esi, dword [eax + ecx*4]
mov eax, dword [0x10290178]
cmp eax, dword [esi + 4]
jle 0x1003a57e
push 0x10290178
call fcn.100eec77
add esp, 4
cmp dword [0x10290178], 0xffffffff
jne 0x1003a57e
movaps xmm0, xmmword [0x1016afd0]
push 0x10290178
movups xmmword [0x10290138], xmm0
call fcn.100eec26
add esp, 4
mov eax, dword [0x10290118]
cmp eax, dword [esi + 4]
jle 0x1003a5bc
push 0x10290118
call fcn.100eec77
add esp, 4
cmp dword [0x10290118], 0xffffffff
jne 0x1003a5bc
movaps xmm0, xmmword [0x1016afd0]
push 0x10290118
movups xmmword [0x1029014c], xmm0
call fcn.100eec26
add esp, 4
mov eax, dword [0x1029015c]
cmp eax, dword [esi + 4]
jle 0x1003a5fa
push 0x1029015c
call fcn.100eec77
add esp, 4
cmp dword [0x1029015c], 0xffffffff
jne 0x1003a5fa
movaps xmm0, xmmword [0x1016afd0]
push 0x1029015c
movups xmmword [0x10290108], xmm0
call fcn.100eec26
add esp, 4
call dword [sym.imp.api_ms_win_crt_time_l1_1_0.dll_clock]
mov edx, dword [0x1025602c]
mov dword [ebp - 0x1c], eax
test edx, edx
jne 0x1003a615
mov edx, eax
mov dword [0x1025602c], edx
mov ecx, eax
mov al, byte [0x1028f9e3]
sub ecx, edx
cmp byte [0x1028f998], 0
movd xmm0, ecx
cvtdq2pd xmm0, xmm0
divsd xmm0, qword [0x1016a930]
je 0x1003a656
test al, al
je 0x1003a656
mulsd xmm0, qword [0x1016a8a0]
cvtpd2ps xmm1, xmm0
movsd qword [ebp - 0x28], xmm0
addss xmm1, dword [0x10256028]
jmp 0x1003a673
mulsd xmm0, qword [0x1016a8a0]
movss xmm1, dword [0x10256028]
movsd qword [ebp - 0x28], xmm0
cvtpd2ps xmm0, xmm0
subss xmm1, xmm0
movss xmm2, dword [0x1016a544]
comiss xmm1, xmm2
movss dword [0x10256028], xmm1
jbe 0x1003a697
mov dword [0x10256028], 0x3f800000
movaps xmm1, xmm2
jmp 0x1003a6b7
xorps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x1003a6ae
mov dword [0x10256028], 0
jmp 0x1003a907
comiss xmm1, xmm0
jbe 0x1003a907
test al, al
je 0x1003a907
movd xmm0, dword [ebp - 0x14]
mulss xmm1, dword [0x1016a994]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x14], eax
call fcn.10028fc0
cmp byte [0x1028c62c], 0
mov esi, eax
movss xmm0, dword [0x10256028]
mulss xmm0, dword [0x1016ae34]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
je 0x1003a718
cvttss2si ecx, xmm0
movzx eax, cl
jmp 0x1003a71f
cvttss2si eax, xmm0
movzx eax, al
mov dword [ebp - 0x34], eax
mov edi, 0x7370
mov eax, dword [ebp - 0x18]
cdq
sub eax, edx
movd xmm2, dword [0x1028f9a0]
sar eax, 1
inc eax
mov dword [ebp - 0x48], 2
cvtdq2ps xmm2, xmm2
mov dword [ebp - 0x44], 0xf
movd xmm1, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [0x1028f99c]
inc eax
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
mov word [ebp - 0x58], di
mov byte [ebp - 0x56], 0
sub esp, 0x10
mov dword [ebp - 4], 0
movups xmm0, xmmword [ebp - 0x40]
mov eax, esp
mov ecx, esi
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
movups xmmword [eax], xmm0
lea eax, [ebp - 0x58]
push dword [0x1025618c]
push 0
push 1
push eax
call fcn.10093290
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1003a7e5
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003a7db
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003a7db
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100eebed
add esp, 8
call fcn.10028fc0
cmp byte [0x1028c62c], 0
mov esi, eax
movss xmm0, dword [0x10256028]
mulss xmm0, dword [0x1016ae34]
je 0x1003a82c
movzx eax, byte [0x1028fc54]
movzx ecx, byte [0x1028fc50]
cvttss2si edx, xmm0
mov dword [ebp - 0x3c], eax
movzx eax, byte [0x1028fc58]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x40], ecx
movzx eax, dl
jmp 0x1003a848
cvttss2si eax, xmm0
mov dword [ebp - 0x40], 0xff
mov dword [ebp - 0x3c], 0xff
mov dword [ebp - 0x38], 0xff
movzx eax, al
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x18]
movd xmm2, dword [0x1028f9a0]
cdq
sub eax, edx
mov dword [ebp - 0x48], 2
sar eax, 1
cvtdq2ps xmm2, xmm2
mov dword [ebp - 0x44], 0xf
movd xmm1, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [0x1028f99c]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
mov word [ebp - 0x58], di
mov byte [ebp - 0x56], 0
sub esp, 0x10
mov dword [ebp - 4], 1
movups xmm0, xmmword [ebp - 0x40]
mov eax, esp
mov ecx, esi
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
movups xmmword [eax], xmm0
lea eax, [ebp - 0x58]
push dword [0x1025618c]
push 0
push 1
push eax
call fcn.10093290
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1003a907
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003a8fd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003a8fd
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100eebed
add esp, 8
push dword [0x1028f98c]
mov edi, dword [sym.imp.USER32.dll_GetAsyncKeyState]
call edi
test ax, ax
je 0x1003a936
cmp byte [0x1028f984], 0
je 0x1003a936
movsd xmm0, qword [ebp - 0x28]
cvtpd2ps xmm1, xmm0
addss xmm1, dword [0x10256030]
jmp 0x1003a94b
movsd xmm0, qword [ebp - 0x28]
movss xmm1, dword [0x10256030]
cvtpd2ps xmm2, xmm0
subss xmm1, xmm2
movss xmm0, dword [0x1016a544]
comiss xmm1, xmm0
movss dword [0x10256030], xmm1
jbe 0x1003a96f
mov dword [0x10256030], 0x3f800000
movaps xmm1, xmm0
jmp 0x1003a98f
xorps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x1003a986
mov dword [0x10256030], 0
jmp 0x1003abe9
comiss xmm1, xmm0
jbe 0x1003abe9
cmp byte [0x1028fa28], 0
je 0x1003abe9
movd xmm0, dword [ebp - 0x14]
mulss xmm1, dword [0x1016a994]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x14], eax
call fcn.10028fc0
cmp byte [0x1028c624], 0
mov esi, eax
movss xmm0, dword [0x10256030]
mulss xmm0, dword [0x1016ae34]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
je 0x1003a9f5
cvttss2si ecx, xmm0
movzx eax, cl
jmp 0x1003a9fc
cvttss2si eax, xmm0
movzx eax, al
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x18]
cdq
sub eax, edx
movd xmm2, dword [0x1028f9a0]
sar eax, 1
inc eax
mov dword [ebp - 0x48], 2
cvtdq2ps xmm2, xmm2
mov dword [ebp - 0x44], 0xf
movd xmm1, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [0x1028f99c]
inc eax
cvtdq2ps xmm1, xmm1
movd xmm0, eax
mov eax, 0x6265
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
mov word [ebp - 0x58], ax
mov byte [ebp - 0x56], 0
sub esp, 0x10
mov dword [ebp - 4], 2
movups xmm0, xmmword [ebp - 0x40]
mov eax, esp
mov ecx, esi
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
movups xmmword [eax], xmm0
lea eax, [ebp - 0x58]
push dword [0x1025618c]
push 0
push 1
push eax
call fcn.10093290
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1003aac2
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003aab8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003aab8
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100eebed
add esp, 8
call fcn.10028fc0
cmp byte [0x1028c624], 0
mov esi, eax
movss xmm0, dword [0x10256030]
mulss xmm0, dword [0x1016ae34]
je 0x1003ab09
movzx eax, byte [0x1028fc44]
movzx ecx, byte [0x1028fc40]
cvttss2si edx, xmm0
mov dword [ebp - 0x3c], eax
movzx eax, byte [0x1028fc48]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x40], ecx
movzx eax, dl
jmp 0x1003ab25
cvttss2si eax, xmm0
mov dword [ebp - 0x40], 0xff
mov dword [ebp - 0x3c], 0xff
mov dword [ebp - 0x38], 0xff
movzx eax, al
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x18]
cdq
movd xmm2, dword [0x1028f9a0]
sub eax, edx
sar eax, 1
cvtdq2ps xmm2, xmm2
mov dword [ebp - 0x48], 2
mov dword [ebp - 0x44], 0xf
movd xmm1, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [0x1028f99c]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
mov eax, 0x6265
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
mov word [ebp - 0x58], ax
mov byte [ebp - 0x56], 0
sub esp, 0x10
mov dword [ebp - 4], 3
movups xmm0, xmmword [ebp - 0x40]
mov eax, esp
mov ecx, esi
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
movups xmmword [eax], xmm0
lea eax, [ebp - 0x58]
push dword [0x1025618c]
push 0
push 1
push eax
call fcn.10093290
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1003abe9
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003abdf
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003abdf
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100eebed
add esp, 8
cmp byte [0x1028f97d], 0
je 0x1003ac1b
push dword [0x1028f980]
call edi
test ax, ax
je 0x1003ac1b
mov al, byte [0x1028f9e2]
test al, al
je 0x1003ac20
movsd xmm1, qword [ebp - 0x28]
cvtpd2ps xmm1, xmm1
addss xmm1, dword [0x10256024]
jmp 0x1003ac35
mov al, byte [0x1028f9e2]
movsd xmm2, qword [ebp - 0x28]
movss xmm1, dword [0x10256024]
cvtpd2ps xmm0, xmm2
subss xmm1, xmm0
movss xmm0, dword [0x1016a544]
comiss xmm1, xmm0
movss dword [0x10256024], xmm1
jbe 0x1003ac59
mov dword [0x10256024], 0x3f800000
movaps xmm1, xmm0
jmp 0x1003ac79
xorps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x1003ac70
mov dword [0x10256024], 0
jmp 0x1003aeb0
comiss xmm1, xmm0
jbe 0x1003aeb0
test al, al
je 0x1003aeb0
movd xmm0, dword [ebp - 0x14]
mulss xmm1, dword [0x1016a994]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x14], eax
call fcn.10028fc0
cmp byte [0x1028c600], 0
mov esi, eax
movss xmm0, dword [0x10256024]
mulss xmm0, dword [0x1016ae34]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
je 0x1003acda
cvttss2si ecx, xmm0
movzx eax, cl
jmp 0x1003ace1
cvttss2si eax, xmm0
movzx eax, al
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x18]
cdq
sub eax, edx
movd xmm2, dword [0x1028f9a0]
sar eax, 1
inc eax
mov dword [ebp - 0x48], 2
cvtdq2ps xmm2, xmm2
mov dword [ebp - 0x44], 0xf
movd xmm1, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [0x1028f99c]
inc eax
cvtdq2ps xmm1, xmm1
movd xmm0, eax
mov eax, 0x6a6c
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
mov word [ebp - 0x58], ax
mov byte [ebp - 0x56], 0
sub esp, 0x10
mov dword [ebp - 4], 4
movups xmm0, xmmword [ebp - 0x40]
mov eax, esp
mov ecx, esi
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
movups xmmword [eax], xmm0
lea eax, [ebp - 0x58]
push dword [0x1025618c]
push 0
push 1
push eax
call fcn.10093290
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1003ada7
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003ad9d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003ad9d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100eebed
add esp, 8
call fcn.10028fc0
cmp byte [0x1028c600], 0
mov esi, eax
movss xmm0, dword [0x10256024]
mulss xmm0, dword [0x1016ae34]
mov dword [ebp - 0x40], 0xff
mov dword [ebp - 0x3c], 0xff
mov dword [ebp - 0x38], 0xff
je 0x1003ade5
cvttss2si ecx, xmm0
movzx eax, cl
jmp 0x1003adec
cvttss2si eax, xmm0
movzx eax, al
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x18]
cdq
movd xmm2, dword [0x1028f9a0]
sub eax, edx
sar eax, 1
cvtdq2ps xmm2, xmm2
mov dword [ebp - 0x48], 2
mov dword [ebp - 0x44], 0xf
movd xmm1, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [0x1028f99c]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
mov eax, 0x6a6c
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
mov word [ebp - 0x58], ax
mov byte [ebp - 0x56], 0
sub esp, 0x10
mov dword [ebp - 4], 5
movups xmm0, xmmword [ebp - 0x40]
mov eax, esp
mov ecx, esi
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
movups xmmword [eax], xmm0
lea eax, [ebp - 0x58]
push dword [0x1025618c]
push 0
push 1
push eax
call fcn.10093290
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1003aeb0
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003aea6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003aea6
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100eebed
add esp, 8
cmp byte [0x1028f991], 0
je 0x1003aee2
push dword [0x1028f994]
call edi
test ax, ax
je 0x1003aee2
mov al, byte [0x1028f9f0]
test al, al
je 0x1003aee7
movsd xmm1, qword [ebp - 0x28]
cvtpd2ps xmm1, xmm1
addss xmm1, dword [0x10256138]
jmp 0x1003aefc
mov al, byte [0x1028f9f0]
movsd xmm2, qword [ebp - 0x28]
movss xmm1, dword [0x10256138]
cvtpd2ps xmm0, xmm2
subss xmm1, xmm0
movss xmm0, dword [0x1016a544]
comiss xmm1, xmm0
movss dword [0x10256138], xmm1
jbe 0x1003af20
mov dword [0x10256138], 0x3f800000
movaps xmm1, xmm0
jmp 0x1003af40
xorps xmm0, xmm0
comiss xmm0, xmm1
jbe 0x1003af37
mov dword [0x10256138], 0
jmp 0x1003b177
comiss xmm1, xmm0
jbe 0x1003b177
test al, al
je 0x1003b177
movd xmm0, dword [ebp - 0x14]
mulss xmm1, dword [0x1016a994]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x14], eax
call fcn.10028fc0
cmp byte [0x1028c5e4], 0
mov esi, eax
movss xmm0, dword [0x10256138]
mulss xmm0, dword [0x1016ae34]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
je 0x1003afa1
cvttss2si ecx, xmm0
movzx eax, cl
jmp 0x1003afa8
cvttss2si eax, xmm0
movzx eax, al
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x18]
cdq
sub eax, edx
movd xmm2, dword [0x1028f9a0]
sar eax, 1
inc eax
mov dword [ebp - 0x48], 2
cvtdq2ps xmm2, xmm2
mov dword [ebp - 0x44], 0xf
movd xmm1, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [0x1028f99c]
inc eax
cvtdq2ps xmm1, xmm1
movd xmm0, eax
mov eax, 0x6a6d
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
mov word [ebp - 0x58], ax
mov byte [ebp - 0x56], 0
sub esp, 0x10
mov dword [ebp - 4], 6
movups xmm0, xmmword [ebp - 0x40]
mov eax, esp
mov ecx, esi
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
movups xmmword [eax], xmm0
lea eax, [ebp - 0x58]
push dword [0x1025618c]
push 0
push 1
push eax
call fcn.10093290
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1003b06e
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003b064
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003b064
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100eebed
add esp, 8
call fcn.10028fc0
cmp byte [0x1028c5e4], 0
mov esi, eax
movss xmm0, dword [0x10256138]
mulss xmm0, dword [0x1016ae34]
mov dword [ebp - 0x40], 0xff
mov dword [ebp - 0x3c], 0xff
mov dword [ebp - 0x38], 0xff
je 0x1003b0ac
cvttss2si ecx, xmm0
movzx eax, cl
jmp 0x1003b0b3
cvttss2si eax, xmm0
movzx eax, al
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x18]
cdq
movd xmm2, dword [0x1028f9a0]
sub eax, edx
sar eax, 1
cvtdq2ps xmm2, xmm2
mov dword [ebp - 0x48], 2
mov dword [ebp - 0x44], 0xf
movd xmm1, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [0x1028f99c]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
mov eax, 0x6a6d
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
mov word [ebp - 0x58], ax
mov byte [ebp - 0x56], 0
sub esp, 0x10
mov dword [ebp - 4], 7
movups xmm0, xmmword [ebp - 0x40]
mov eax, esp
mov ecx, esi
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
movups xmmword [eax], xmm0
lea eax, [ebp - 0x58]
push dword [0x1025618c]
push 0
push 1
push eax
call fcn.10093290
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1003b177
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003b16d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003b16d
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100eebed
add esp, 8
cmp byte [0x1028f990], 0
je 0x1003b1a9
push dword [0x1028f9ac]
call edi
test ax, ax
je 0x1003b1a9
mov al, byte [0x1028fa0c]
test al, al
je 0x1003b1ae
movsd xmm1, qword [ebp - 0x28]
cvtpd2ps xmm0, xmm1
addss xmm0, dword [0x10256034]
jmp 0x1003b1c3
mov al, byte [0x1028fa0c]
movsd xmm1, qword [ebp - 0x28]
movss xmm0, dword [0x10256034]
cvtpd2ps xmm2, xmm1
subss xmm0, xmm2
movss xmm1, dword [0x1016a544]
comiss xmm0, xmm1
movss dword [0x10256034], xmm0
jbe 0x1003b1e4
mov dword [0x10256034], 0x3f800000
jmp 0x1003b207
xorps xmm2, xmm2
comiss xmm2, xmm0
jbe 0x1003b1fb
mov dword [0x10256034], 0
jmp 0x1003b430
comiss xmm0, xmm2
movaps xmm1, xmm0
jbe 0x1003b430
test al, al
je 0x1003b430
movd xmm0, dword [ebp - 0x14]
mulss xmm1, dword [0x1016a994]
cvtdq2ps xmm0, xmm0
addss xmm1, xmm0
cvttss2si eax, xmm1
mov dword [ebp - 0x14], eax
call fcn.10028fc0
cmp byte [0x1028c614], 0
mov esi, eax
movss xmm0, dword [0x10256034]
mulss xmm0, dword [0x1016ae34]
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
je 0x1003b268
cvttss2si ecx, xmm0
movzx eax, cl
jmp 0x1003b26f
cvttss2si eax, xmm0
movzx eax, al
mov dword [ebp - 0x34], eax
mov edi, 0x626a
mov eax, dword [ebp - 0x18]
cdq
sub eax, edx
movd xmm2, dword [0x1028f9a0]
sar eax, 1
inc eax
mov dword [ebp - 0x48], 2
cvtdq2ps xmm2, xmm2
mov dword [ebp - 0x44], 0xf
movd xmm1, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [0x1028f99c]
inc eax
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
mov word [ebp - 0x58], di
mov byte [ebp - 0x56], 0
sub esp, 0x10
mov dword [ebp - 4], 8
movups xmm0, xmmword [ebp - 0x40]
mov eax, esp
mov ecx, esi
push dword [ebp - 0x2c]
push dword [ebp - 0x30]
movups xmmword [eax], xmm0
lea eax, [ebp - 0x58]
push dword [0x1025618c]
push 0
push 1
push eax
call fcn.10093290
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1003b335
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003b32b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003b32b
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100eebed
add esp, 8
call fcn.10028fc0
cmp byte [0x1028c614], 0
mov ecx, eax
je 0x1003b34e
movups xmm3, xmmword [0x1028fc30]
jmp 0x1003b381
movss xmm0, dword [0x10256034]
mulss xmm0, dword [0x1016ae34]
mov dword [ebp - 0x40], 0xff
mov dword [ebp - 0x3c], 0xff
mov dword [ebp - 0x38], 0xff
cvttss2si eax, xmm0
movzx eax, al
mov dword [ebp - 0x34], eax
movups xmm3, xmmword [ebp - 0x40]
mov eax, dword [ebp - 0x18]
movd xmm2, dword [0x1028f9a0]
cdq
sub eax, edx
mov dword [ebp - 0x48], 2
sar eax, 1
cvtdq2ps xmm2, xmm2
mov dword [ebp - 0x44], 0xf
movd xmm1, eax
mov eax, dword [ebp - 0x14]
sub eax, dword [0x1028f99c]
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movss dword [ebp - 0x30], xmm1
movss dword [ebp - 0x2c], xmm0
xorps xmm0, xmm0
movups xmmword [ebp - 0x58], xmm0
mov word [ebp - 0x58], di
mov byte [ebp - 0x56], 0
sub esp, 0x10
mov dword [ebp - 4], 9
mov eax, esp
push dword [ebp - 0x2c]
movups xmmword [eax], xmm3
lea eax, [ebp - 0x58]
push dword [ebp - 0x30]
push dword [0x1025618c]
push 0
push 1
push eax
call fcn.10093290
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1003b430
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003b426
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1003b426
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100eebed
add esp, 8
mov eax, dword [ebp - 0x1c]
mov dword [0x1025602c], eax
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret