Function at 0x100b3830
Capabilities:
Encode data using xor
Hash data using fnv
Log keystrokes via polling
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xffffffe0
sub esp, 0x3a0
mov dword [esp + 4], ecx
mov eax, dword [0x1017f528]
xor eax, ebp
mov dword [esp + 0x388], eax
mov ecx, dword [0x1017f614]
mov eax, dword [ecx]
call dword [eax + 0x68]
test al, al
je 0x100b5a44
call fcn.10021450
mov dword [esp + 0x78], eax
vmovsd xmm0, qword [eax + 8]
vmovaps xmmword [esp + 0x10], xmm0
cmp byte [0x10184f90], 0
je 0x100b5a5a
mov esi, dword [esp + 4]
cmp byte [esi + 0x18f], 0
je 0x100b38a5
mov eax, dword [0x1017f61c]
mov eax, dword [eax + 0x174]
cmp eax, dword [0x10184f8c]
je 0x100b38bb
lea ecx, [esi + 0x2c4]
call fcn.100b69b0
mov eax, dword [0x1017f61c]
mov eax, dword [eax + 0x174]
vbroadcastss xmm0, dword [0x10129738]
vmovaps xmmword [esp + 0x30], xmm0
mov dword [0x10184f8c], eax
mov ecx, dword [0x1017f618]
mov eax, dword [ecx]
call dword [eax + 0x18]
test eax, eax
js 0x100b39a1
mov dword [esp + 8], 0
mov ebx, 0xffffffff
jmp 0x100b391b
mov ecx, esi
push edi
call fcn.100ae5c0
mov ecx, dword [0x1017f618]
mov eax, dword [ecx]
call dword [eax + 0x18]
cmp ebx, eax
jge 0x100b39a9
inc ebx
mov ecx, dword [0x1017f618]
mov eax, dword [ecx]
push ebx
call dword [eax + 0xc]
test eax, eax
je 0x100b3908
mov edi, eax
mov eax, dword [eax]
mov ecx, edi
call dword [eax + 0x274]
test al, al
jne 0x100b3900
lea esi, [edi + 8]
mov eax, dword [edi + 8]
mov ecx, esi
call dword [eax + 8]
test eax, eax
je 0x100b395a
mov dword [esp + 0x20], eax
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x24]
test al, al
je 0x100b3960
mov esi, dword [esp + 4]
jmp 0x100b3908
mov eax, dword [edi]
mov ecx, edi
call dword [eax + 0x294]
test al, al
mov esi, dword [esp + 4]
je 0x100b397c
mov ecx, esi
push edi
call fcn.100b2d50
jmp 0x100b3908
mov eax, dword [esp + 0x20]
mov eax, dword [eax + 0x14]
cmp eax, 0x80
mov ecx, dword [esp + 8]
cmove ecx, edi
mov dword [esp + 8], ecx
mov ecx, esi
push eax
push edi
call fcn.100b1800
jmp 0x100b3908
mov dword [esp + 8], 0
vmovaps xmm0, xmmword [esp + 0x30]
vmulps xmm0, xmm0, xmmword [esp + 0x10]
vmovaps xmmword [esp + 0x20], xmm0
cmp byte [esi + 0x1f], 0
je 0x100b3b71
mov eax, dword [0x1017f610]
vmovss xmm0, dword [eax + 0x10]
vsubss xmm0, xmm0, dword [esi + 0x254]
vbroadcastss xmm1, dword [0x1012978c]
vandps xmm0, xmm0, xmm1
vmovss xmm1, dword [0x10129738]
vucomiss xmm1, xmm0
jb 0x100b3b71
vaddss xmm0, xmm0, xmm0
vmovss xmm1, dword [0x10129710]
vsubss xmm0, xmm1, xmm0
vmulss xmm0, xmm0, dword [0x10134d84]
vcvttss2si esi, xmm0
shl esi, 0x18
or esi, 0xc8c8c8
vmovss xmm0, dword [0x10134df4]
vmovaps xmm1, xmmword [esp + 0x20]
vaddss xmm2, xmm1, xmm0
vmovss dword [esp + 0x30], xmm2
vmovshdup xmm2, xmm1
vmovaps xmmword [esp + 0x50], xmm2
vaddss xmm0, xmm2, xmm0
vmovss dword [esp + 0x10], xmm0
vmovss xmm0, dword [0x10134e80]
vaddss xmm1, xmm1, xmm0
vmovss dword [esp + 0xc], xmm1
vaddss xmm0, xmm2, xmm0
vmovss dword [esp + 0x4c], xmm0
mov ecx, dword [0x1017f64c]
mov eax, dword [ecx]
push esi
call dword [eax + 0x38]
mov ecx, dword [0x1017f64c]
mov eax, dword [ecx]
mov dword [esp + 0x6c], eax
vcvttss2si edx, dword [esp + 0x10]
mov dword [esp + 0x10], edx
vcvttss2si ebx, dword [esp + 0x30]
mov dword [esp], ebx
vcvttss2si edi, dword [esp + 0x4c]
mov dword [esp + 0x30], edi
vcvttss2si eax, dword [esp + 0xc]
push edx
push ebx
push edi
mov edi, eax
push eax
mov eax, dword [esp + 0x7c]
call dword [eax + 0x4c]
vmovaps xmm0, xmmword [esp + 0x50]
vaddss xmm1, xmm0, dword [0x10129788]
vmovss dword [esp + 0xc], xmm1
vaddss xmm0, xmm0, dword [0x10129a08]
vmovss dword [esp + 0x50], xmm0
mov ecx, dword [0x1017f64c]
mov eax, dword [ecx]
push esi
call dword [eax + 0x38]
mov ecx, dword [0x1017f64c]
mov ebx, dword [ecx]
vcvttss2si eax, dword [esp + 0xc]
mov dword [esp + 0xc], eax
vcvttss2si edx, dword [esp + 0x50]
mov dword [esp + 0x50], edx
push eax
push dword [esp + 4]
push edx
push edi
call dword [ebx + 0x4c]
vmovaps xmm0, xmmword [esp + 0x20]
vaddss xmm1, xmm0, dword [0x10129788]
vmovss dword [esp], xmm1
vaddss xmm0, xmm0, dword [0x10129a08]
vmovss dword [esp + 0x4c], xmm0
mov ecx, dword [0x1017f64c]
mov eax, dword [ecx]
push esi
call dword [eax + 0x38]
mov ecx, dword [0x1017f64c]
mov eax, dword [ecx]
vcvttss2si ebx, dword [esp]
vcvttss2si edi, dword [esp + 0x4c]
push dword [esp + 0xc]
push ebx
push dword [esp + 0x58]
push edi
call dword [eax + 0x4c]
mov ecx, dword [0x1017f64c]
mov eax, dword [ecx]
push esi
mov esi, dword [esp + 8]
call dword [eax + 0x38]
mov ecx, dword [0x1017f64c]
mov eax, dword [ecx]
push dword [esp + 0x10]
push ebx
push dword [esp + 0x38]
push edi
call dword [eax + 0x4c]
cmp byte [esi + 0x24], 0
je 0x100b41fd
mov eax, dword [0x1017f610]
cmp dword [eax + 0x18], 0
je 0x100b41fd
mov esi, 1
jmp 0x100b3bbf
mov eax, dword [ebx]
mov ecx, ebx
call dword [eax + 0x138]
mov ecx, dword [esp + 4]
push eax
call fcn.100ade90
nop word cs:[eax + eax]
inc esi
mov eax, dword [0x1017f610]
cmp esi, dword [eax + 0x18]
ja 0x100b41fd
mov ecx, dword [0x1017f618]
mov eax, dword [ecx]
push esi
call dword [eax + 0xc]
test eax, eax
je 0x100b3bb0
mov ebx, eax
lea ecx, [eax + 8]
mov eax, dword [eax + 8]
call dword [eax + 0x24]
test al, al
jne 0x100b3bb0
mov eax, dword [0x1017f71c]
test al, 1
je 0x100b3c5a
mov edi, dword [0x1017f718]
mov eax, dword [edi + 4]
cmp dword [eax + ebx], 0
jle 0x100b3bb0
mov eax, dword [0x1017f724]
test al, 1
je 0x100b3ccb
mov edi, dword [0x1017f720]
mov eax, dword [edi + 4]
cmp byte [eax + ebx], 0
jne 0x100b3bb0
mov eax, dword [0x1017f608]
mov edx, dword [eax]
cmp ebx, edx
je 0x100b3bb0
mov eax, dword [0x10184e24]
test al, 1
je 0x100b3f14
mov edi, dword [0x10184e20]
mov ecx, dword [edi + 4]
mov edi, dword [ecx + ebx]
test al, 1
je 0x100b3f85
cmp edi, dword [ecx + edx]
jne 0x100b3b91
mov eax, dword [esp + 4]
cmp byte [eax + 0x14], 0
je 0x100b3bb0
jmp 0x100b3b91
or eax, 1
mov dword [0x1017f71c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0xc], eax
lea edi, [esp + 0xc0]
mov ecx, edi
push str.CBasePlayer__m_iHealth
call fcn.10005ce0
cmp dword [esp + 0xd4], 0x10
mov dword [esp], edi
jb 0x100b3c95
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
test eax, eax
je 0x100b3d3c
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x30], eax
cmp ecx, 3
jae 0x100b3d43
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b3d94
or eax, 1
mov dword [0x1017f724], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0xc], eax
lea edi, [esp + 0xc0]
mov ecx, edi
push str.CBasePlayer__m_lifeState
call fcn.10005ce0
cmp dword [esp + 0xd4], 0x10
mov dword [esp], edi
jb 0x100b3d06
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
test eax, eax
je 0x100b3e28
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x30], eax
cmp ecx, 3
jae 0x100b3e2f
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b3e80
mov ecx, 0x811c9dc5
jmp 0x100b3db3
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp + 0x50], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0x50], edx
jne 0x100b3d55
cmp dword [esp + 0x30], 0
je 0x100b3db3
add edx, dword [esp]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x30], edi
jne 0x100b3da0
mov edx, dword [esp + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x100b3dff
cmp dword [edi + 0x1c], 0x10
jb 0x100b3de7
mov eax, dword [edi + 8]
jmp 0x100b3dea
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b3e0e
cmp edi, dword [esp + 0x30]
je 0x100b69a4
mov edi, dword [edi + 4]
jmp 0x100b3dd3
add edi, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x1017f718], edi
jmp 0x100b3bed
mov ecx, 0x811c9dc5
jmp 0x100b3e9f
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp + 0x50], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0x50], edx
jne 0x100b3e41
cmp dword [esp + 0x30], 0
je 0x100b3e9f
add edx, dword [esp]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x30], edi
jne 0x100b3e8c
mov edx, dword [esp + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x100b3eeb
cmp dword [edi + 0x1c], 0x10
jb 0x100b3ed3
mov eax, dword [edi + 8]
jmp 0x100b3ed6
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b3efa
cmp edi, dword [esp + 0x30]
je 0x100b69a4
mov edi, dword [edi + 4]
jmp 0x100b3ebf
add edi, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x1017f720], edi
jmp 0x100b3c09
or eax, 1
mov dword [0x10184e24], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0xc], eax
lea edi, [esp + 0xc0]
mov ecx, edi
push str.CBaseEntity__m_iTeamNum
call fcn.10005ce0
cmp dword [esp + 0xd4], 0x10
mov dword [esp], edi
jb 0x100b3f4f
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
test eax, eax
je 0x100b3ffa
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x30], eax
cmp ecx, 3
jae 0x100b400b
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b405c
mov dword [esp + 0x6c], edi
mov dword [esp + 0x4c], edx
or eax, 1
mov dword [0x10184e24], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0xc], eax
lea edi, [esp + 0xc0]
mov ecx, edi
push str.CBaseEntity__m_iTeamNum
call fcn.10005ce0
cmp dword [esp + 0xd4], 0x10
mov dword [esp], edi
jb 0x100b3fc8
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
test eax, eax
je 0x100b4001
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x30], eax
cmp ecx, 3
jae 0x100b40fd
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b414e
mov ecx, 0x811c9dc5
jmp 0x100b407b
mov ecx, 0x811c9dc5
jmp 0x100b416d
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp + 0x50], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0x50], edx
jne 0x100b401d
cmp dword [esp + 0x30], 0
je 0x100b407b
add edx, dword [esp]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x30], edi
jne 0x100b4068
mov edx, dword [esp + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x100b40c7
cmp dword [edi + 0x1c], 0x10
jb 0x100b40af
mov eax, dword [edi + 8]
jmp 0x100b40b2
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b40d6
cmp edi, dword [esp + 0x30]
je 0x100b69a4
mov edi, dword [edi + 4]
jmp 0x100b409b
add edi, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x10184e20], edi
mov eax, dword [0x10184e24]
mov ecx, dword [0x1017f608]
mov edx, dword [ecx]
jmp 0x100b3c30
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp + 0x50], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0x50], edx
jne 0x100b410f
cmp dword [esp + 0x30], 0
je 0x100b416d
add edx, dword [esp]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x30], edi
jne 0x100b415a
mov edx, dword [esp + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x100b41b9
cmp dword [edi + 0x1c], 0x10
jb 0x100b41a1
mov eax, dword [edi + 8]
jmp 0x100b41a4
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b41c8
cmp edi, dword [esp + 0x30]
je 0x100b69a4
mov edi, dword [edi + 4]
jmp 0x100b418d
lea eax, [edi + 0x20]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov eax, dword [esp + 0x10]
mov dword [0x10184e20], eax
mov ecx, dword [edi + 0x24]
mov edx, dword [esp + 0x4c]
mov edi, dword [esp + 0x6c]
cmp edi, dword [ecx + edx]
je 0x100b3c47
jmp 0x100b3b91
mov eax, dword [0x1017f608]
mov esi, dword [eax]
mov eax, dword [0x1017f71c]
test al, 1
je 0x100b5a76
mov edi, dword [0x1017f718]
mov eax, dword [edi + 4]
cmp dword [eax + esi], 0
vmovaps xmm1, xmmword [esp + 0x20]
jle 0x100b5a44
mov eax, dword [0x1017f724]
test al, 1
je 0x100b5ae9
mov edi, dword [0x1017f720]
mov eax, dword [edi + 4]
cmp byte [eax + esi], 0
jne 0x100b5a44
mov esi, dword [esp + 4]
cmp byte [esi + 0x18e], 0
je 0x100b426d
lea eax, [esi + 0x270]
mov ecx, esi
push 0
push eax
call fcn.100ab0f0
vmovaps xmm1, xmmword [esp + 0x20]
cmp byte [esi + 0x18a], 0
je 0x100b44b3
mov eax, dword [0x1017f5c0]
mov eax, dword [eax + 0x150]
test eax, eax
je 0x100b44b3
mov eax, dword [eax + 0xc8]
test eax, eax
je 0x100b44b3
cmp eax, 6
jg 0x100b44b3
mov eax, dword [0x1017f5d8]
vmovss xmm0, dword [eax + 0xd8]
vaddss xmm0, xmm0, dword [eax + 0xd4]
vmovss dword [esp + 0x10], xmm0
mov eax, dword [0x1017f608]
mov ecx, dword [eax]
mov eax, dword [ecx]
call dword [eax + 0x530]
fstp dword [esp + 0x8c]
vmovss xmm0, dword [esp + 0x8c]
vmulss xmm0, xmm0, dword [0x10131fc4]
vmulss xmm0, xmm0, dword [0x10129738]
vcvtss2sd xmm0, xmm0, xmm0
sub esp, 8
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_tan
add esp, 8
fstp dword [esp + 0x88]
vmovss xmm0, dword [esp + 0x88]
vmovss dword [esp + 0x30], xmm0
call fcn.10021450
vmovss xmm2, dword [eax + 0xc]
vmovaps xmm0, xmmword [esp + 0x20]
vmovlps qword [esp + 0x220], xmm0
cmp byte [esi + 0x18b], 0
je 0x100b43d1
vmovss dword [esp], xmm2
mov eax, dword [0x1017f608]
mov ecx, dword [eax]
mov eax, dword [ecx]
call dword [eax + 0x530]
fstp dword [esp + 0x84]
vmovss xmm3, dword [esp + 0x84]
mov eax, dword [esp + 0x78]
vmovss xmm0, dword [eax + 8]
vmovss xmm4, dword [eax + 0xc]
mov eax, dword [0x1017f608]
mov ebx, dword [eax]
mov eax, dword [0x10184e4c]
test al, 1
je 0x100b6127
mov edi, dword [0x10184e48]
mov esi, ebx
vmovaps xmm1, xmmword [esp + 0x20]
vmovss xmm2, dword [esp]
mov ecx, dword [edi + 4]
vdivss xmm0, xmm0, xmm3
vfnmadd132ss xmm0, xmm1, dword [ecx + ebx + 4]
vmovss dword [esp + 0x220], xmm0
test al, 1
je 0x100b61ad
vdivss xmm0, xmm4, xmm3
vmovshdup xmm1, xmm1
vfmadd231ss xmm1, xmm0, dword [ecx + esi]
vmovss dword [esp + 0x224], xmm1
mov esi, dword [esp + 4]
vmovss xmm0, dword [esp + 0x10]
vmulss xmm0, xmm0, dword [0x10132438]
vmovss xmm1, dword [esp + 0x30]
vaddss xmm1, xmm1, dword [0x10134e84]
vdivss xmm0, xmm0, xmm1
vmulss xmm1, xmm2, dword [0x10134e88]
vmovss xmm2, dword [esi + 0x1b4]
vmulss xmm2, xmm2, dword [0x1012973c]
vcvttss2si eax, xmm2
vmulss xmm0, xmm0, xmm1
movzx eax, al
vmovsd xmm1, qword [esi + 0x1b8]
vbroadcastss xmm2, dword [0x1012973c]
vmulps xmm1, xmm1, xmm2
vcvttps2dq xmm1, xmm1
vpshufb xmm1, xmm1, xmmword [0x10134d40]
vpsllvd xmm1, xmm1, xmmword [0x10129960]
vmovd ecx, xmm1
or ecx, eax
vpextrd eax, xmm1, 1
or eax, ecx
or eax, 0xb4000000
vmulss xmm1, xmm0, dword [0x101298ec]
vbroadcastss xmm2, dword [0x10129734]
vandps xmm2, xmm1, xmm2
vbroadcastss xmm3, dword [0x10134e8c]
vorps xmm2, xmm2, xmm3
vaddss xmm1, xmm1, xmm2
vroundss xmm1, xmm1, xmm1, 0xb
vcvttss2si ecx, xmm1
cmp ecx, 0x11
mov edx, 0x10
cmovge edx, ecx
sub esp, 0x10
vmovss dword [esp + 4], xmm0
lea ecx, [esp + 0x230]
mov dword [esp], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 8], edx
call fcn.100ac510
vmovaps xmm1, xmmword [esp + 0x20]
vmovshdup xmm0, xmm1
vmulss xmm1, xmm0, dword [0x1012995c]
vaddss xmm2, xmm0, xmm1
cmp dword [esp + 8], 0
je 0x100b4941
mov eax, dword [0x10184ff0]
test al, 1
je 0x100b5d22
mov ebx, dword [0x10184fec]
mov eax, dword [ebx + 4]
mov ecx, dword [esp + 8]
cmp byte [eax + ecx], 0
je 0x100b4941
cmp byte [esi + 0x18d], 0
je 0x100b4941
mov eax, dword [0x1017f608]
mov esi, dword [eax]
mov eax, dword [0x10184dfc]
test al, 1
vmovss dword [esp + 0x20], xmm2
je 0x100b5d92
mov edi, dword [0x10184df8]
mov ebx, dword [edi + 4]
mov ecx, ebx
test al, 1
je 0x100b5e05
mov eax, dword [esp + 8]
vmovss xmm0, dword [ecx + eax + 8]
vsubss xmm0, xmm0, dword [esi + ebx + 8]
vmovss xmm1, dword [ecx + eax]
vmovss xmm2, dword [ecx + eax + 4]
vsubss xmm2, xmm2, dword [esi + ebx + 4]
vsubss xmm1, xmm1, dword [esi + ebx]
vmulss xmm2, xmm2, xmm2
vfmadd231ss xmm2, xmm1, xmm1
vfmadd231ss xmm2, xmm0, xmm0
vcvtss2sd xmm0, xmm2, xmm2
vxorps xmm1, xmm1, xmm1
vucomisd xmm0, xmm1
jb 0x100b4574
vsqrtsd xmm0, xmm0, xmm0
jmp 0x100b4594
sub esp, 8
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_sqrt
add esp, 8
fstp qword [esp + 0x98]
vmovsd xmm0, qword [esp + 0x98]
vcvtsd2ss xmm0, xmm0, xmm0
vmulss xmm0, xmm0, xmm0
vdivss xmm0, xmm0, dword [0x10134e90]
vcvtss2sd xmm0, xmm0, xmm0
sub esp, 8
vmovsd qword [esp], xmm0
call sub.api_ms_win_crt_math_l1_1_0.dll_exp
add esp, 8
fstp dword [esp + 0x80]
vmovss xmm0, dword [esp + 0x80]
vmulss xmm0, xmm0, dword [0x1013231c]
vmovss dword [esp + 0xbc], xmm0
mov ecx, dword [0x1017f5dc]
mov eax, dword [0x1017f608]
lea edx, [esp + 0xbc]
push 0
push 0
push 0x3f800000
push edx
push dword [eax]
call fcn.1007c5d0
mov eax, dword [0x1017f608]
mov esi, dword [eax]
mov eax, dword [0x1017f71c]
test al, 1
je 0x100b5e77
mov edi, dword [0x1017f718]
vmovss xmm0, dword [esp + 0xbc]
vucomiss xmm0, dword [0x10129710]
jae 0x100b4638
mov esi, dword [esp + 4]
vmovss xmm1, dword [esp + 0x20]
jmp 0x100b47a9
mov eax, dword [edi + 4]
vcvtsi2ss xmm1, xmm5, dword [eax + esi]
vdivss xmm2, xmm0, xmm1
vxorps xmm3, xmm3, xmm3
vmaxss xmm3, xmm3, xmm2
vmovss xmm4, dword [0x10129710]
vcmpltss xmm2, xmm4, xmm2
vbroadcastss xmm5, dword [0x10129710]
vblendvps xmm2, xmm3, xmm5, xmm2
vmovss xmm3, dword [0x1012973c]
vmulss xmm5, xmm2, xmm3
vcvttss2si eax, xmm5
movzx eax, al
vsubss xmm2, xmm4, xmm2
vmulss xmm2, xmm2, xmm3
vcvttss2si ecx, xmm2
movzx ecx, cl
shl ecx, 8
lea esi, [ecx + eax]
add esi, 0xb4000000
vucomiss xmm0, xmm1
jae 0x100b4752
vcvttss2si eax, xmm0
mov dword [esp + 0x220], eax
mov dword [esp + 0xb4], str.__HP
mov dword [esp + 0xb8], 6
sub esp, 0x10
vmovsd xmm0, qword [esp + 0xc4]
vmovsd qword [esp + 4], xmm0
lea eax, [esp + 0x230]
mov dword [esp + 0xc], eax
lea edi, [esp + 0xd0]
mov dword [esp], edi
call fcn.100acb80
add esp, 0x10
cmp dword [esp + 0xd4], 0x10
mov ebx, edi
jb 0x100b4703
mov ebx, dword [esp + 0xc0]
push ebx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, dword [esp + 4]
mov ecx, dword [ecx + 0x228]
sub esp, 0x1c
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 8], ecx
vmovss xmm0, dword [esp + 0x3c]
vmovss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
mov dword [esp], 0x41f00000
call fcn.100ac930
mov ecx, edi
call fcn.100026e0
jmp 0x100b4797
mov eax, dword [esp + 4]
mov eax, dword [eax + 0x228]
sub esp, 0x1c
mov dword [esp + 0x14], esi
mov dword [esp + 8], eax
vmovss xmm0, dword [esp + 0x3c]
vmovss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 5
mov dword [esp + 0xc], str.FATAL
mov dword [esp], 0x41f00000
call fcn.100ac930
vmovss xmm1, dword [esp + 0x20]
vaddss xmm1, xmm1, dword [0x101320ec]
mov esi, dword [esp + 4]
mov eax, dword [0x10184ff8]
test al, 1
vmovss dword [esp + 0x20], xmm1
je 0x100b5eea
mov ebx, dword [0x10184ff4]
mov eax, dword [ebx + 4]
mov ecx, dword [esp + 8]
vmovss xmm0, dword [eax + ecx]
mov eax, dword [0x1017f610]
vsubss xmm0, xmm0, dword [eax + 0x10]
mov eax, dword [0x10185000]
test al, 1
je 0x100b5f54
mov ebx, dword [0x10184ffc]
mov eax, dword [ebx + 4]
mov ecx, dword [esp + 8]
cmp dword [eax + ecx], 0
mov eax, 0x1016faf3
mov ecx, 0x1016fa76
cmove ecx, eax
mov dword [esp + 0x228], ecx
vmovss dword [esp + 0x22c], xmm0
vmovsd xmm0, qword [0x10134ea0]
vmovsd qword [esp + 0x220], xmm0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [esp + 0xc0], xmm0
mov dword [esp + 0xd0], 0
mov dword [esp + 0xd4], 0xf
sub esp, 8
movzx eax, byte [esp + 0xac]
mov byte [esp + 4], al
mov dword [esp], 0x34
lea edi, [esp + 0xc8]
mov ecx, edi
call fcn.1000d4f0
mov dword [esp + 0xd0], 0
lea eax, [esp + 0x220]
lea ecx, [esp + 0xa4]
push eax
push 2
push 0xc
push str.___:.1fs
push edi
push ecx
call fcn.1009acf0
add esp, 0x18
cmp dword [esp + 0xd4], 0x10
jb 0x100b48a9
mov edi, dword [esp + 0xc0]
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, dword [esi + 0x228]
sub esp, 0x1c
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edi
mov dword [esp + 8], ecx
vmovss xmm0, dword [esp + 0x3c]
vmovss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
mov dword [esp + 0x14], 0xb4ffffff
mov dword [esp], 0x41f00000
call fcn.100ac930
mov eax, dword [esp + 0xd4]
cmp eax, 0x10
jb 0x100b4933
mov ecx, dword [esp + 0xc0]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x100b4925
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x100b6121
push esi
push ecx
call fcn.100d7fd2
add esp, 8
mov esi, dword [esp + 4]
vmovss xmm2, dword [esp + 0x20]
vaddss xmm2, xmm2, dword [0x10134eb0]
test byte [esi + 0x198], 1
je 0x100b4a4a
mov ecx, dword [0x1017f5c0]
mov al, 1
cmp byte [ecx + 0x138], 0
vmovss dword [esp + 0x20], xmm2
jne 0x100b49f2
mov eax, dword [esi + 0x198]
test al, 2
je 0x100b4ade
mov ecx, dword [0x1017f5c8]
mov edx, dword [ecx + 0x2c]
cmp edx, 5
ja 0x100b4ade
mov esi, 0x2c
bt esi, edx
jae 0x100b4c5c
cmp byte [ecx + 0x1b], 0
mov eax, 0xb40000ff
mov ecx, 0xb4ffffff
cmove ecx, eax
mov esi, dword [esp + 4]
mov eax, dword [esi + 0x228]
sub esp, 0x1c
mov dword [esp + 0x14], ecx
mov dword [esp + 8], eax
vmovss dword [esp + 4], xmm2
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 2
mov dword [esp + 0xc], 0x1016f1b3
mov dword [esp], 0x41f00000
vmovss dword [esp + 0x3c], xmm2
call fcn.100ac930
vmovss xmm2, dword [esp + 0x20]
vaddss xmm2, xmm2, dword [0x10134eb8]
mov eax, dword [esi + 0x198]
test al, 4
je 0x100b4b6e
mov ecx, dword [0x1017f5c8]
cmp dword [ecx + 0x2c], 1
jne 0x100b4b6e
vmovaps xmm0, xmmword [0x10134ec0]
vmovups xmmword [esp + 0xc0], xmm0
lea eax, [esp + 0xc0]
push eax
vmovss dword [esp + 0x24], xmm2
call fcn.1001d220
add esp, 4
mov ecx, dword [esi + 0x228]
sub esp, 0x1c
mov dword [esp + 0x14], eax
mov dword [esp + 8], ecx
vmovss xmm0, dword [esp + 0x3c]
vmovss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 4
mov dword [esp + 0xc], str.OSAA
mov dword [esp], 0x41f00000
call fcn.100ac930
vmovss xmm2, dword [esp + 0x20]
vaddss xmm2, xmm2, dword [0x10134eb8]
mov eax, dword [esi + 0x198]
test al, 8
je 0x100b4dd3
mov ecx, dword [0x1017f5e8]
mov eax, dword [ecx + 0x4c]
test eax, eax
je 0x100b4dd3
vmovss dword [esp + 0x20], xmm2
mov esi, dword [ecx + 0x48]
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x100b4bab
mov esi, dword [esp + 4]
vmovss xmm2, dword [esp + 0x20]
jmp 0x100b4dd3
lea eax, [esp + 0xc0]
push esi
push eax
call fcn.10018ee0
add esp, 8
vmovaps xmm0, xmmword [0x10134ed0]
vmovups xmmword [esp + 0xa4], xmm0
lea eax, [esp + 0xa4]
push eax
call fcn.1001d220
add esp, 4
mov esi, dword [esp + 0xd0]
cmp esi, 0x7ffffffb
jge 0x100b5fc4
mov dword [esp + 8], eax
mov edx, dword [esp + 0xc0]
mov ecx, dword [esp + 0xd4]
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [esp + 0x220], xmm0
mov dword [esp + 0x10], esi
add esi, 5
mov edi, 0xf
lea ebx, [esp + 0x220]
cmp esi, 0x10
jb 0x100b4ca1
mov eax, esi
or eax, 0xf
mov dword [esp + 0x30], edx
mov dword [esp], ecx
js 0x100b4c6d
cmp eax, 0x17
mov edi, 0x16
cmovae edi, eax
lea eax, [edi + 1]
cmp edi, 0xfff
mov dword [esp + 0x50], edi
jae 0x100b4c7a
push eax
call fcn.100d7f9d
add esp, 4
mov ebx, eax
jmp 0x100b4c8f
mov esi, dword [esp + 4]
test al, 4
jne 0x100b4ae6
jmp 0x100b4b6e
mov dword [esp + 0x50], 0x7fffffff
mov eax, 0x80000000
add eax, 0x23
push eax
call fcn.100d7f9d
add esp, 4
lea ebx, [eax + 0x23]
and ebx, 0xffffffe0
mov dword [ebx - 4], eax
mov dword [esp + 0x220], ebx
mov edx, dword [esp + 0x30]
mov ecx, dword [esp]
mov edi, dword [esp + 0x50]
cmp ecx, 0x10
lea ecx, [esp + 0xc0]
cmovae ecx, edx
mov dword [esp + 0x230], esi
mov dword [esp + 0x234], edi
mov byte [ebx + 4], 0x20
mov dword [ebx], 0x3a474d44
lea eax, [ebx + 5]
mov esi, dword [esp + 0x10]
push esi
push ecx
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [ebx + esi + 5], 0
mov eax, dword [esp + 0x230]
cmp dword [esp + 0x234], 0x10
lea edi, [esp + 0x220]
jb 0x100b4cfc
mov edi, dword [esp + 0x220]
mov esi, dword [esp + 4]
mov ecx, dword [esi + 0x228]
sub esp, 0x1c
mov edx, dword [esp + 0x24]
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edi
mov dword [esp + 8], ecx
vmovss xmm0, dword [esp + 0x3c]
vmovss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
mov dword [esp], 0x41f00000
call fcn.100ac930
mov eax, dword [esp + 0x234]
cmp eax, 0x10
jb 0x100b4d81
mov ecx, dword [esp + 0x220]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x100b4d73
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x100b6121
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.100d7fd2
add esp, 8
mov esi, dword [esp + 4]
mov eax, dword [esp + 0xd4]
cmp eax, 0x10
jb 0x100b4dc5
mov ecx, dword [esp + 0xc0]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x100b4db7
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x100b6121
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.100d7fd2
add esp, 8
mov esi, dword [esp + 4]
vmovss xmm2, dword [esp + 0x20]
vaddss xmm2, xmm2, dword [0x10134eb8]
test byte [esi + 0x198], 0x10
je 0x100b4ece
mov eax, dword [0x1017f5cc]
mov eax, dword [eax + 0x20]
test eax, eax
je 0x100b4ece
vmovss dword [esp + 0x20], xmm2
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
je 0x100b4ec8
vmovss xmm0, dword [esi + 0x10]
vmulss xmm0, xmm0, dword [0x1012973c]
vmovsd xmm1, qword [esi + 8]
vbroadcastss xmm2, dword [0x1012973c]
vmulps xmm1, xmm1, xmm2
vcvttps2dq xmm1, xmm1
vcvtdq2ps xmm1, xmm1
vbroadcastss xmm2, dword [0x10129760]
vmulps xmm1, xmm1, xmm2
vmovlps qword [esp + 0xc0], xmm1
vcvttps2dq xmm0, xmm0
vcvtdq2ps xmm0, xmm0
vmulss xmm0, xmm0, dword [0x10129760]
vmovss dword [esp + 0xc8], xmm0
mov dword [esp + 0xcc], 0x3f800000
lea eax, [esp + 0xc0]
push eax
call fcn.1001d220
add esp, 4
mov ecx, dword [esi + 0x228]
sub esp, 0x1c
mov dword [esp + 0x14], eax
mov dword [esp + 8], ecx
vmovss xmm0, dword [esp + 0x3c]
vmovss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 4
mov dword [esp + 0xc], str.PEEK
mov dword [esp], 0x41f00000
call fcn.100ac930
vmovss xmm2, dword [esp + 0x20]
vaddss xmm2, xmm2, dword [0x10134eb8]
jmp 0x100b4ece
vmovss xmm2, dword [esp + 0x20]
test byte [esi + 0x198], 0x20
je 0x100b4f75
mov eax, dword [0x1017f5e8]
mov eax, dword [eax + 0x58]
test eax, eax
je 0x100b4f75
vmovss dword [esp + 0x20], xmm2
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
je 0x100b4f6f
vmovaps xmm0, xmmword [0x10134ec0]
vmovups xmmword [esp + 0xc0], xmm0
lea eax, [esp + 0xc0]
push eax
call fcn.1001d220
add esp, 4
mov ecx, dword [esi + 0x228]
sub esp, 0x1c
mov dword [esp + 0x14], eax
mov dword [esp + 8], ecx
vmovss xmm0, dword [esp + 0x3c]
vmovss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 2
mov dword [esp + 0xc], 0x1016f213
mov dword [esp], 0x41f00000
call fcn.100ac930
vmovss xmm2, dword [esp + 0x20]
vaddss xmm2, xmm2, dword [0x10134eb8]
jmp 0x100b4f75
vmovss xmm2, dword [esp + 0x20]
test byte [esi + 0x198], 0x40
je 0x100b50c4
mov ecx, dword [0x1017f5e4]
mov eax, dword [ecx + 0x38]
mov esi, dword [ecx + 0x3c]
test eax, eax
je 0x100b5024
vmovss dword [esp + 0x20], xmm2
push eax
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
je 0x100b501e
vmovaps xmm0, xmmword [0x10134ee0]
vmovups xmmword [esp + 0xc0], xmm0
lea eax, [esp + 0xc0]
push eax
call fcn.1001d220
add esp, 4
mov ecx, dword [esp + 4]
mov ecx, dword [ecx + 0x228]
sub esp, 0x1c
mov dword [esp + 0x14], eax
mov dword [esp + 8], ecx
vmovss xmm0, dword [esp + 0x3c]
vmovss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 4
mov dword [esp + 0xc], 0x1016f1a8
mov dword [esp], 0x41f00000
call fcn.100ac930
vmovss xmm2, dword [esp + 0x20]
vaddss xmm2, xmm2, dword [0x10134eb8]
jmp 0x100b5024
vmovss xmm2, dword [esp + 0x20]
test esi, esi
je 0x100b50b4
vmovss dword [esp + 0x20], xmm2
push esi
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
je 0x100b50ba
vmovaps xmm0, xmmword [0x10134ee0]
vmovups xmmword [esp + 0xc0], xmm0
lea eax, [esp + 0xc0]
push eax
call fcn.1001d220
add esp, 4
mov esi, dword [esp + 4]
mov ecx, dword [esi + 0x228]
sub esp, 0x1c
mov dword [esp + 0x14], eax
mov dword [esp + 8], ecx
vmovss xmm0, dword [esp + 0x3c]
vmovss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 5
mov dword [esp + 0xc], 0x1016f182
mov dword [esp], 0x41f00000
call fcn.100ac930
vmovss xmm2, dword [esp + 0x20]
vaddss xmm2, xmm2, dword [0x10134eb8]
jmp 0x100b50c4
mov esi, dword [esp + 4]
jmp 0x100b50c4
mov esi, dword [esp + 4]
vmovss xmm2, dword [esp + 0x20]
test byte [esi + 0x198], 0x80
je 0x100b516b
mov eax, dword [0x1017f5cc]
mov eax, dword [eax + 0x18]
test eax, eax
je 0x100b516b
vmovss dword [esp + 0x20], xmm2
push eax
call dword [sym.imp.USER32.dll_GetAsyncKeyState]
test ax, ax
js 0x100b50fb
vmovss xmm2, dword [esp + 0x20]
jmp 0x100b516b
vmovaps xmm0, xmmword [0x10134ef0]
vmovups xmmword [esp + 0xc0], xmm0
lea eax, [esp + 0xc0]
push eax
call fcn.1001d220
add esp, 4
mov ecx, dword [esi + 0x228]
sub esp, 0x1c
mov dword [esp + 0x14], eax
mov dword [esp + 8], ecx
vmovss xmm0, dword [esp + 0x3c]
vmovss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 4
mov dword [esp + 0xc], str.DUCK
mov dword [esp], 0x41f00000
call fcn.100ac930
vmovss xmm2, dword [esp + 0x20]
vaddss xmm2, xmm2, dword [0x10134eb8]
test byte [esi + 0x199], 1
je 0x100b51f9
mov eax, dword [0x1017f5e4]
mov eax, dword [eax + 0x34]
test eax, eax
je 0x100b51f9
push eax
vmovss dword [esp + 0x24], xmm2
call dword [sym.imp.USER32.dll_GetKeyState]
test ax, ax
je 0x100b51f9
vbroadcastss xmm0, dword [0x10129710]
vmovups xmmword [esp + 0xc0], xmm0
lea eax, [esp + 0xc0]
push eax
call fcn.1001d220
add esp, 4
mov ecx, dword [esi + 0x228]
sub esp, 0x1c
mov dword [esp + 0x14], eax
mov dword [esp + 8], ecx
vmovss xmm0, dword [esp + 0x3c]
vmovss dword [esp + 4], xmm0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 6
mov dword [esp + 0xc], str.INVERT
mov dword [esp], 0x41f00000
call fcn.100ac930
cmp byte [esi + 0x190], 0
je 0x100b5986
vxorps xmm0, xmm0, xmm0
vmovlps qword [esp + 0xa4], xmm0
mov dword [esp + 0xac], 0
mov eax, dword [0x1017f610]
cmp dword [eax + 0x18], 0
jle 0x100b5976
mov edi, 1
jmp 0x100b5264
lea ecx, [esp + 0xa4]
lea eax, [esp + 0xd0]
push eax
push ebx
call fcn.100bc910
nop dword [eax]
lea eax, [edi + 1]
mov ecx, dword [0x1017f610]
cmp edi, dword [ecx + 0x18]
mov edi, eax
jge 0x100b58ca
mov ecx, dword [0x1017f618]
mov eax, dword [ecx]
push edi
call dword [eax + 0xc]
test eax, eax
je 0x100b5250
mov ebx, eax
mov eax, dword [0x1017f608]
cmp ebx, dword [eax]
je 0x100b5250
mov eax, dword [0x1017f71c]
test al, 1
je 0x100b54a5
mov esi, dword [0x1017f718]
mov eax, dword [esi + 4]
cmp dword [eax + ebx], 0
jle 0x100b52b7
mov eax, dword [0x1017f724]
test al, 1
je 0x100b5517
mov esi, dword [0x1017f720]
mov eax, dword [esi + 4]
cmp byte [eax + ebx], 0
je 0x100b5250
mov ecx, ebx
add ecx, 8
mov eax, dword [ebx + 8]
call dword [eax + 0x24]
test al, al
jne 0x100b5250
mov ecx, dword [0x1017f618]
mov eax, dword [0x10185008]
test al, 1
je 0x100b5589
mov esi, dword [0x10185004]
mov eax, dword [esi + 4]
mov edx, dword [ecx]
push dword [eax + ebx]
call dword [edx + 0x10]
test eax, eax
je 0x100b5250
mov ecx, eax
add ecx, 8
mov eax, dword [eax + 8]
call dword [eax + 0x28]
mov esi, eax
mov eax, dword [0x1017f608]
mov ecx, dword [eax]
mov eax, dword [ecx + 8]
add ecx, 8
call dword [eax + 0x28]
cmp esi, eax
jne 0x100b5250
mov ecx, dword [0x1017f614]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [esp + 0x2b5], ymm0
vmovaps ymmword [esp + 0x2a0], ymm0
vmovaps ymmword [esp + 0x280], ymm0
vmovaps ymmword [esp + 0x260], ymm0
vmovaps ymmword [esp + 0x240], ymm0
vmovaps ymmword [esp + 0x220], ymm0
lea eax, [esp + 0x2d8]
vmovups ymmword [eax + 0x60], ymm0
vmovups ymmword [eax + 0x40], ymm0
vmovups ymmword [eax + 0x20], ymm0
vmovups ymmword [eax], ymm0
mov dword [eax + 0x82], 0
mov dword [eax + 0x7e], 0
vxorps xmm0, xmm0, xmm0
vmovups xmmword [eax + 0x88], xmm0
mov byte [eax + 0x98], 0
mov eax, dword [ecx]
lea esi, [esp + 0x220]
push esi
push edi
vzeroupper
call dword [eax + 0x20]
test al, al
je 0x100b5250
push 0x158
push esi
lea eax, [esp + 0xc8]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esp + 0x218], 1
mov ebx, dword [esp + 0xa8]
cmp ebx, dword [esp + 0xac]
je 0x100b5234
vxorps xmm0, xmm0, xmm0
vmovups xmmword [ebx], xmm0
mov dword [ebx + 0x14], 0
mov dword [ebx + 0x10], 0
lea eax, [esp + 0xd0]
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
test eax, eax
js 0x100b5fc4
mov esi, eax
cmp eax, 0xf
ja 0x100b542b
mov dword [ebx + 0x10], esi
mov dword [ebx + 0x14], 0xf
push esi
lea eax, [esp + 0xd4]
push eax
push ebx
jmp 0x100b548b
mov dword [ebx + 0x14], 0xf
mov ecx, esi
or ecx, 0xf
cmp ecx, 0x17
mov eax, 0x16
cmovb ecx, eax
cmp ecx, 0xfff
mov dword [esp + 0x20], ecx
jb 0x100b5465
lea eax, [ecx + 0x24]
push eax
call fcn.100d7f9d
add esp, 4
lea ecx, [eax + 0x23]
and ecx, 0xffffffe0
mov dword [ecx - 4], eax
jmp 0x100b5473
lea eax, [ecx + 1]
push eax
call fcn.100d7f9d
add esp, 4
mov ecx, eax
mov dword [ebx], ecx
mov dword [ebx + 0x10], esi
mov eax, dword [esp + 0x20]
mov dword [ebx + 0x14], eax
push esi
lea eax, [esp + 0xd4]
push eax
push ecx
mov ebx, ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
add esi, ebx
mov byte [esi], 0
add dword [esp + 0xa8], 0x18
jmp 0x100b5250
or eax, 1
mov dword [0x1017f71c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp], eax
lea esi, [esp + 0xc0]
mov ecx, esi
push str.CBasePlayer__m_iHealth
call fcn.10005ce0
cmp dword [esp + 0xd4], 0x10
mov dword [esp + 0x10], esi
jb 0x100b54e1
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x20], eax
test eax, eax
je 0x100b55ff
mov eax, dword [esp + 0x20]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 8], eax
cmp ecx, 3
jae 0x100b5606
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b5658
or eax, 1
mov dword [0x1017f724], eax
mov eax, dword [0x1017f5c4]
mov dword [esp], eax
lea esi, [esp + 0xc0]
mov ecx, esi
push str.CBasePlayer__m_lifeState
call fcn.10005ce0
cmp dword [esp + 0xd4], 0x10
mov dword [esp + 0x10], esi
jb 0x100b5553
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x20], eax
test eax, eax
je 0x100b56ec
mov eax, dword [esp + 0x20]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 8], eax
cmp ecx, 3
jae 0x100b56f3
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b5745
mov dword [esp + 0x50], ecx
or eax, 1
mov dword [0x10185008], eax
mov eax, dword [0x1017f5c4]
mov dword [esp], eax
lea esi, [esp + 0xc0]
mov ecx, esi
push str.CBasePlayer__m_hObserverTarget
call fcn.10005ce0
cmp dword [esp + 0xd4], 0x10
mov dword [esp + 0x10], esi
jb 0x100b55c9
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x20], eax
test eax, eax
je 0x100b57d9
mov eax, dword [esp + 0x20]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 8], eax
cmp ecx, 3
jae 0x100b57e0
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b5832
mov ecx, 0x811c9dc5
jmp 0x100b5678
mov eax, dword [esp + 0x20]
and eax, 0xfffffffc
mov dword [esp + 0x30], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov esi, dword [esp + 0x10]
movzx eax, byte [esi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [esi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [esi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [esi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0x30], edx
jne 0x100b5618
cmp dword [esp + 8], 0
je 0x100b5678
add edx, dword [esp + 0x10]
xor esi, esi
movzx eax, byte [edx + esi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc esi
cmp dword [esp + 8], esi
jne 0x100b5665
mov edx, dword [esp]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
cmp esi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x20]
cmp eax, dword [esi + 0x18]
jne 0x100b56c3
cmp dword [esi + 0x1c], 0x10
jb 0x100b56ab
mov eax, dword [esi + 8]
jmp 0x100b56ae
lea eax, [esi + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b56d2
cmp esi, dword [esp + 8]
je 0x100b69a4
mov esi, dword [esi + 4]
jmp 0x100b5697
add esi, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x1017f718], esi
jmp 0x100b5292
mov ecx, 0x811c9dc5
jmp 0x100b5765
mov eax, dword [esp + 0x20]
and eax, 0xfffffffc
mov dword [esp + 0x30], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov esi, dword [esp + 0x10]
movzx eax, byte [esi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [esi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [esi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [esi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0x30], edx
jne 0x100b5705
cmp dword [esp + 8], 0
je 0x100b5765
add edx, dword [esp + 0x10]
xor esi, esi
movzx eax, byte [edx + esi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc esi
cmp dword [esp + 8], esi
jne 0x100b5752
mov edx, dword [esp]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
cmp esi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x20]
cmp eax, dword [esi + 0x18]
jne 0x100b57b0
cmp dword [esi + 0x1c], 0x10
jb 0x100b5798
mov eax, dword [esi + 8]
jmp 0x100b579b
lea eax, [esi + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b57bf
cmp esi, dword [esp + 8]
je 0x100b69a4
mov esi, dword [esi + 4]
jmp 0x100b5784
add esi, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x1017f720], esi
jmp 0x100b52ae
mov ecx, 0x811c9dc5
jmp 0x100b5852
mov eax, dword [esp + 0x20]
and eax, 0xfffffffc
mov dword [esp + 0x30], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov esi, dword [esp + 0x10]
movzx eax, byte [esi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [esi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [esi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [esi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0x30], edx
jne 0x100b57f2
cmp dword [esp + 8], 0
je 0x100b5852
add edx, dword [esp + 0x10]
xor esi, esi
movzx eax, byte [edx + esi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc esi
cmp dword [esp + 8], esi
jne 0x100b583f
mov edx, dword [esp]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
cmp esi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x20]
cmp eax, dword [esi + 0x18]
jne 0x100b589d
cmp dword [esi + 0x1c], 0x10
jb 0x100b5885
mov eax, dword [esi + 8]
jmp 0x100b5888
lea eax, [esi + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b58ac
cmp esi, dword [esp + 8]
je 0x100b69a4
mov esi, dword [esi + 4]
jmp 0x100b5871
add esi, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x10185004], esi
mov ecx, dword [esp + 0x50]
jmp 0x100b52df
mov esi, dword [esp + 0xa4]
mov eax, dword [esp + 0xa8]
mov dword [esp + 0x20], eax
cmp esi, eax
je 0x100b5976
mov ebx, 0xa
jmp 0x100b5967
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, dword [esp + 4]
mov ecx, dword [ecx + 0x220]
mov edx, dword [esp + 0x78]
vmovss xmm0, dword [0x10134f00]
vaddss xmm0, xmm0, dword [edx + 8]
vmovd xmm1, ebx
vpor xmm1, xmm1, xmmword [0x10130ef0]
vsubsd xmm1, xmm1, qword [0x10130d28]
vcvtsd2ss xmm1, xmm1, xmm1
sub esp, 0x1c
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edi
mov dword [esp + 8], ecx
vmovss dword [esp + 4], xmm1
vmovss dword [esp], xmm0
mov dword [esp + 0x18], 4
mov dword [esp + 0x14], 0xb4ffffff
call fcn.100ac930
add esi, 0x18
add ebx, 0x14
cmp esi, dword [esp + 0x20]
je 0x100b5976
cmp dword [esi + 0x14], 0x10
mov edi, esi
jb 0x100b58f0
mov edi, dword [esi]
jmp 0x100b58f0
lea ecx, [esp + 0xa4]
call fcn.100bccd0
mov esi, dword [esp + 4]
cmp byte [esi + 0x191], 0
je 0x100b5a44
mov eax, dword [esp + 4]
cmp byte [eax + 0x26c], 0
je 0x100b5a44
vmovss xmm0, dword [0x10129738]
mov eax, dword [esp + 0x78]
vmulss xmm1, xmm0, dword [eax + 0xc]
vmulss xmm0, xmm0, dword [eax + 8]
mov edx, dword [esp + 4]
cmp dword [edx + 0x268], 4
mov eax, 0xb40000ff
mov ecx, 0xb400ff00
cmove ecx, eax
cmp dword [edx + 0x25c], 0
mov eax, 0xb4ff0000
cmovle eax, ecx
vmovss xmm2, dword [0x101296d4]
vaddss xmm0, xmm0, xmm2
vmovss dword [esp + 4], xmm0
vaddss xmm0, xmm1, xmm2
vmovss dword [esp + 0x20], xmm0
mov ecx, dword [0x1017f64c]
mov edx, dword [ecx]
push eax
call dword [edx + 0x38]
mov ecx, dword [0x1017f64c]
vmovss xmm0, dword [0x1012979c]
vmovss xmm3, dword [esp + 0x20]
vaddss xmm1, xmm3, xmm0
vmovss xmm2, dword [esp + 4]
vaddss xmm0, xmm2, xmm0
mov eax, dword [ecx]
vcvttss2si edx, xmm1
vcvttss2si esi, xmm0
vcvttss2si edi, xmm3
vcvttss2si ebx, xmm2
push edx
push esi
push edi
push ebx
call dword [eax + 0x40]
mov ecx, dword [esp + 0x388]
xor ecx, ebp
call fcn.100d7fe0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov byte [0x10184f90], 1
mov eax, dword [0x1017f61c]
mov eax, dword [eax + 0x174]
mov dword [0x10184f8c], eax
jmp 0x100b3885
or eax, 1
mov dword [0x1017f71c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x50], eax
lea ecx, [esp + 0xc0]
mov dword [esp + 0x30], ecx
push str.CBasePlayer__m_iHealth
call fcn.10005ce0
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
cmp dword [esp + 0xd4], 0x10
jb 0x100b5abc
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x30], eax
cmp dword [esp + 0x10], 0
je 0x100b5b5c
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp], eax
cmp ecx, 3
jae 0x100b5b63
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b5baf
or eax, 1
mov dword [0x1017f724], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x50], eax
lea ecx, [esp + 0xc0]
mov dword [esp + 0x30], ecx
push str.CBasePlayer__m_lifeState
call fcn.10005ce0
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
cmp dword [esp + 0xd4], 0x10
jb 0x100b5b2f
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x30], eax
cmp dword [esp + 0x10], 0
je 0x100b5c3c
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp], eax
cmp ecx, 3
jae 0x100b5c43
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b5c8f
mov ecx, 0x811c9dc5
jmp 0x100b5bcd
mov edi, dword [esp + 0x10]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x30]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b5b75
cmp dword [esp], 0
je 0x100b5bcd
add edx, dword [esp + 0x30]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esp], edi
jne 0x100b5bbb
mov edx, dword [esp + 0x50]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x100b5c15
cmp dword [edi + 0x1c], 0x10
jb 0x100b5bfd
mov eax, dword [edi + 8]
jmp 0x100b5c00
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x38]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b5c22
cmp edi, ebx
je 0x100b69a4
mov edi, dword [edi + 4]
jmp 0x100b5be9
add edi, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x1017f718], edi
jmp 0x100b4217
mov ecx, 0x811c9dc5
jmp 0x100b5cad
mov edi, dword [esp + 0x10]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x30]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b5c55
cmp dword [esp], 0
je 0x100b5cad
add edx, dword [esp + 0x30]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esp], edi
jne 0x100b5c9b
mov edx, dword [esp + 0x50]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x100b5cf5
cmp dword [edi + 0x1c], 0x10
jb 0x100b5cdd
mov eax, dword [edi + 8]
jmp 0x100b5ce0
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x38]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b5d02
cmp edi, ebx
je 0x100b69a4
mov edi, dword [edi + 4]
jmp 0x100b5cc9
add edi, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x1017f720], edi
vmovaps xmm1, xmmword [esp + 0x20]
jmp 0x100b423d
vmovss dword [esp + 0x20], xmm2
or eax, 1
mov dword [0x10184ff0], eax
mov eax, dword [0x1017f5c4]
mov dword [esp], eax
lea ecx, [esp + 0xc0]
mov dword [esp + 0x10], ecx
push str.CPlantedC4__m_bBombTicking
call fcn.10005ce0
mov esi, dword [esp + 0xd0]
cmp dword [esp + 0xd4], 0x10
jb 0x100b5d69
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x10], eax
test esi, esi
je 0x100b5fc9
lea ecx, [esi - 1]
mov eax, esi
and eax, 3
mov dword [esp + 0x30], eax
cmp ecx, 3
jae 0x100b5fd0
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b601a
or eax, 1
mov dword [0x10184dfc], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x50], eax
lea ecx, [esp + 0xc0]
mov dword [esp + 0x30], ecx
push str.CBaseEntity__m_vecOrigin
call fcn.10005ce0
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
cmp dword [esp + 0xd4], 0x10
jb 0x100b5dd8
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x30], eax
cmp dword [esp + 0x10], 0
je 0x100b622d
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp], eax
cmp ecx, 3
jae 0x100b625f
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b62ab
or eax, 1
mov dword [0x10184dfc], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0xc], eax
lea ecx, [esp + 0xc0]
mov dword [esp], ecx
push str.CBaseEntity__m_vecOrigin
call fcn.10005ce0
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
cmp dword [esp + 0xd4], 0x10
jb 0x100b5e49
mov eax, dword [esp + 0xc0]
mov dword [esp], eax
cmp dword [esp + 0x10], 0
je 0x100b6237
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x30], eax
cmp ecx, 3
jae 0x100b633d
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b638e
or eax, 1
mov dword [0x1017f71c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x50], eax
lea ecx, [esp + 0xc0]
mov dword [esp + 0x30], ecx
push str.CBasePlayer__m_iHealth
call fcn.10005ce0
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x10], eax
cmp dword [esp + 0xd4], 0x10
jb 0x100b5ebd
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x30], eax
cmp dword [esp + 0x10], 0
je 0x100b6241
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp], eax
cmp ecx, 3
jae 0x100b642c
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b6478
or eax, 1
mov dword [0x10184ff8], eax
mov eax, dword [0x1017f5c4]
mov dword [esp], eax
lea ecx, [esp + 0xc0]
mov dword [esp + 0x10], ecx
push str.CPlantedC4__m_flC4Blow
call fcn.10005ce0
mov esi, dword [esp + 0xd0]
cmp dword [esp + 0xd4], 0x10
jb 0x100b5f2b
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x10], eax
test esi, esi
je 0x100b624b
lea ecx, [esi - 1]
mov eax, esi
and eax, 3
mov dword [esp + 0x30], eax
cmp ecx, 3
jae 0x100b6505
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b654f
vmovss dword [esp + 0x50], xmm0
or eax, 1
mov dword [0x10185000], eax
mov eax, dword [0x1017f5c4]
mov dword [esp], eax
lea ecx, [esp + 0xc0]
mov dword [esp + 0x10], ecx
push str.CPlantedC4__m_nBombSite
call fcn.10005ce0
mov esi, dword [esp + 0xd0]
cmp dword [esp + 0xd4], 0x10
jb 0x100b5f9b
mov eax, dword [esp + 0xc0]
mov dword [esp + 0x10], eax
test esi, esi
je 0x100b6255
lea ecx, [esi - 1]
mov eax, esi
and eax, 3
mov dword [esp + 0x30], eax
cmp ecx, 3
jae 0x100b65dd
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b6627
call fcn.100081b0
mov ecx, 0x811c9dc5
jmp 0x100b603a
mov edi, esi
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x10]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b5fe0
cmp dword [esp + 0x30], 0
je 0x100b603a
add edx, dword [esp + 0x10]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esp + 0x30], edi
jne 0x100b6027
mov edx, dword [esp]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov edi, dword [eax + ecx*4]
cmp esi, dword [ebx + 0x18]
je 0x100b606a
cmp ebx, edi
je 0x100b69a4
mov ebx, dword [ebx + 4]
cmp esi, dword [ebx + 0x18]
jne 0x100b605a
cmp dword [ebx + 0x1c], 0x10
jb 0x100b6075
mov eax, dword [ebx + 8]
jmp 0x100b6078
lea eax, [ebx + 8]
push esi
push eax
push dword [esp + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b605a
add ebx, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x10184fec], ebx
mov esi, dword [esp + 4]
vmovss xmm2, dword [esp + 0x20]
jmp 0x100b44e1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
vmovss dword [esp + 0x7c], xmm0
vmovss dword [esp + 0x74], xmm4
vmovss dword [esp + 0x6c], xmm3
or eax, 1
mov dword [0x10184e4c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x70], eax
lea ecx, [esp + 0xc0]
mov dword [esp + 0xc], ecx
push str.CBasePlayer__m_aimPunchAngle
call fcn.10005ce0
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x50], eax
cmp dword [esp + 0xd4], 0x10
jb 0x100b617f
mov eax, dword [esp + 0xc0]
mov dword [esp + 0xc], eax
cmp dword [esp + 0x50], 0
je 0x100b67a2
mov eax, dword [esp + 0x50]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x4c], eax
cmp ecx, 3
jae 0x100b67b3
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b67ff
vmovss dword [esp + 0x74], xmm4
vmovss dword [esp + 0x6c], xmm3
or eax, 1
mov dword [0x10184e4c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x70], eax
lea ecx, [esp + 0xc0]
mov dword [esp + 0xc], ecx
push str.CBasePlayer__m_aimPunchAngle
call fcn.10005ce0
mov eax, dword [esp + 0xd0]
mov dword [esp + 0x50], eax
cmp dword [esp + 0xd4], 0x10
jb 0x100b61ff
mov eax, dword [esp + 0xc0]
mov dword [esp + 0xc], eax
cmp dword [esp + 0x50], 0
je 0x100b67a9
mov eax, dword [esp + 0x50]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x4c], eax
cmp ecx, 3
jae 0x100b68b7
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b6903
mov ecx, 0x811c9dc5
jmp 0x100b62c9
mov ecx, 0x811c9dc5
jmp 0x100b63ad
mov ecx, 0x811c9dc5
jmp 0x100b6496
mov ecx, 0x811c9dc5
jmp 0x100b656f
mov ecx, 0x811c9dc5
jmp 0x100b6647
mov edi, dword [esp + 0x10]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x30]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b6271
cmp dword [esp], 0
je 0x100b62c9
add edx, dword [esp + 0x30]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esp], edi
jne 0x100b62b7
mov edx, dword [esp + 0x50]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x100b6311
cmp dword [edi + 0x1c], 0x10
jb 0x100b62f9
mov eax, dword [edi + 8]
jmp 0x100b62fc
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x38]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b631e
cmp edi, ebx
je 0x100b69a4
mov edi, dword [edi + 4]
jmp 0x100b62e5
add edi, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x10184df8], edi
mov eax, dword [0x10184dfc]
jmp 0x100b451f
mov eax, dword [esp + 0x10]
and eax, 0xfffffffc
mov dword [esp + 0x50], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov edi, dword [esp]
movzx eax, byte [edi + edx]
xor eax, ecx
imul eax, eax, 0x1000193
movzx ecx, byte [edi + edx + 1]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 2]
xor ecx, eax
imul eax, ecx, 0x1000193
movzx ecx, byte [edi + edx + 3]
xor ecx, eax
imul ecx, ecx, 0x1000193
add edx, 4
cmp dword [esp + 0x50], edx
jne 0x100b6352
cmp dword [esp + 0x30], 0
je 0x100b63ad
add edx, dword [esp]
xor edi, edi
movzx eax, byte [edx + edi]
xor eax, ecx
imul ecx, eax, 0x1000193
inc edi
cmp dword [esp + 0x30], edi
jne 0x100b639a
mov edx, dword [esp + 0xc]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x100b63f9
cmp dword [edi + 0x1c], 0x10
jb 0x100b63e1
mov eax, dword [edi + 8]
jmp 0x100b63e4
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 8]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b6408
cmp edi, dword [esp + 0x30]
je 0x100b69a4
mov edi, dword [edi + 4]
jmp 0x100b63cd
lea eax, [edi + 0x20]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov eax, dword [esp + 0x10]
mov dword [0x10184df8], eax
mov ecx, dword [edi + 0x24]
jmp 0x100b452c
mov edi, dword [esp + 0x10]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x30]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b643e
cmp dword [esp], 0
je 0x100b6496
add edx, dword [esp + 0x30]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esp], edi
jne 0x100b6484
mov edx, dword [esp + 0x50]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esp + 0x10]
cmp eax, dword [edi + 0x18]
jne 0x100b64de
cmp dword [edi + 0x1c], 0x10
jb 0x100b64c6
mov eax, dword [edi + 8]
jmp 0x100b64c9
lea eax, [edi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x38]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b64eb
cmp edi, ebx
je 0x100b69a4
mov edi, dword [edi + 4]
jmp 0x100b64b2
add edi, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x1017f718], edi
jmp 0x100b4616
mov edi, esi
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x10]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b6515
cmp dword [esp + 0x30], 0
je 0x100b656f
add edx, dword [esp + 0x10]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esp + 0x30], edi
jne 0x100b655c
mov edx, dword [esp]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov edi, dword [eax + ecx*4]
cmp esi, dword [ebx + 0x18]
je 0x100b659f
cmp ebx, edi
je 0x100b69a4
mov ebx, dword [ebx + 4]
cmp esi, dword [ebx + 0x18]
jne 0x100b658f
cmp dword [ebx + 0x1c], 0x10
jb 0x100b65aa
mov eax, dword [ebx + 8]
jmp 0x100b65ad
lea eax, [ebx + 8]
push esi
push eax
push dword [esp + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b658f
add ebx, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x10184ff4], ebx
mov esi, dword [esp + 4]
jmp 0x100b47c2
mov edi, esi
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x10]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b65ed
cmp dword [esp + 0x30], 0
je 0x100b6647
add edx, dword [esp + 0x10]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esp + 0x30], edi
jne 0x100b6634
mov edx, dword [esp]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov edi, dword [eax + ecx*4]
cmp esi, dword [ebx + 0x18]
je 0x100b6677
cmp ebx, edi
je 0x100b69a4
mov ebx, dword [ebx + 4]
cmp esi, dword [ebx + 0x18]
jne 0x100b6667
cmp dword [ebx + 0x1c], 0x10
jb 0x100b6682
mov eax, dword [ebx + 8]
jmp 0x100b6685
lea eax, [ebx + 8]
push esi
push eax
push dword [esp + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b6667
add ebx, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x10184ffc], ebx
mov esi, dword [esp + 4]
vmovss xmm0, dword [esp + 0x50]
jmp 0x100b47eb
mov ecx, 0x811c9dc5
jmp 0x100b681f
mov ecx, 0x811c9dc5
jmp 0x100b6923
mov esi, dword [esp + 0x50]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0xc]
movzx edi, byte [eax + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [eax + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [eax + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [eax + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100b67c5
cmp dword [esp + 0x4c], 0
je 0x100b681f
add edx, dword [esp + 0xc]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp dword [esp + 0x4c], esi
jne 0x100b680c
mov edx, dword [esp + 0x70]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov esi, dword [eax + ecx*4]
mov eax, dword [esp + 0x50]
cmp eax, dword [edi + 0x18]
jne 0x100b6867
cmp dword [edi + 0x1c], 0x10
jb 0x100b684f
mov eax, dword [edi + 8]
jmp 0x100b6852
lea eax, [edi + 8]
push dword [esp + 0x50]
push eax
push dword [esp + 0x14]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b6874
cmp edi, esi
je 0x100b69a4
mov edi, dword [edi + 4]
jmp 0x100b683b
add edi, 0x20
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x10184e48], edi
mov eax, dword [0x1017f608]
mov esi, dword [eax]
mov eax, dword [0x10184e4c]
vmovaps xmm1, xmmword [esp + 0x20]
vmovss xmm2, dword [esp]
vmovss xmm3, dword [esp + 0x6c]
vmovss xmm4, dword [esp + 0x74]
vmovss xmm0, dword [esp + 0x7c]
jmp 0x100b4397
mov edi, dword [esp + 0x50]
and edi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0xc]
movzx ebx, byte [eax + edx]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 1]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 2]
xor ebx, ecx
imul ecx, ebx, 0x1000193
movzx ebx, byte [eax + edx + 3]
xor ebx, ecx
imul ecx, ebx, 0x1000193
add edx, 4
cmp edi, edx
jne 0x100b68c9
cmp dword [esp + 0x4c], 0
je 0x100b6923
add edx, dword [esp + 0xc]
xor edi, edi
movzx ebx, byte [edx + edi]
xor ebx, ecx
imul ecx, ebx, 0x1000193
inc edi
cmp dword [esp + 0x4c], edi
jne 0x100b6910
mov edx, dword [esp + 0x70]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov edi, dword [eax + ecx*8 + 4]
cmp edi, dword [edx + 4]
je 0x100b69a4
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esp + 0x50]
cmp eax, dword [edi + 0x18]
jne 0x100b6967
cmp dword [edi + 0x1c], 0x10
jb 0x100b694f
mov eax, dword [edi + 8]
jmp 0x100b6952
lea eax, [edi + 8]
push dword [esp + 0x50]
push eax
push dword [esp + 0x14]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b6970
cmp edi, ebx
je 0x100b69a4
mov edi, dword [edi + 4]
jmp 0x100b693b
lea ebx, [edi + 0x20]
lea ecx, [esp + 0xc0]
call fcn.100026e0
mov dword [0x10184e48], ebx
mov ecx, dword [edi + 0x24]
vmovaps xmm1, xmmword [esp + 0x20]
vmovss xmm2, dword [esp]
vmovss xmm3, dword [esp + 0x6c]
vmovss xmm4, dword [esp + 0x74]
jmp 0x100b43b6
push 0x1016ba76
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
int3