Function at 0x1009f9e0
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
sub esp, 0x148
mov eax, dword [0x1014600c]
xor eax, ebp
mov dword [ebp - 4], eax
xor eax, eax
cmp dword [0x101a98bc], 0xffffffff
push esi
push edi
mov dword [ebp - 0x140], eax
mov dword [ebp - 0x13c], eax
je 0x100a0f0e
call fcn.10079670
cmp al, 1
je 0x100a0f04
cmp byte [0x101946ad], 1
je 0x100a0f04
cmp dword [0x101f4758], 0
je 0x100a0f0e
cmp dword [0x102c1300], 0
je 0x100a0f0e
call fcn.10078660
test al, al
jne 0x100a0f0e
push 0x48
mov esi, 0x861110
call esi
mov edi, 0x85ec20
mov ecx, eax
call edi
test al, al
jne 0x100a0f0e
push 1
call esi
mov ecx, eax
call edi
test al, al
jne 0x100a0f0e
push 0x39
call esi
mov ecx, eax
call edi
test al, al
jne 0x100a0f0e
push 0x41
call esi
mov ecx, eax
call edi
test al, al
jne 0x100a0f0e
push 0x22
call esi
mov ecx, eax
call edi
test al, al
jne 0x100a0f0e
mov eax, dword [0x101f4758]
cmp eax, 1
je 0x1009fad1
cmp eax, 2
jne 0x100a0f0e
mov eax, dword [0x7bc4f04]
mov dword [ebp - 0x148], eax
mov esi, dword [0x101a98f8]
movss xmm0, dword [eax + 0x418]
cvtps2pd xmm0, xmm0
divsd xmm0, qword [0x1013c800]
cvttsd2si eax, xmm0
cdq
xor eax, edx
sub eax, edx
imul eax, eax, 0x2d
movd xmm0, eax
cvtdq2pd xmm0, xmm0
addsd xmm0, qword [0x1013c978]
cvtpd2ps xmm0, xmm0
movss dword [ebp - 0x13c], xmm0
call fcn.1009f3a0
cmp esi, 1
jne 0x1009fb41
movss xmm2, dword [0x1013c19c]
movsd xmm0, qword [0x1013c418]
movss dword [ebp - 0x12c], xmm2
jmp 0x1009fb78
cmp esi, 2
jne 0x1009fb60
movss xmm2, dword [0x1013c1d8]
movsd xmm0, qword [0x1013c4b8]
movss dword [ebp - 0x12c], xmm2
jmp 0x1009fb78
movss xmm0, dword [0x1013c2b0]
movss dword [ebp - 0x12c], xmm0
movsd xmm0, qword [0x1013c560]
mov eax, dword [0x101a98cc]
mov esi, 0x8000
cvtpd2ps xmm0, xmm0
mov ecx, dword [0x879340c]
mov edx, dword [0x8793410]
movd xmm2, ecx
movss dword [ebp - 0x144], xmm0
movd xmm0, eax
shr eax, 0x1f
cvtdq2pd xmm0, xmm0
cvtdq2ps xmm2, xmm2
addsd xmm0, qword [eax*8 + 0x1013d6c0]
mov eax, dword [0x101a98c8]
cvtpd2ps xmm1, xmm0
movd xmm0, eax
shr eax, 0x1f
cvtdq2pd xmm0, xmm0
movss dword [ebp - 0x138], xmm1
addsd xmm0, qword [eax*8 + 0x1013d6c0]
xor eax, eax
cmp ecx, dword [0xe61e58]
cmovl eax, ecx
cvtpd2ps xmm0, xmm0
movd xmm3, eax
xor eax, eax
cmp edx, dword [0xe61e5c]
cvtdq2ps xmm3, xmm3
cmovl eax, edx
movss dword [ebp - 0x124], xmm0
comiss xmm0, xmm2
movd xmm4, eax
cvtdq2ps xmm4, xmm4
movss dword [ebp - 0x128], xmm3
movss dword [ebp - 0x130], xmm4
ja 0x1009fc8d
addss xmm0, dword [0x1013ce14]
comiss xmm2, xmm0
ja 0x1009fc8d
movd xmm2, edx
cvtdq2ps xmm2, xmm2
comiss xmm1, xmm2
ja 0x1009fc8d
movaps xmm0, xmm1
addss xmm0, dword [0x1013ce2c]
comiss xmm2, xmm0
ja 0x1009fc8d
cmp byte [0x101a98ac], 0
jne 0x1009fc9a
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
movss xmm3, dword [ebp - 0x128]
movss xmm4, dword [ebp - 0x130]
test si, ax
je 0x1009fc8d
cvttss2si edx, xmm3
mov byte [0x101a98ac], 1
cvttss2si esi, xmm4
mov word [0x101a98ae], dx
mov word [0x101a98b0], si
jmp 0x1009fca8
cmp byte [0x101a98ac], 0
je 0x1009fd9a
mov si, word [0x101a98b0]
mov dx, word [0x101a98ae]
cmp dword [0xe61e58], 0x550
jl 0x1009fcc9
cmp dword [0x102c1460], 0
je 0x1009fcc9
mov eax, 0x3ac
mov ecx, 0x1b8
jmp 0x1009fcd3
mov ecx, 0x12c
mov eax, 0x1f4
movss xmm2, dword [0x1013ccb8]
movd xmm1, eax
movsx eax, dx
cvtdq2ps xmm1, xmm1
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movsx eax, si
subss xmm3, xmm0
movaps xmm0, xmm2
addss xmm3, dword [ebp - 0x124]
maxss xmm0, xmm3
minss xmm1, xmm0
movd xmm0, eax
cvtdq2ps xmm0, xmm0
movaps xmm3, xmm1
movd xmm1, ecx
subss xmm4, xmm0
movss dword [ebp - 0x124], xmm3
cvtdq2ps xmm1, xmm1
addss xmm4, dword [ebp - 0x138]
movaps xmm0, xmm3
maxss xmm2, xmm4
minss xmm1, xmm2
movss dword [ebp - 0x138], xmm1
call fcn.1012b380
movss xmm0, dword [ebp - 0x138]
mov esi, eax
mov dword [0x101a98b4], esi
call fcn.1012b380
cmp byte [0x101a98ac], 0
mov edi, eax
mov dword [0x101a98b8], edi
je 0x1009fd9a
push 1
call dword [sym.imp.USER32.dll_GetKeyState]
mov ecx, 0x8000
test cx, ax
jne 0x1009fd9a
mov byte [0x101a98ac], 0
mov dword [0x101a98c8], esi
mov dword [0x101a98cc], edi
mov dword [0x101a98b4], esi
mov dword [0x101a98b8], edi
movss xmm1, dword [ebp - 0x138]
mov esi, 0x637c60
addss xmm1, dword [0x1013cc58]
movss xmm2, dword [ebp - 0x124]
subss xmm2, dword [0x1013c2b0]
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
movss dword [ebp - 0x128], xmm1
movss dword [ebp - 0x130], xmm2
mov dword [esp + 0x1c], 0x3e93f7cc
mov dword [esp + 0x18], 0x3f13f7ce
mov dword [esp + 0x14], 0x3d800000
mov dword [esp + 0x10], 0x3ebd70a2
mov dword [esp + 0xc], 0x42fa0000
mov dword [esp + 8], 0x42fa0000
movss dword [esp + 4], xmm1
movss dword [esp], xmm2
push 0x7ae8
call esi
movss xmm0, dword [ebp - 0x12c]
add esp, 0x2c
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
movss dword [esp + 0x1c], xmm0
movss xmm0, dword [ebp - 0x144]
movss dword [esp + 0x18], xmm0
movss xmm0, dword [0x101a98f4]
movss dword [esp + 0x14], xmm0
movss xmm0, dword [0x101a98f0]
movss dword [esp + 0x10], xmm0
movss xmm0, dword [ebp - 0x138]
addss xmm0, dword [0x1013ccb0]
mov dword [esp + 0xc], 0x42c80000
mov dword [esp + 8], 0x42be0000
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x124]
addss xmm0, dword [0x1013cc98]
movss dword [esp], xmm0
push 0x7ae6
call esi
mov esi, dword [0xe8c58c]
add esp, 0x30
mov eax, 0x41fe10
call eax
push esi
mov edx, 0x420120
mov ecx, eax
call edx
mov eax, dword [ebp - 0x148]
mov ecx, dword [0xe61e18]
mov esi, dword [eax + 0xb0]
mov edi, dword [eax + 0xac]
lea eax, [ecx - 0x52]
cmp eax, 0x44
ja 0x1009fefa
lea eax, [ecx + 0xe90]
mov ecx, 0x8128adc
push eax
mov eax, 0x402320
call eax
jmp 0x1009ff05
push ecx
mov eax, 0x5d2c10
call eax
add esp, 4
push esi
push edi
push eax
lea eax, [ebp - 0x108]
push str._s____d____d__
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x14
mov esi, 0x41fe10
push 0
push 0
push 0
push 0
call esi
mov edx, 0x4200b0
mov ecx, eax
call edx
push 0xff
push 0xf0
push 0xf0
push 0xf0
call esi
mov edx, 0x420040
mov ecx, eax
call edx
mov eax, dword [0x101a98d8]
mov esi, 0x635fd0
sub eax, dword [0x101a98e8]
add eax, dword [0x101a98b4]
mov dword [0x101a98e0], eax
mov eax, dword [0x101a98dc]
sub eax, dword [0x101a98ec]
add eax, dword [0x101a98b8]
push 1
mov dword [0x101a98e4], eax
call esi
mov eax, dword [0x101a98e4]
movss xmm0, dword [ebp - 0x13c]
mov dword [esp], 0x3f0c0000
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f0c0000
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0
movss dword [esp + 0x10], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
mov dword [esp + 0xc], 0x41200000
mov dword [esp + 8], 0x41200000
addsd xmm0, qword [eax*8 + 0x1013d6c0]
mov eax, dword [0x101a98e0]
cvtpd2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
addsd xmm0, qword [eax*8 + 0x1013d6c0]
mov eax, 0x637e80
cvtpd2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ec2
call eax
lea edi, [esi - 0x80]
call edi
add esp, 0x1c
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call dword [sym.imp.OPENGL32.dll_glColor3f]
push 0
call esi
add esp, 4
push 1
call esi
movss xmm0, dword [0x101a9900]
mov esi, dword [sym.imp.OPENGL32.dll_glColor4f]
movss dword [esp], xmm0
sub esp, 0xc
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call esi
call fcn.1009f580
call edi
push 0
mov eax, 0x635fd0
call eax
mov dword [esp], 0x3f800000
sub esp, 0xc
mov dword [esp + 8], 0x3f800000
mov dword [esp + 4], 0x3f800000
mov dword [esp], 0x3f800000
call esi
mov eax, dword [0x101f4758]
cmp eax, 1
jne 0x100a011c
movss xmm0, dword [ebp - 0x128]
xorps xmm1, xmm1
push ecx
mov dword [esp], 0
push eax
push eax
sub esp, 0x20
mov dword [esp + 0x1c], 0x3f1c6a7d
mov dword [esp + 0x18], 0x3e9f011e
mov dword [esp + 0x14], 0x3cf5c28e
mov dword [esp + 0x10], 0x3c54fdf1
mov dword [esp + 0xc], 0x42f00000
mov dword [esp + 8], 0x42f00000
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x124]
addss xmm0, xmm1
movss dword [esp], xmm0
push 0x7ae9
jmp 0x100a0180
cmp eax, 2
jne 0x100a018a
movss xmm0, dword [ebp - 0x128]
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3e93f7cc
mov dword [esp + 0x18], 0x3f13f7ce
mov dword [esp + 0x14], 0x3d800000
mov dword [esp + 0x10], 0x3ebd70a2
mov dword [esp + 0xc], 0x42f80000
mov dword [esp + 8], 0x42f80000
movss dword [esp + 4], xmm0
movss xmm0, dword [ebp - 0x130]
movss dword [esp], xmm0
push 0x7ae7
mov eax, 0x637c60
call eax
add esp, 0x30
movss xmm0, dword [ebp - 0x124]
addss xmm0, dword [0x1013cd50]
push ecx
mov dword [esp], 0
push 1
push 1
cvttss2si edi, xmm0
sub esp, 0x20
mov dword [esp + 0x1c], 0x3d978d45
mov dword [esp + 0x18], 0x3e1ba5de
movss xmm0, dword [ebp - 0x138]
addss xmm0, dword [0x1013ce70]
mov dword [esp + 0x14], 0x3eff7cee
mov dword [esp + 0x10], 0x3f560419
mov dword [esp + 0xc], 0x41d00000
mov dword [esp + 8], 0x41d00000
cvttss2si esi, xmm0
lea eax, [esi - 3]
movd xmm0, eax
lea eax, [edi - 5]
cvtdq2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movd xmm0, eax
mov eax, 0x637c60
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
push 0x12
push 0x12
push esi
push edi
mov eax, 0x790b10
call eax
add esp, 0x40
movd xmm0, esi
test al, al
mov eax, dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x128], eax
mov eax, 0x637c60
cvtdq2ps xmm0, xmm0
push ecx
mov dword [esp], 0
push 1
push 1
je 0x100a031c
sub esp, 0x20
cmp byte [0x8793386], 0
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
mov dword [esp + 0x14], 0x3edcfab0
je 0x100a0312
mov dword [esp + 0x10], 0x3e7ffffd
mov dword [esp + 0xc], 0x41926666
mov dword [esp + 8], 0x41926666
movss dword [esp + 4], xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
push 0
push 0
push 0x19
mov eax, 0x6d6c20
call eax
mov edi, dword [ebp - 0x128]
add esp, 0x3c
call edi
mov ecx, dword [0x101a98fc]
add ecx, 0xc8
cmp eax, ecx
jb 0x100a0371
mov eax, dword [0x101a98f8]
cmp eax, 3
jne 0x100a02f9
mov dword [0x101a98f8], 2
call edi
mov dword [0x101a98fc], eax
jmp 0x100a0371
cmp eax, 2
mov ecx, 1
cmove eax, ecx
mov dword [0x101a98f8], eax
call edi
mov dword [0x101a98fc], eax
jmp 0x100a0371
mov dword [esp + 0x10], 0x3dfdf3b2
jmp 0x100a033f
sub esp, 0x20
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
mov dword [esp + 0x14], 0x3edcfab0
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41926666
mov dword [esp + 8], 0x41926666
movss dword [esp + 4], xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
mov edi, dword [ebp - 0x128]
add esp, 0x30
movss xmm0, dword [ebp - 0x124]
addss xmm0, dword [0x1013ce08]
cvttss2si ecx, xmm0
movss xmm0, dword [ebp - 0x138]
addss xmm0, dword [0x1013ce2c]
push ecx
mov dword [esp], 0
push 1
push 1
cvttss2si eax, xmm0
sub esp, 0x20
mov dword [ebp - 0x130], ecx
lea esi, [ecx - 5]
mov dword [esp + 0x1c], 0x3d978d45
mov dword [esp + 0x18], 0x3e1ba5de
movd xmm1, esi
mov dword [ebp - 0x12c], eax
add eax, 0xfffffffd
mov dword [esp + 0x14], 0x3eff7cee
cvtdq2ps xmm1, xmm1
mov dword [esp + 0x10], 0x3f560419
mov dword [esp + 0xc], 0x41d00000
mov dword [esp + 8], 0x41d00000
movd xmm0, eax
mov eax, 0x637c60
cvtdq2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push 0x7ae7
call eax
mov eax, dword [ebp - 0x12c]
mov ecx, dword [ebp - 0x130]
push 0x12
push 0x12
push eax
push ecx
mov eax, 0x790b10
call eax
add esp, 0x40
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
test al, al
mov eax, 0x637c60
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
mov dword [esp + 0x14], 0x3ebced91
je 0x100a059a
cmp byte [0x8793386], 0
je 0x100a0550
movd xmm0, dword [ebp - 0x12c]
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x10], 0x3e7ffffd
mov dword [esp + 0xc], 0x41926666
mov dword [esp + 8], 0x41926666
movss dword [esp + 4], xmm0
movd xmm0, dword [ebp - 0x130]
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
push 0
push 0
push 0x19
mov eax, 0x6d6c20
call eax
add esp, 0x3c
call edi
mov ecx, dword [0x101a98fc]
add ecx, 0xc8
cmp eax, ecx
jb 0x100a04fb
mov eax, dword [0x101a98f8]
cmp eax, 1
jne 0x100a04e4
mov dword [0x101a98f8], 2
jmp 0x100a04f4
cmp eax, 2
mov ecx, 3
cmove eax, ecx
mov dword [0x101a98f8], eax
call edi
mov dword [0x101a98fc], eax
mov edi, dword [ebp - 0x12c]
push 0x12
push 0x12
push edi
push dword [ebp - 0x130]
mov eax, 0x790b10
call eax
add esp, 0x10
test al, al
je 0x100a0632
cmp byte [0x8793386], 0
je 0x100a05e2
push 0
push 0
push 0x19
mov eax, 0x6d6c20
call eax
mov eax, dword [0xe8cb7c]
add esp, 0xc
cmp byte [eax + 8], 0
jne 0x100a05a4
movsd xmm0, qword [0x1013c460]
jmp 0x100a05ac
mov dword [esp + 0x10], 0x3dfdf3b2
mov edi, dword [ebp - 0x12c]
mov dword [esp + 0xc], 0x41926666
mov dword [esp + 8], 0x41926666
movd xmm0, edi
cvtdq2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movd xmm0, dword [ebp - 0x130]
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
add esp, 0x30
jmp 0x100a0501
mov dword [esp + 0x10], 0
jmp 0x100a0558
movsd xmm0, qword [0x1013c4d0]
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
cvtpd2ps xmm0, xmm0
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
movss dword [esp + 0x14], xmm0
mov dword [esp + 0x10], 0x3e7ffffd
jmp 0x100a0680
mov eax, dword [0xe8cb7c]
cmp byte [eax + 8], 0
jne 0x100a05f7
movsd xmm0, qword [0x1013c460]
jmp 0x100a05ff
movsd xmm0, qword [0x1013c4d0]
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
cvtpd2ps xmm0, xmm0
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
movss dword [esp + 0x14], xmm0
mov dword [esp + 0x10], 0x3dfdf3b2
jmp 0x100a0680
mov eax, dword [0xe8cb7c]
cmp byte [eax + 8], 0
jne 0x100a0647
movsd xmm0, qword [0x1013c460]
jmp 0x100a064f
movsd xmm0, qword [0x1013c4d0]
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
cvtpd2ps xmm0, xmm0
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
movss dword [esp + 0x14], xmm0
mov dword [esp + 0x10], 0
movd xmm0, edi
mov eax, 0x637c60
cvtdq2ps xmm0, xmm0
mov dword [esp + 0xc], 0x41926666
mov dword [esp + 8], 0x41926666
movss dword [esp + 4], xmm0
movd xmm0, dword [ebp - 0x130]
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
movss xmm0, dword [ebp - 0x124]
add esp, 0x30
addss xmm0, dword [0x1013cca0]
cvttss2si ecx, xmm0
movss xmm0, dword [ebp - 0x138]
addss xmm0, dword [0x1013ce34]
push ecx
mov dword [esp], 0
push 1
push 1
cvttss2si eax, xmm0
sub esp, 0x20
mov dword [ebp - 0x124], ecx
lea edi, [ecx - 5]
mov dword [esp + 0x1c], 0x3d978d45
mov dword [esp + 0x18], 0x3e1ba5de
movd xmm1, edi
mov dword [ebp - 0x12c], eax
add eax, 0xfffffffd
mov dword [esp + 0x14], 0x3eff7cee
cvtdq2ps xmm1, xmm1
mov dword [esp + 0x10], 0x3f560419
mov dword [esp + 0xc], 0x41d00000
mov dword [esp + 8], 0x41d00000
movd xmm0, eax
mov eax, 0x637c60
cvtdq2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movss dword [esp], xmm1
push 0x7ae7
call eax
mov eax, dword [ebp - 0x12c]
mov ecx, dword [ebp - 0x124]
push 0x12
push 0x12
push eax
push ecx
mov eax, 0x790b10
call eax
add esp, 0x40
test al, al
je 0x100a08d8
cmp byte [0x8793386], 0
je 0x100a08a7
push 0
push 0
push 0x19
mov eax, 0x6d6c20
call eax
movd xmm0, dword [ebp - 0x12c]
add esp, 8
cvtdq2ps xmm0, xmm0
mov eax, 0x637c60
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
mov dword [esp + 0x14], 0x3f2e9796
mov dword [esp + 0x10], 0x3e7ffffd
mov dword [esp + 0xc], 0x41926666
mov dword [esp + 8], 0x41926666
movss dword [esp + 4], xmm0
movd xmm0, dword [ebp - 0x124]
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
add esp, 0x30
cmp dword [0x101f47b0], 2
jne 0x100a084c
call dword [ebp - 0x128]
mov ecx, dword [0x10199d20]
add ecx, 0xfa
cmp eax, ecx
jb 0x100a0947
mov ecx, dword [0x10526028]
cmp byte [ecx + 0x29], 1
setne al
mov byte [ecx + 0x29], al
call dword [ebp - 0x128]
mov dword [0x10199d20], eax
jmp 0x100a0947
call dword [ebp - 0x128]
mov ecx, dword [0x10199d20]
add ecx, 0xfa
cmp eax, ecx
jb 0x100a0947
cmp byte [0x101924ed], 0
je 0x100a0886
mov byte [0x101924ed], 0
call dword [ebp - 0x128]
mov dword [0x10199d20], eax
jmp 0x100a0947
mov byte [0x101924ed], 1
mov dword [0x10181180], 5
call dword [ebp - 0x128]
mov dword [0x10199d20], eax
jmp 0x100a0947
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
mov dword [esp + 0x14], 0x3f2e9796
mov dword [esp + 0x10], 0x3dfdf3b2
jmp 0x100a0907
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
mov dword [esp + 0x14], 0x3f2e9796
mov dword [esp + 0x10], 0
movd xmm0, dword [ebp - 0x12c]
mov eax, 0x637c60
cvtdq2ps xmm0, xmm0
mov dword [esp + 0xc], 0x41926666
mov dword [esp + 8], 0x41926666
movss dword [esp + 4], xmm0
movd xmm0, dword [ebp - 0x124]
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
add esp, 0x30
mov ecx, 0x101f44d3
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100a0950
sub ecx, edx
je 0x100a09aa
push ecx
push 0x101f44d3
lea ecx, [ebp - 0x120]
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x10c], 0xf
mov byte [ebp - 0x120], al
call fcn.1000c7d0
sub esp, 8
mov dword [ebp - 0x140], 1
lea ecx, [ebp - 0x120]
call fcn.1000c790
mov byte [ebp - 0x131], 0
cmp eax, 0xffffffff
jne 0x100a09b1
mov byte [ebp - 0x131], 1
test byte [ebp - 0x140], 1
je 0x100a09f6
mov edx, dword [ebp - 0x10c]
cmp edx, 0x10
jb 0x100a09f6
mov ecx, dword [ebp - 0x120]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x100a09ec
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100a09ec
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push edx
push ecx
call fcn.100ddf04
add esp, 8
cmp byte [ebp - 0x131], 0
je 0x100a0f0e
movss xmm0, dword [ebp - 0x138]
addss xmm0, dword [0x1013cc88]
push ecx
mov dword [esp], 0
push 1
push 1
cvttss2si eax, xmm0
sub esp, 0x20
mov dword [esp + 0x1c], 0x3d978d45
mov dword [esp + 0x18], 0x3e1ba5de
mov dword [esp + 0x14], 0x3eff7cee
mov dword [ebp - 0x13c], eax
add eax, 0xfffffffd
mov dword [esp + 0x10], 0x3f560419
mov dword [esp + 0xc], 0x41d00000
mov dword [esp + 8], 0x41d00000
movd xmm0, eax
mov eax, 0x637c60
cvtdq2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movd xmm0, edi
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
mov edi, dword [ebp - 0x13c]
mov eax, 0x790b10
push 0x12
push 0x12
push edi
push dword [ebp - 0x124]
call eax
add esp, 0x40
test al, al
je 0x100a0be2
cmp byte [0x8793386], 0
je 0x100a0bb1
push 0
push 0
push 0x19
mov eax, 0x6d6c20
call eax
mov dword [esp + 8], 0
add esp, 8
movd xmm0, edi
mov eax, 0x637c60
cvtdq2ps xmm0, xmm0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
mov dword [esp + 0x14], 0x3f3e9e26
mov dword [esp + 0x10], 0x3e7ffffd
mov dword [esp + 0xc], 0x41926666
mov dword [esp + 8], 0x41926666
movss dword [esp + 4], xmm0
movd xmm0, dword [ebp - 0x124]
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
mov edi, dword [ebp - 0x128]
add esp, 0x30
call edi
mov ecx, dword [0x10199d20]
add ecx, 0xfa
cmp eax, ecx
jb 0x100a0c4d
cmp byte [0x101f489f], 0
jne 0x100a0b91
mov ecx, 0x10147808
call fcn.1002e0d0
mov ecx, 0x10147808
call fcn.1002de60
cmp dword [0x10147810], 1
jne 0x100a0ba5
push str.Camera__RESET_
push 1
push 0x10191cb0
call fcn.10078450
add esp, 0xc
call edi
mov dword [0x10199d20], eax
jmp 0x100a0c4d
call edi
sub eax, dword [0x10194028]
cmp eax, 0x3e8
jb 0x100a0ba5
call fcn.100ac920
call edi
mov dword [0x10199d20], eax
jmp 0x100a0c4d
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
mov dword [esp + 0x14], 0x3f3e9e26
mov dword [esp + 0x10], 0x3dfdf3b2
jmp 0x100a0c11
push ecx
mov dword [esp], 0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
mov dword [esp + 0x14], 0x3f3e9e26
mov dword [esp + 0x10], 0
movd xmm0, edi
mov eax, 0x637c60
cvtdq2ps xmm0, xmm0
mov dword [esp + 0xc], 0x41926666
mov dword [esp + 8], 0x41926666
movss dword [esp + 4], xmm0
movd xmm0, dword [ebp - 0x124]
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
add esp, 0x30
movss xmm0, dword [ebp - 0x138]
addss xmm0, dword [0x1013cca0]
push ecx
mov dword [esp], 0
push 1
push 1
cvttss2si edi, xmm0
sub esp, 0x20
mov dword [esp + 0x1c], 0x3d978d45
mov dword [esp + 0x18], 0x3e1ba5de
mov dword [esp + 0x14], 0x3eff7cee
mov dword [esp + 0x10], 0x3f560419
mov dword [esp + 0xc], 0x41d00000
mov dword [esp + 8], 0x41d00000
lea eax, [edi - 3]
movd xmm0, eax
mov eax, 0x637c60
cvtdq2ps xmm0, xmm0
movss dword [esp + 4], xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
mov esi, dword [ebp - 0x130]
mov eax, 0x790b10
push 0x12
push 0x12
push edi
push esi
call eax
add esp, 0x40
test al, al
je 0x100a0e8a
cmp byte [0x8793386], 0
je 0x100a0e10
push 0
push 0
push 0x19
mov eax, 0x6d6c20
call eax
mov dword [esp + 8], 0
add esp, 8
movd xmm0, edi
mov eax, 0x637c60
cvtdq2ps xmm0, xmm0
push 1
push 1
sub esp, 0x20
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
mov dword [esp + 0x14], 0x3f1e9107
mov dword [esp + 0x10], 0x3e7ffffd
mov dword [esp + 0xc], 0x41926666
mov dword [esp + 8], 0x41926666
movss dword [esp + 4], xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
mov esi, dword [ebp - 0x128]
add esp, 0x30
call esi
mov ecx, dword [0x10199d20]
add ecx, 0xfa
cmp eax, ecx
jb 0x100a0f0e
cmp byte [0x101f489f], 0
jne 0x100a0de2
cmp dword [0x1014783c], 0
je 0x100a0da9
mov ecx, 0x10147808
call fcn.1002e0d0
mov edx, str.Camera3D__OFFRESET_
jmp 0x100a0dae
mov edx, str.Camera3D__ON_
mov ecx, 0x10147808
call fcn.1002de60
push edx
push 1
push 0x10191cb0
call fcn.10078450
add esp, 0xc
call esi
mov dword [0x10199d20], eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ddef3
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call esi
sub eax, dword [0x10194068]
cmp eax, 0x3e8
jb 0x100a0df6
call fcn.100ac8b0
call esi
mov dword [0x10199d20], eax
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ddef3
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push ecx
mov dword [esp], 0
mov eax, 0x637c60
push 1
push 1
sub esp, 0x20
movd xmm0, edi
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
mov dword [esp + 0x14], 0x3f1e9107
mov dword [esp + 0x10], 0x3dfdf3b2
mov dword [esp + 0xc], 0x41926666
mov dword [esp + 8], 0x41926666
movss dword [esp + 4], xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
add esp, 0x30
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ddef3
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
push ecx
mov dword [esp], 0
mov eax, 0x637c60
push 1
push 1
sub esp, 0x20
movd xmm0, edi
cvtdq2ps xmm0, xmm0
mov dword [esp + 0x1c], 0x3d8726c2
mov dword [esp + 0x18], 0x3df9db14
mov dword [esp + 0x14], 0x3f1e9107
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], 0x41926666
mov dword [esp + 8], 0x41926666
movss dword [esp + 4], xmm0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
movss dword [esp], xmm0
push 0x7ae7
call eax
add esp, 0x30
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.100ddef3
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
mov dword [0x102c1300], 0
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.100ddef3
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret