Function at 0x100bf1b0
Capabilities:
Log keystrokes via polling

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100ece48
mov eax, dword fs:[0]
push eax
sub esp, 0x25c
mov eax, dword [0x1011100c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x23c], edx
mov edi, ecx
mov ebx, dword [ebp + 0xc]
mov dword [ebp - 0x230], 0
test ebx, ebx
je 0x100c03e9
cmp dword [ebx + 4], 0
je 0x100c03e9
mov eax, dword [0x1011681c]
mov eax, dword [eax + 0xa8]
cmp byte [eax], 0
jne 0x100c03e9
mov eax, dword [0x10115090]
mov ecx, dword [0x10114f9c]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x10115090]
push eax
call esi
mov dword [0x10115020], eax
test eax, eax
je 0x100bf272
mov eax, dword [0x10115090]
mov ecx, dword [0x10114f9c]
mov eax, dword [eax]
mov esi, dword [eax + 0xc]
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
mov ecx, dword [0x10115090]
push eax
call esi
mov ecx, eax
call fcn.100d8c60
mov ecx, eax
mov eax, dword [0x10115020]
jmp 0x100bf274
xor ecx, ecx
mov dword [0x10114fa0], ecx
test eax, eax
je 0x100c03d3
mov ecx, dword [0x10114f9c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x68]
call eax
test al, al
je 0x100c03d3
vmovss xmm0, dword [ebp + 8]
mov eax, dword [sym.ateris.dll_bool____fastcall___void___void___float__class_CUserCmd___CreateMove::OriginalFunction]
mov edx, dword [ebp - 0x23c]
push ebx
push ecx
mov ecx, edi
vmovss dword [esp], xmm0
call eax
lea esi, [ebx + 0xc]
test al, al
je 0x100bf2c7
mov ecx, dword [0x10114f9c]
push esi
mov eax, dword [ecx]
mov eax, dword [eax + 0x50]
call eax
mov dword [ebp - 0x244], 0
mov dword [ebp - 0x244], ebp
mov eax, dword [ebp - 0x244]
mov eax, dword [eax]
mov eax, dword [eax]
mov ecx, dword [eax]
mov eax, dword [0x1011681c]
dec ecx
mov dword [ebp - 0x22c], ecx
mov dword [eax + 0x18], ecx
vmovss xmm0, dword [esi]
mov eax, dword fs:[0x2c]
mov ecx, dword [0x10114f54]
vmovss dword [ebp - 0x248], xmm0
vmovss xmm0, dword [esi + 4]
vmovss dword [ebp - 0x24c], xmm0
vmovss xmm0, dword [esi + 8]
mov ecx, dword [eax + ecx*4]
mov eax, dword [0x10115008]
mov esi, dword [0x10115020]
vmovss dword [ebp - 0x23c], xmm0
vmovss xmm0, dword [ebx + 0x18]
vmovss dword [ebp - 0x250], xmm0
vmovss xmm0, dword [ebx + 0x1c]
vmovss dword [ebp - 0x238], xmm0
mov dword [ebp - 0x234], ecx
cmp eax, dword [ecx + 4]
jle 0x100bf39f
push 0x10115008
call fcn.100e09a6
add esp, 4
cmp dword [0x10115008], 0xffffffff
jne 0x100bf39f
push str.m_fFlags
push str.CBasePlayer
mov dword [ebp - 4], 0
call fcn.100dfaa0
push 0x10115008
mov dword [0x10114fd8], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
mov eax, dword [0x10114fd8]
mov ecx, dword [0x10115060]
mov edx, dword [0x10115070]
mov eax, dword [eax + esi]
mov dword [ebp - 0x240], eax
mov eax, dword [ecx]
mov esi, dword [edx + 0x1a0]
mov edi, dword [eax + 0xc]
mov eax, dword [edx + 0x4b28]
add eax, dword [edx + 0x4b24]
test esi, esi
push eax
push dword [edx + 0x4b2c]
setg al
movzx eax, al
push eax
push esi
call edi
call fcn.1002ee00
mov esi, dword [0x10115020]
mov edi, dword [ebp - 0x234]
test esi, esi
je 0x100bf472
mov eax, dword [0x10114ff0]
cmp eax, dword [edi + 4]
jle 0x100bf44a
push 0x10114ff0
call fcn.100e09a6
add esp, 4
cmp dword [0x10114ff0], 0xffffffff
jne 0x100bf44a
push str.m_lifeState
push str.CBasePlayer
mov dword [ebp - 4], 1
call fcn.100dfaa0
push 0x10114ff0
mov dword [0x10114fb0], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
mov eax, dword [0x10114fb0]
cmp byte [eax + esi], 0
jne 0x100bf472
mov ecx, dword [0x10114fa0]
test ecx, ecx
je 0x100bf472
mov eax, dword [ecx]
mov eax, dword [eax + 0x5f4]
call eax
mov ecx, dword [0x1011681c]
mov dword [ecx + 0x74], eax
push ebx
call fcn.1009a5d0
push ebx
call fcn.1009a8f0
push ebx
call fcn.1009b9d0
push ebx
call fcn.1009c910
push ebx
call fcn.1009b520
push ebx
call fcn.1009bd00
mov eax, dword [0x1011681c]
cmp dword [eax + 8], 0
jle 0x100bf4c1
cmp byte [eax + 0x16], 0
jne 0x100bf4b2
push ebx
call fcn.1009ae70
mov eax, dword [0x1011681c]
cmp dword [eax + 8], 1
mov ecx, dword [ebp - 0x22c]
sete al
mov byte [ecx], al
mov eax, dword [0x10117508]
cmp eax, dword [edi + 4]
jle 0x100bf516
push 0x10117508
call fcn.100e09a6
add esp, 4
cmp dword [0x10117508], 0xffffffff
jne 0x100bf516
mov dword [ebp - 4], 2
mov ecx, dword [0x10115120]
push str.cl_cmdrate
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
push 0x10117508
mov dword [0x1011753c], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
cmp dword [0x1011753c], 0
je 0x100bf699
mov ecx, dword [0x10115020]
test ecx, ecx
je 0x100bf699
cmp dword [0x10115104], 0
je 0x100bf699
mov eax, dword [0x10115070]
cmp dword [eax + 0x10], 0
je 0x100bf699
mov eax, dword [0x1011684c]
mov eax, dword [eax + 4]
mov eax, dword [eax + 0xc]
cmp byte [eax + 0x14], 0
je 0x100bf699
test ecx, ecx
je 0x100bf574
add ecx, 8
je 0x100bf574
mov eax, dword [ecx]
mov eax, dword [eax + 0x24]
call eax
jmp 0x100bf576
xor eax, eax
push eax
call fcn.1002e970
push 0x214
mov esi, eax
lea eax, [ebp - 0x228]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov ecx, dword [0x1011684c]
add esp, 0xc
mov ecx, dword [ecx + 4]
mov eax, dword [ecx + 0xc]
cmp esi, dword [eax + 0x18]
jle 0x100bf5ac
mov eax, 0x100fb498
jmp 0x100bf5e0
mov eax, dword [0x1011753c]
lea ecx, [ebp - 0x268]
mov eax, dword [eax + 0x1c]
mov edx, dword [eax + 0x30]
call fcn.1006a2b0
mov dword [ebp - 0x230], 3
lea eax, [ebp - 0x268]
cmp dword [ebp - 0x254], 0x10
cmovae eax, dword [ebp - 0x268]
push eax
push ecx
lea ecx, [ebp - 0x228]
call fcn.100bee90
mov dword [ebp - 4], 3
test byte [ebp - 0x230], 1
je 0x100bf654
mov ecx, dword [ebp - 0x254]
cmp ecx, 0x10
jb 0x100bf639
mov edx, dword [ebp - 0x268]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100bf62f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x100bf62f
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100e0813
add esp, 8
mov dword [ebp - 0x258], 0
mov dword [ebp - 0x254], 0xf
mov byte [ebp - 0x268], 0
mov eax, dword [0x10115044]
mov eax, dword [eax + 0x18]
and eax, 0x8000001f
jns 0x100bf66a
dec eax
or eax, 0xffffffe0
add eax, 1
jne 0x100bf688
mov ecx, dword [0x10115070]
lea eax, [ebp - 0x228]
push 0
push 0
push eax
mov ecx, dword [ecx + 0x10]
xor edx, edx
call dword [sym.ateris.dll_bool____fastcall___void___void___class_INetMessage___bool__bool__SendNetMessage::OriginalFunction]
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - method.INetMessage.virtual_0], vtable.INetMessage.0
mov eax, dword [0x101173e4]
cmp eax, dword [edi + 4]
jle 0x100bf6ee
push 0x101173e4
call fcn.100e09a6
add esp, 4
cmp dword [0x101173e4], 0xffffffff
jne 0x100bf6ee
mov dword [ebp - 4], 4
mov ecx, dword [0x10115120]
push str.mp_idlemaxtime
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
push 0x101173e4
mov dword [0x101173dc], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
mov eax, dword [0x101173dc]
vmovss xmm2, dword [0x100ffc90]
test eax, eax
je 0x100bf758
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + 0x30]
test eax, eax
je 0x100bf758
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmulss xmm0, xmm0, dword [0x100ffdc8]
mov eax, dword [0x10115044]
vdivss xmm0, xmm0, dword [eax + 0x1c]
vaddss xmm0, xmm0, dword [0x100ffc68]
vcvttss2si eax, xmm0
vxorps xmm0, xmm0, xmm0
vcvtsi2ss xmm0, xmm0, eax
vmulss xmm0, xmm0, dword [0x100ffc68]
mov eax, dword [ebx + 4]
vsubss xmm0, xmm0, xmm2
vcvttss2si ecx, xmm0
cdq
idiv ecx
test edx, edx
jne 0x100bf758
or dword [ebx + 0x24], 0x800000
mov ecx, dword [0x10114f9c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x230], eax
call dword [ebp - 0x230]
mov eax, dword [0x1011681c]
fstp dword [ebp - 0x230]
vmovss xmm0, dword [ebp - 0x230]
mov eax, dword [eax + 0x94]
vmovss xmm1, dword [eax + 4]
vcomiss xmm0, xmm1
vxorps xmm0, xmm0, xmm0
jbe 0x100bf860
vcomiss xmm1, dword [0x100ffc14]
jbe 0x100bf860
vmovss dword [eax + 4], xmm0
mov eax, dword [0x1011681c]
mov eax, dword [eax + 0x94]
mov byte [eax], 1
mov esi, dword [0x10116864]
push dword [esi + 0x64]
call fcn.100e0d04
add esp, 4
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
push dword [esi + 0x44]
call dword [sym.imp.WINMM.dll_waveOutReset]
push dword [esi + 0x44]
call dword [sym.imp.WINMM.dll_waveOutClose]
mov dword [esi + 0x44], 0
mov eax, dword [0x1011681c]
mov eax, dword [eax + 0x94]
cmp byte [eax], 0
je 0x100bf860
mov ecx, dword [0x10114f9c]
push str.voice_loopback_0
mov eax, dword [ecx]
mov eax, dword [eax + 0x1a8]
call eax
mov ecx, dword [0x10114f9c]
push str._voicerecord
mov eax, dword [ecx]
mov eax, dword [eax + 0x1a8]
call eax
push str.stopped_n
lea eax, [ebp - 0x230]
mov dword [ebp - 0x230], 0xffffff00
push eax
push dword [0x10115120]
call fcn.100335a0
mov eax, dword [0x1011681c]
add esp, 0xc
mov eax, dword [eax + 0x94]
mov byte [eax], 0
mov eax, dword [0x101173d0]
cmp eax, dword [edi + 4]
jle 0x100bf8fd
push 0x101173d0
call fcn.100e09a6
add esp, 4
cmp dword [0x101173d0], 0xffffffff
jne 0x100bf8fd
mov dword [ebp - 4], 5
mov eax, dword [0x1011503c]
mov esi, dword [0x10115020]
cmp eax, dword [edi + 4]
jle 0x100bf8dc
push 0x1011503c
call fcn.100e09a6
add esp, 4
cmp dword [0x1011503c], 0xffffffff
jne 0x100bf8dc
push str.m_iClass
push str.CTFPlayer
mov byte [ebp - 4], 6
call fcn.100dfaa0
push 0x1011503c
mov dword [0x1011502c], eax
call fcn.100e095c
add esp, 4
mov eax, dword [0x1011502c]
push 0x101173d0
mov eax, dword [eax + esi]
mov dword [0x1011747c], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
mov eax, dword [0x1011503c]
mov esi, dword [0x10115020]
cmp eax, dword [edi + 4]
jle 0x100bf955
push 0x1011503c
call fcn.100e09a6
add esp, 4
cmp dword [0x1011503c], 0xffffffff
jne 0x100bf955
push str.m_iClass
push str.CTFPlayer
mov dword [ebp - 4], 7
call fcn.100dfaa0
push 0x1011503c
mov dword [0x1011502c], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
mov eax, dword [0x1011502c]
mov ecx, dword [0x1011747c]
cmp ecx, dword [esi + eax]
je 0x100bf9d3
mov eax, dword [0x101168c0]
mov byte [eax + 9], 0
mov eax, dword [0x1011503c]
mov esi, dword [0x10115020]
cmp eax, dword [edi + 4]
jle 0x100bf9c6
push 0x1011503c
call fcn.100e09a6
add esp, 4
cmp dword [0x1011503c], 0xffffffff
jne 0x100bf9c6
push str.m_iClass
push str.CTFPlayer
mov dword [ebp - 4], 8
call fcn.100dfaa0
push 0x1011503c
mov dword [0x1011502c], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
mov eax, dword [0x1011502c]
mov eax, dword [eax + esi]
mov dword [0x1011747c], eax
mov eax, dword [0x1011681c]
vxorps xmm0, xmm0, xmm0
push ebx
vmovss dword [eax + 0x58], xmm0
vmovss dword [eax + 0x5c], xmm0
vmovss dword [eax + 0x60], xmm0
call fcn.10035eb0
mov ecx, dword [0x10116854]
push ebx
call fcn.10020a00
push ebx
call fcn.10047060
mov ecx, dword [0x10117244]
push ebx
call fcn.100ac5e0
push ebx
call fcn.1009e520
push ebx
call fcn.10049290
push ebx
call fcn.1002ad40
push ebx
call fcn.100294b0
push ebx
call fcn.10028130
push ebx
call fcn.10027ca0
mov esi, dword [ebp - 0x22c]
push esi
push ebx
call fcn.1009c090
push esi
push ebx
call fcn.1009c660
push ebx
call fcn.1009e040
push ebx
call fcn.100a0170
mov eax, dword [0x1011684c]
mov eax, dword [eax + 0x14]
cmp byte [eax + 2], 0
je 0x100bfb76
cmp dword [0x101151c8], 0
jne 0x100bfa85
push str.Team_Fortress_2
push 0
call dword [sym.imp.USER32.dll_FindWindowA]
mov dword [0x101151c8], eax
jmp 0x100bfb76
call dword [sym.imp.USER32.dll_GetForegroundWindow]
cmp eax, dword [0x101151c8]
jne 0x100bfb76
mov eax, dword [0x10114ff0]
mov esi, dword [0x10115020]
cmp eax, dword [edi + 4]
jle 0x100bfaef
push 0x10114ff0
call fcn.100e09a6
add esp, 4
cmp dword [0x10114ff0], 0xffffffff
jne 0x100bfaef
push str.m_lifeState
push str.CBasePlayer
mov dword [ebp - 4], 9
call fcn.100dfaa0
push 0x10114ff0
mov dword [0x10114fb0], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
mov eax, dword [0x10114fb0]
cmp byte [esi + eax], 0
jne 0x100bfb76
call fcn.1009a430
cmp byte [eax], 1
ja 0x100bfb76
mov ecx, dword [0x10115020]
call fcn.100260e0
mov eax, dword [eax]
shr eax, 0xd
test al, 1
jne 0x100bfb76
call fcn.10026230
test al, al
jne 0x100bfb76
mov ecx, dword [0x10115020]
mov eax, dword [ecx + 0x1a4]
cmp eax, 8
je 0x100bfb76
cmp eax, 9
je 0x100bfb76
cmp eax, 0xa
je 0x100bfb76
mov eax, dword [0x1011684c]
mov eax, dword [eax + 0x14]
mov eax, dword [eax + 0x40]
test eax, eax
je 0x100bfb5f
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
bt ax, 0xf
jae 0x100bfb76
mov ecx, dword [0x10115020]
test byte [ebp - 0x240], 1
je 0x100bfb76
call fcn.1001cb60
test byte [eax], 1
jne 0x100bfb76
or dword [ebx + 0x24], 2
push dword [ebp - 0x22c]
push ebx
call fcn.10026ee0
push ebx
call fcn.10033970
mov esi, dword [0x10115020]
mov edi, dword [0x101168d8]
test esi, esi
je 0x100bfe66
mov ecx, dword [ebp - 0x234]
mov eax, dword [0x10114ff0]
mov dword [ebp - 0x240], esi
cmp eax, dword [ecx + 4]
jle 0x100bfc00
push 0x10114ff0
call fcn.100e09a6
add esp, 4
cmp dword [0x10114ff0], 0xffffffff
jne 0x100bfbfa
push str.m_lifeState
push str.CBasePlayer
mov dword [ebp - 4], 0xa
call fcn.100dfaa0
push 0x10114ff0
mov dword [0x10114fb0], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
mov esi, dword [0x10115020]
mov eax, dword [0x10114fb0]
mov ecx, dword [ebp - 0x240]
cmp byte [ecx + eax], 0
jne 0x100bfcab
mov ecx, dword [0x10115148]
push esi
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [0x10115044]
mov eax, dword [edi + 0xa8]
mov dword [ecx + 0xc], eax
mov eax, dword [edi + 0xac]
mov dword [ecx + 0x10], eax
mov eax, dword [edi + 0xb0]
mov dword [ecx + 0x18], eax
mov ecx, dword [0x10115060]
mov al, byte [edi + 0xb4]
mov byte [ecx + 8], al
mov al, byte [edi + 0xb5]
mov byte [ecx + 9], al
mov ecx, dword [ebp - 0x234]
mov eax, dword [0x101168cc]
cmp eax, dword [ecx + 4]
jle 0x100bfc90
push 0x101168cc
call fcn.100e09a6
add esp, 4
cmp dword [0x101168cc], 0xffffffff
jne 0x100bfc90
push 0x101168cc
call fcn.100e095c
add esp, 4
mov esi, dword [0x10115020]
mov eax, dword [0x10115128]
mov dword [esi + 0x1184], 0
mov dword [eax], 0xffffffff
test esi, esi
je 0x100bfe66
mov ecx, dword [ebp - 0x234]
mov edi, esi
mov eax, dword [0x10114ff0]
cmp eax, dword [ecx + 4]
jle 0x100bfd13
push 0x10114ff0
call fcn.100e09a6
add esp, 4
cmp dword [0x10114ff0], 0xffffffff
jne 0x100bfd0d
push str.m_lifeState
push str.CBasePlayer
mov dword [ebp - 4], 0xb
call fcn.100dfaa0
push 0x10114ff0
mov dword [0x10114fb0], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
mov esi, dword [0x10115020]
mov eax, dword [0x10114fb0]
cmp byte [edi + eax], 0
jne 0x100bfe66
mov eax, dword [0x1011684c]
mov eax, dword [eax + 0x14]
mov eax, dword [eax + 0x30]
cmp byte [eax], 0
je 0x100bfe66
mov eax, dword [0x1011681c]
cmp dword [eax + 8], 0
jg 0x100bfe66
cmp dword [0x10114fa0], 0
mov edi, dword [ebp - 0x234]
je 0x100bfe6c
mov eax, dword [0x1011503c]
cmp eax, dword [edi + 4]
jle 0x100bfdaa
push 0x1011503c
call fcn.100e09a6
add esp, 4
cmp dword [0x1011503c], 0xffffffff
jne 0x100bfdaa
push str.m_iClass
push str.CTFPlayer
mov dword [ebp - 4], 0xc
call fcn.100dfaa0
push 0x1011503c
mov dword [0x1011502c], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
mov eax, dword [0x1011502c]
cmp dword [esi + eax], 4
jne 0x100bfdd2
mov ecx, dword [0x10114fa0]
test ecx, ecx
je 0x100bfdd2
mov eax, dword [ecx]
mov eax, dword [eax + 0x528]
call eax
cmp eax, 1
je 0x100bfe6c
mov eax, dword [0x101171ec]
mov esi, dword [0x10114fa0]
cmp eax, dword [edi + 4]
jle 0x100bfe0e
push 0x101171ec
call fcn.100e09a6
add esp, 4
cmp dword [0x101171ec], 0xffffffff
jne 0x100bfe0e
push 0x101171ec
mov dword [0x101171f4], esi
call fcn.100e095c
add esp, 4
cmp dword [0x101171f4], esi
je 0x100bfe28
mov eax, dword [0x1011681c]
mov dword [eax + 0xc], 0x1a
mov dword [0x101171f4], esi
mov ecx, dword [0x10114fa0]
call fcn.100d8550
test al, al
jne 0x100bfe43
mov eax, dword [0x1011681c]
mov dword [eax + 0xc], 0x17
mov ecx, dword [0x1011681c]
cmp dword [ecx + 0x74], 0x12
jne 0x100bfe6c
mov eax, dword [0x10114fa0]
cmp dword [eax + 0xc48], 3
je 0x100bfe6c
mov dword [ecx + 0xc], 0x18
jmp 0x100bfe6c
mov edi, dword [ebp - 0x234]
mov eax, dword [0x1011681c]
cmp byte [eax + 0x16], 0
je 0x100bfe7b
and dword [ebx + 0x24], 0xfffffffe
push ebx
call fcn.100d32f0
test al, al
je 0x100bff37
mov eax, dword [0x1011684c]
mov eax, dword [eax + 0x14]
mov eax, dword [eax + 0x30]
cmp byte [eax], 0
je 0x100bff37
call fcn.100262e0
xor ecx, ecx
test al, al
mov eax, dword [0x1011684c]
sete cl
mov eax, dword [eax + 0x14]
lea ecx, [ecx*2 + 0x14]
mov dword [ebp - 0x230], ecx
mov eax, dword [eax + 0x30]
cmp dword [eax + 0x10], 2
jne 0x100bfed7
mov eax, dword [0x1011681c]
cmp ecx, dword [eax]
cmovge ecx, dword [eax]
mov dword [ebp - 0x230], ecx
mov eax, dword [0x1011681c]
cmp dword [eax], ecx
jl 0x100bff37
push dword [0x10114fa0]
call fcn.100d2510
test al, al
jne 0x100bff37
call fcn.1009cfe0
test al, al
je 0x100bff37
mov eax, dword [0x1011681c]
mov ecx, dword [ebp - 0x230]
mov dword [eax + 8], ecx
cmp dword [0x10115070], 0
je 0x100bff17
mov eax, dword [0x1011681c]
mov dword [eax + 0x10], ecx
mov eax, dword [0x1011681c]
cmp dword [eax], 2
jle 0x100bff2e
cmp dword [eax + 0x74], 0x18
jne 0x100bff2e
mov dword [eax + 8], 0x14
mov eax, dword [ebp - 0x22c]
mov byte [eax], 0
mov ecx, dword [0x10115020]
test ecx, ecx
je 0x100c003e
mov eax, dword [0x10114ff0]
mov esi, ecx
cmp eax, dword [edi + 4]
jle 0x100bff9f
push 0x10114ff0
call fcn.100e09a6
add esp, 4
cmp dword [0x10114ff0], 0xffffffff
jne 0x100bff99
push str.m_lifeState
push str.CBasePlayer
mov dword [ebp - 4], 0xd
call fcn.100dfaa0
push 0x10114ff0
mov dword [0x10114fb0], eax
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
mov ecx, dword [0x10115020]
mov eax, dword [0x10114fb0]
cmp byte [esi + eax], 0
jne 0x100c003e
call fcn.1001cb60
test byte [eax], 1
je 0x100c003e
call fcn.1009a430
cmp byte [eax], 1
ja 0x100c003e
mov ecx, dword [0x10115020]
call fcn.100260e0
mov eax, dword [eax]
shr eax, 0xd
test al, 1
jne 0x100c003e
call fcn.10026230
test al, al
jne 0x100c003e
mov ecx, dword [0x10115020]
call fcn.1001cd40
mov eax, dword [eax]
shr eax, 0x11
test al, 1
jne 0x100c003e
mov eax, dword [0x1011684c]
mov eax, dword [eax + 0x14]
cmp byte [eax + 0x18], 0
je 0x100c003e
mov eax, dword [eax + 0x2c]
cmp byte [eax], 0
je 0x100c0018
mov eax, dword [0x1011686c]
cmp byte [eax + 0xd], 0
jne 0x100c003e
test byte [ebx + 0x24], 0x10
je 0x100c003e
push ebx
call fcn.100d32f0
test al, al
jne 0x100c003e
test dword [ebx + 0x24], 0x608
jne 0x100c003e
vmovss xmm0, dword [0x100fff64]
vmovss dword [ebx + 0x14], xmm0
mov eax, dword [0x1011681c]
cmp dword [eax + 8], 0
jg 0x100c00f0
push dword [0x10114fa0]
call fcn.100d2660
test al, al
je 0x100c00f0
push ebx
call fcn.100d32f0
test al, al
jne 0x100c00e0
mov eax, dword [0x1011681c]
cmp dword [eax + 0x74], 0x6d
jne 0x100c0084
mov ecx, dword [0x10114fa0]
call fcn.100d8550
test al, al
jne 0x100c00e0
cmp byte [0x101167b8], 0
je 0x100c00f0
mov eax, dword [ebp - 0x22c]
vmovss xmm0, dword [ebp - 0x248]
mov byte [0x101167b8], 0
mov byte [eax], 1
vmovss dword [ebx + 0xc], xmm0
vmovss xmm0, dword [ebp - 0x24c]
vmovss dword [ebx + 0x10], xmm0
vmovss xmm0, dword [ebp - 0x23c]
vmovss dword [ebx + 0x14], xmm0
vmovss xmm0, dword [ebp - 0x250]
vmovss dword [ebx + 0x18], xmm0
vmovss xmm0, dword [ebp - 0x238]
vmovss dword [ebx + 0x1c], xmm0
jmp 0x100c00f0
mov eax, dword [ebp - 0x22c]
mov byte [0x101167b8], 1
mov byte [eax], 0
mov eax, dword [0x1011681c]
mov eax, dword [eax + 0x7c]
mov dword [eax + 0x1840], ebx
mov eax, dword [0x1011681c]
mov ecx, dword [eax + 0x7c]
mov eax, dword [ebx + 0xc]
mov dword [ecx + 0x2c], eax
mov eax, dword [ebx + 0x10]
mov dword [ecx + 0x30], eax
mov eax, dword [ebx + 0x14]
mov dword [ecx + 0x34], eax
mov ecx, dword [ebp - 0x22c]
cmp byte [ecx], 0
je 0x100c018f
mov eax, dword [0x1011681c]
mov ecx, dword [eax + 0x88]
mov eax, dword [ecx + 8]
mov dword [ecx + 0x1820], eax
mov eax, dword [0x1011684c]
mov eax, dword [eax + 0x14]
mov eax, dword [eax + 0x24]
cmp byte [eax], 0
je 0x100c0189
mov eax, dword [0x10115044]
mov ecx, dword [0x10115020]
add ecx, 4
push ecx
vmovss xmm0, dword [eax + 0xc]
mov eax, dword [0x1011681c]
vmovss dword [esp], xmm0
push 0x7ff00
push 0x80
mov edx, dword [eax + 0x7c]
mov eax, dword [ecx]
add edx, 0x3c
push edx
mov eax, dword [eax + 0x40]
call eax
mov ecx, dword [0x1011681c]
mov ecx, dword [ecx + 0x7c]
mov byte [ecx + 0x38], al
mov ecx, dword [ebp - 0x22c]
mov eax, dword [0x10115070]
test eax, eax
je 0x100c01c8
cmp dword [eax + 0x4b28], 0x18
jle 0x100c01c8
push str.Safe_guard_triggered__n
lea eax, [ebp - 0x22c]
mov byte [ecx], 1
push eax
push dword [0x10115120]
mov dword [ebp - 0x22c], 0xffffff00
call fcn.100335a0
add esp, 0xc
mov eax, dword [0x10116860]
mov cl, byte [ebx + 0x24]
and cl, 1
mov byte [eax + 0xc], cl
mov eax, dword [0x1011681c]
mov esi, dword [0x10116860]
cmp dword [eax + 8], 0
jg 0x100c02f2
cmp byte [eax + 0x16], 0
jne 0x100c02f2
cmp dword [esi], 2
jne 0x100c01fe
mov byte [esi + 8], 0
mov eax, dword [0x10117230]
cmp eax, dword [edi + 4]
jle 0x100c0259
push 0x10117230
call fcn.100e09a6
add esp, 4
cmp dword [0x10117230], 0xffffffff
jne 0x100c0259
mov dword [ebp - 4], 0xe
mov ecx, dword [0x10114f9c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x238], eax
call dword [ebp - 0x238]
push 0x10117230
fstp dword [0x10117224]
mov dword [ebp - 4], 0xffffffff
call fcn.100e095c
add esp, 4
mov ecx, dword [0x10114f9c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x238], eax
call dword [ebp - 0x238]
cmp dword [esi], 0
fstp dword [ebp - 0x238]
jne 0x100c02aa
cmp byte [esi + 0xb], 0
jne 0x100c0357
mov ecx, dword [0x10114f9c]
mov byte [esi + 8], 1
mov byte [esi + 5], 1
mov eax, dword [ecx]
mov eax, dword [eax + 0x38]
mov dword [ebp - 0x238], eax
call dword [ebp - 0x238]
fstp dword [0x10117224]
cmp dword [esi], 2
je 0x100c02b5
cmp byte [esi + 7], 0
je 0x100c02f2
vmovss xmm3, dword [esi + 0x48]
vucomiss xmm3, dword [0x100ffb90]
lahf
test ah, 0x44
jnp 0x100c02f2
mov eax, dword [0x1011684c]
mov eax, dword [eax + 0x14]
mov eax, dword [eax + 0x38]
cmp byte [eax], 0
je 0x100c02f2
test byte [ebx + 0x24], 1
je 0x100c02f2
movzx eax, byte [esi + 0x38]
mov ecx, esi
push eax
lea eax, [ebx + 0xc]
push eax
call fcn.100a51c0
mov byte [esi + 0xa], 1
vmovss xmm0, dword [ebp - 0x248]
sub esp, 0xc
mov eax, esp
push ebx
vmovss dword [eax], xmm0
vmovss xmm0, dword [ebp - 0x24c]
vmovss dword [eax + 4], xmm0
vmovss xmm0, dword [ebp - 0x23c]
vmovss dword [eax + 8], xmm0
call fcn.100d2e10
vmovss xmm0, dword [ebx + 0x10]
vmovss dword [ebp - 0x238], xmm0
fld dword [ebp - 0x238]
push ecx
fstp dword [esp]
call sub.api_ms_win_crt_math_l1_1_0.dll__fdclass
add esp, 4
test ax, ax
jle 0x100c0380
vxorps xmm0, xmm0, xmm0
vmovss dword [ebx + 0x10], xmm0
xor al, al
jmp 0x100c03fc
vmovss xmm0, dword [ebp - 0x238]
vsubss xmm0, xmm0, dword [0x10117224]
vcomiss xmm0, dword [0x100ffc90]
jbe 0x100c02aa
mov dword [esi], 1
jmp 0x100c02af
vmovss xmm2, dword [0x100ffe2c]
vmovss xmm0, dword [ebx + 0x10]
vcomiss xmm0, xmm2
vmovss xmm1, dword [0x100ffe70]
jbe 0x100c03aa
nop dword [eax + eax]
vsubss xmm0, xmm0, xmm1
vcomiss xmm0, xmm2
ja 0x100c03a0
vmovss xmm2, dword [0x100fff70]
vcomiss xmm2, xmm0
jbe 0x100c03ca
nop dword [eax + eax]
vaddss xmm0, xmm0, xmm1
vcomiss xmm2, xmm0
ja 0x100c03c0
vmovss dword [ebx + 0x10], xmm0
xor al, al
jmp 0x100c03fc
mov edx, dword [ebp - 0x23c]
push ebx
push ecx
mov dword [0x10114fa0], 0
mov ecx, edi
jmp 0x100c03eb
push ebx
push ecx
vmovss xmm0, dword [ebp + 8]
mov eax, dword [sym.ateris.dll_bool____fastcall___void___void___float__class_CUserCmd___CreateMove::OriginalFunction]
vmovss dword [esp], xmm0
call eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100e03a1
mov esp, ebp
pop ebp
ret 8