Function at 0x100ae5c0
Capabilities:
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xffffffe0
sub esp, 0x380
mov eax, dword [0x1017f528]
xor eax, ebp
mov dword [esp + 0x368], eax
mov eax, dword [0x1017f71c]
test al, 1
je 0x100afcde
mov esi, dword [0x1017f718]
mov edi, dword [ebp + 8]
mov eax, dword [esi + 4]
cmp dword [eax + edi], 0
jle 0x100ae618
mov eax, dword [0x1017f724]
test al, 1
je 0x100afd52
mov ebx, dword [0x1017f720]
mov eax, dword [ebx + 4]
cmp byte [eax + edi], 0
je 0x100ae630
mov ecx, dword [esp + 0x368]
xor ecx, ebp
call fcn.100d7fe0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov eax, dword [0x1017f608]
cmp dword [eax], edi
je 0x100ae618
mov dword [esp + 8], ecx
lea ecx, [edi + 8]
mov eax, dword [edi + 8]
mov dword [esp + 0xc], ecx
call dword [eax + 0x24]
mov byte [esp + 0x18], al
test al, al
je 0x100ae65e
mov eax, dword [esp + 8]
cmp byte [eax + 0x15], 0
jne 0x100ae687
jmp 0x100ae618
mov eax, dword [esp + 8]
cmp byte [eax + 0x188], 0
je 0x100ae687
mov eax, dword [0x10184fc8]
test al, 1
je 0x100b00df
mov ebx, dword [0x10184fc4]
add ebx, 4
mov eax, dword [ebx]
mov byte [eax + edi], 1
mov eax, dword [0x10184e24]
test al, 1
je 0x100aff8b
mov ebx, dword [0x10184e20]
mov ecx, dword [ebx + 4]
mov esi, dword [ecx + edi]
mov edx, dword [0x1017f608]
mov ebx, dword [edx]
test al, 1
je 0x100afffb
cmp esi, dword [ecx + ebx]
mov eax, dword [esp + 8]
jne 0x100ae6c3
cmp byte [eax + 0x14], 0
je 0x100ae618
mov eax, dword [0x10184ecc]
test al, 1
je 0x100b006f
mov ebx, dword [0x10184ec8]
mov eax, dword [ebx + 4]
mov eax, dword [eax + edi]
mov dword [esp + 0x14], 0
mov cl, 1
mov dword [esp + 0x40], ecx
cmp eax, 0xffffffff
je 0x100ae745
mov ecx, dword [0x1017f618]
mov edx, dword [ecx]
push eax
call dword [edx + 0x10]
mov dword [esp + 0x20], 0
test eax, eax
je 0x100ae74d
mov ebx, eax
mov eax, dword [0x1017f5c0]
mov ecx, dword [eax + 0x40]
mov eax, dword [ecx]
mov edx, dword [eax + 8]
mov eax, dword [0x1017f704]
test al, 1
je 0x100b033c
mov esi, dword [0x1017f700]
mov eax, dword [esi + 4]
movzx eax, word [eax + ebx]
push eax
call edx
mov dword [esp + 0x20], eax
mov dword [esp + 0x40], 0
mov dword [esp + 0x14], ebx
jmp 0x100ae74d
mov dword [esp + 0x20], 0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [esp + 0x80], xmm0
lea eax, [esp + 0x80]
push eax
push edi
call fcn.100acc20
test al, al
mov edx, dword [esp + 8]
je 0x100ae618
cmp byte [edx + 0x16], 0
je 0x100ae969
vmovss xmm1, dword [esp + 0x88]
vmovss xmm0, dword [0x101298a0]
vmovss dword [esp + 4], xmm1
vaddss xmm1, xmm1, xmm0
vmovss dword [esp + 0x1c], xmm1
vmovss xmm1, dword [esp + 0x8c]
vmovss dword [esp + 0x50], xmm1
vaddss xmm0, xmm1, xmm0
vmovss dword [esp + 0x3c], xmm0
vmovss xmm1, dword [esp + 0x80]
vmovss xmm2, dword [esp + 0x84]
vmovss xmm0, dword [0x10129710]
vmovss dword [esp + 0x10], xmm1
vaddss xmm1, xmm1, xmm0
vmovss dword [esp + 0x70], xmm1
vmovss dword [esp + 0x60], xmm2
vaddss xmm0, xmm2, xmm0
vmovss dword [esp + 0x74], xmm0
mov ecx, dword [0x1017f64c]
mov eax, dword [ecx]
push 0x96000000
call dword [eax + 0x38]
mov ecx, dword [0x1017f64c]
vmovss xmm3, dword [esp + 0x74]
vaddss xmm0, xmm3, dword [esp + 0x3c]
vmovss xmm2, dword [esp + 0x70]
vaddss xmm1, xmm2, dword [esp + 0x1c]
mov eax, dword [ecx]
vcvttss2si edx, xmm0
vcvttss2si esi, xmm1
vcvttss2si edi, xmm3
vcvttss2si ebx, xmm2
push edx
push esi
push edi
push ebx
call dword [eax + 0x48]
mov eax, 0xb4828282
cmp byte [esp + 0x18], 0
jne 0x100ae898
mov ecx, dword [esp + 8]
vmovss xmm0, dword [ecx + 0x30]
vmulss xmm0, xmm0, dword [0x1012973c]
vcvttss2si eax, xmm0
movzx eax, al
vmovsd xmm0, qword [ecx + 0x34]
vbroadcastss xmm1, dword [0x1012973c]
vmulps xmm0, xmm0, xmm1
vcvttps2dq xmm0, xmm0
vpshufb xmm0, xmm0, xmmword [0x10134d40]
vpsllvd xmm0, xmm0, xmmword [0x10129960]
vmovd ecx, xmm0
or ecx, eax
vpextrd eax, xmm0, 1
or eax, ecx
or eax, 0xb4000000
mov ecx, dword [0x1017f64c]
mov edx, dword [ecx]
push eax
call dword [edx + 0x38]
mov ecx, dword [0x1017f64c]
vmovss xmm2, dword [esp + 0x60]
vaddss xmm0, xmm2, dword [esp + 0x50]
vmovss xmm3, dword [esp + 0x10]
vaddss xmm1, xmm3, dword [esp + 4]
mov eax, dword [ecx]
vcvttss2si edx, xmm0
vcvttss2si esi, xmm1
vcvttss2si edi, xmm2
vcvttss2si ebx, xmm3
push edx
push esi
push edi
push ebx
call dword [eax + 0x48]
vmovss xmm0, dword [0x1012984c]
vaddss xmm1, xmm0, dword [esp + 4]
vmovss dword [esp + 4], xmm1
vaddss xmm0, xmm0, dword [esp + 0x50]
vmovss dword [esp + 0x50], xmm0
vmovss xmm0, dword [0x101296d4]
vaddss xmm1, xmm0, dword [esp + 0x10]
vmovss dword [esp + 0x10], xmm1
vaddss xmm0, xmm0, dword [esp + 0x60]
vmovss dword [esp + 0x60], xmm0
mov ecx, dword [0x1017f64c]
mov eax, dword [ecx]
push 0x96000000
call dword [eax + 0x38]
mov ecx, dword [0x1017f64c]
vmovss xmm3, dword [esp + 0x60]
vaddss xmm0, xmm3, dword [esp + 0x50]
vmovss xmm2, dword [esp + 0x10]
vaddss xmm1, xmm2, dword [esp + 4]
mov eax, dword [ecx]
vcvttss2si edx, xmm0
vcvttss2si esi, xmm1
vcvttss2si edi, xmm3
vcvttss2si ebx, xmm2
push edx
push esi
push edi
push ebx
call dword [eax + 0x48]
mov edi, dword [ebp + 8]
mov edx, dword [esp + 8]
cmp byte [edx + 0x17], 0
je 0x100aec2c
vmovss xmm0, dword [esp + 0x8c]
vmovss dword [esp + 0x10], xmm0
vaddss xmm0, xmm0, dword [0x1012984c]
vmovss dword [esp + 0x60], xmm0
vmovss xmm0, dword [esp + 0x80]
vmovss xmm1, dword [esp + 0x84]
vmovss dword [esp + 4], xmm0
vaddss xmm0, xmm0, dword [0x10134df4]
vmovss dword [esp + 0x1c], xmm0
vmovss dword [esp + 0x50], xmm1
vaddss xmm0, xmm1, dword [0x101296d4]
vmovss dword [esp + 0x3c], xmm0
mov ecx, dword [0x1017f64c]
mov eax, dword [ecx]
push 0x96000000
call dword [eax + 0x38]
mov ecx, dword [0x1017f64c]
vmovss xmm3, dword [esp + 0x3c]
vaddss xmm0, xmm3, dword [esp + 0x60]
vmovss xmm2, dword [esp + 0x1c]
vaddss xmm1, xmm2, dword [0x101297ac]
mov eax, dword [ecx]
vcvttss2si edx, xmm0
vcvttss2si esi, xmm1
vcvttss2si edi, xmm3
vcvttss2si ebx, xmm2
push edx
push esi
push edi
push ebx
call dword [eax + 0x40]
mov dword [esp + 0x200], 0x64
mov dword [esp + 0x9c], 0
mov eax, dword [0x1017f71c]
test al, 1
je 0x100b03c2
mov ebx, dword [0x1017f718]
mov edx, dword [ebp + 8]
vmovss xmm4, dword [esp + 4]
vmovss xmm5, dword [esp + 0x50]
mov eax, dword [ebx + 4]
mov ecx, dword [eax + edx]
add eax, edx
test ecx, ecx
lea edx, [esp + 0x9c]
cmovns edx, eax
cmp ecx, 0x65
lea eax, [esp + 0x200]
cmovl eax, edx
vcvtsi2ss xmm0, xmm6, dword [eax]
vdivss xmm0, xmm0, dword [0x1012988c]
vmovss xmm3, dword [esp + 0x10]
vmulss xmm6, xmm3, xmm0
mov eax, 0xb4828282
cmp byte [esp + 0x18], 0
jne 0x100aeac2
vmovss xmm1, dword [0x10129710]
vsubss xmm1, xmm1, xmm0
vmovss xmm2, dword [0x1012973c]
vmulss xmm1, xmm1, xmm2
vcvttss2si eax, xmm1
vmulss xmm0, xmm0, xmm2
vcvttss2si ecx, xmm0
movzx eax, al
movzx ecx, cl
shl ecx, 8
add eax, ecx
add eax, 0xb4000000
vaddss xmm0, xmm4, dword [0x10132110]
vmovss dword [esp + 4], xmm0
vaddss xmm0, xmm3, xmm5
vsubss xmm0, xmm0, xmm6
vmovss dword [esp + 0x50], xmm0
mov ecx, dword [0x1017f64c]
mov edx, dword [ecx]
push eax
vmovss dword [esp + 0x14], xmm6
call dword [edx + 0x38]
mov ecx, dword [0x1017f64c]
vmovss xmm3, dword [esp + 0x50]
vaddss xmm0, xmm3, dword [esp + 0x10]
vmovss xmm2, dword [esp + 4]
vaddss xmm1, xmm2, dword [0x1012984c]
mov eax, dword [ecx]
vcvttss2si edx, xmm0
vcvttss2si esi, xmm1
vcvttss2si edi, xmm3
vcvttss2si ebx, xmm2
push edx
push esi
push edi
push ebx
call dword [eax + 0x40]
mov eax, dword [0x1017f71c]
test al, 1
je 0x100b0432
mov ebx, dword [0x1017f718]
mov edi, dword [ebp + 8]
mov edx, dword [esp + 8]
mov eax, dword [ebx + 4]
cmp dword [eax + edi], 0x63
jg 0x100aec2c
cmp byte [esp + 0x18], 0
mov ecx, 0xb4828282
mov ebx, 0xb4ffffff
cmovne ebx, ecx
mov ecx, dword [0x1017f71c]
test cl, 1
je 0x100b0982
add eax, edi
lea esi, [esp + 0xa0]
push dword [eax]
push esi
call fcn.10018ee0
add esp, 8
cmp dword [esp + 0xb4], 0x10
jb 0x100aeb96
mov esi, dword [esp + 0xa0]
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + 0x230]
vmovss xmm0, dword [esp + 0x50]
vaddss xmm0, xmm0, dword [0x101317bc]
sub esp, 0x1c
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], esi
mov dword [esp + 8], ecx
vmovss dword [esp + 4], xmm0
vmovss xmm0, dword [esp + 0x20]
vmovss dword [esp], xmm0
mov dword [esp + 0x18], 1
call fcn.100ac930
mov eax, dword [esp + 0xb4]
cmp eax, 0x10
jb 0x100aec28
mov ecx, dword [esp + 0xa0]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x100aec1e
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x100b0911
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.100d7fd2
add esp, 8
mov edx, dword [esp + 8]
cmp byte [edx + 0x18], 0
je 0x100aeddf
mov ebx, dword [0x1017f614]
mov ecx, dword [esp + 0xc]
mov eax, dword [ecx]
call dword [eax + 0x28]
vxorps xmm0, xmm0, xmm0
vmovups ymmword [esp + 0x295], ymm0
vmovaps ymmword [esp + 0x280], ymm0
vmovaps ymmword [esp + 0x260], ymm0
vmovaps ymmword [esp + 0x240], ymm0
vmovaps ymmword [esp + 0x220], ymm0
vmovaps ymmword [esp + 0x200], ymm0
vmovups ymmword [esp + 0x2b8], ymm0
vmovups ymmword [esp + 0x2d8], ymm0
vmovups ymmword [esp + 0x2f8], ymm0
vmovups ymmword [esp + 0x318], ymm0
mov dword [esp + 0x33a], 0
mov dword [esp + 0x336], 0
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [esp + 0x340], xmm0
mov byte [esp + 0x350], 0
mov edx, dword [ebx]
lea esi, [esp + 0x200]
mov ecx, ebx
push esi
push eax
vzeroupper
call dword [edx + 0x20]
test al, al
je 0x100aeddb
mov ebx, edi
lea eax, [esp + 0xa0]
push 0x158
push esi
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov byte [esp + 0x1f8], 1
mov esi, 0xb4828282
cmp byte [esp + 0x18], 0
jne 0x100aed69
mov ecx, dword [esp + 8]
vmovss xmm0, dword [ecx + 0x3c]
vmulss xmm0, xmm0, dword [0x1012973c]
vcvttss2si eax, xmm0
movzx eax, al
vmovsd xmm0, qword [ecx + 0x40]
vbroadcastss xmm1, dword [0x1012973c]
vmulps xmm0, xmm0, xmm1
vcvttps2dq xmm0, xmm0
vpshufb xmm0, xmm0, xmmword [0x10134d40]
vpsllvd xmm0, xmm0, xmmword [0x10129960]
vmovd ecx, xmm0
or ecx, eax
vpextrd esi, xmm0, 1
or esi, ecx
or esi, 0xb4000000
lea edi, [esp + 0xb0]
push edi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + 0x220]
vmovss xmm0, dword [esp + 0x84]
vmovss xmm1, dword [esp + 0x88]
vmulss xmm1, xmm1, dword [0x10129738]
vaddss xmm1, xmm1, dword [esp + 0x80]
vaddss xmm0, xmm0, dword [0x10134df8]
sub esp, 0x1c
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], edi
mov dword [esp + 8], ecx
vmovss dword [esp + 4], xmm0
vmovss dword [esp], xmm1
mov dword [esp + 0x18], 1
call fcn.100ac930
mov edi, ebx
mov edx, dword [esp + 8]
mov dword [esp + 0xc], 0
mov ebx, dword [esp + 0x20]
test ebx, ebx
je 0x100af0cf
cmp byte [edx + 0x1c], 0
je 0x100af0cf
mov eax, dword [ebx + 0xc8]
test eax, eax
je 0x100af0cf
cmp eax, 6
jg 0x100af0cf
cmp dword [ebx + 0x14], 0xffffffff
je 0x100af0cf
mov esi, dword [edi + 0x2980]
vmovss xmm0, dword [esi + 0x58]
vxorps xmm1, xmm1, xmm1
vucomiss xmm0, xmm1
jne 0x100aee35
jnp 0x100aee68
mov eax, dword [edi + 0x294c]
test eax, eax
je 0x100aee68
mov edx, dword [eax]
test edx, edx
je 0x100aee68
mov eax, dword [0x1017f5c0]
mov ecx, edi
push dword [esi + 0x50]
call dword [eax + 0x1c]
cmp eax, 0x3c7
jne 0x100aee68
vmovss xmm0, dword [esi + 0x64]
vmovss dword [esp + 4], xmm0
mov bl, 1
jmp 0x100aee9c
mov eax, dword [0x1017f744]
test al, 1
je 0x100b123c
mov ebx, dword [0x1017f740]
mov eax, dword [ebx + 4]
mov ecx, dword [esp + 0x14]
vcvtsi2ss xmm0, xmm7, dword [eax + ecx]
mov eax, dword [esp + 0x20]
vcvtsi2ss xmm1, xmm7, dword [eax + 0x14]
vdivss xmm0, xmm0, xmm1
vmovss dword [esp + 4], xmm0
xor ebx, ebx
vmovss xmm0, dword [esp + 0x88]
vmovss dword [esp + 0x10], xmm0
vaddss xmm0, xmm0, dword [0x1012984c]
vmovss dword [esp + 0xa0], xmm0
mov dword [esp + 0xa4], 0x40800000
vmovss xmm1, dword [esp + 0x80]
vmovss xmm0, dword [esp + 0x84]
vaddss xmm0, xmm0, dword [esp + 0x8c]
vmovaps xmmword [esp + 0x50], xmm0
vmovaps xmmword [esp + 0x60], xmm1
vinsertps xmm0, xmm1, xmm0, 0x10
vaddps xmm0, xmm0, xmmword [0x10134e00]
vmovlps qword [esp + 0x200], xmm0
lea eax, [esp + 0xa0]
lea esi, [esp + 0x200]
push 0x96000000
push eax
push esi
call fcn.100ade30
mov eax, 0xb4828282
cmp byte [esp + 0x18], 0
jne 0x100aef7e
mov ecx, dword [esp + 8]
vmovss xmm0, dword [ecx + 0x54]
vmulss xmm0, xmm0, dword [0x1012973c]
vcvttss2si eax, xmm0
movzx eax, al
vmovsd xmm0, qword [ecx + 0x58]
vbroadcastss xmm1, dword [0x1012973c]
vmulps xmm0, xmm0, xmm1
vcvttps2dq xmm0, xmm0
vpshufb xmm0, xmm0, xmmword [0x10134d40]
vpsllvd xmm0, xmm0, xmmword [0x10129960]
vmovd ecx, xmm0
or ecx, eax
vpextrd eax, xmm0, 1
or eax, ecx
or eax, 0xb4000000
vmovss xmm0, dword [esp + 0x10]
vmulss xmm0, xmm0, dword [esp + 4]
vmovss dword [esp + 0xa0], xmm0
mov dword [esp + 0xa4], 0x40000000
vmovaps xmm0, xmmword [esp + 0x50]
vaddss xmm0, xmm0, dword [0x1012979c]
vmovaps xmm1, xmmword [esp + 0x60]
vmovss dword [esp + 0x200], xmm1
vmovss dword [esp + 0x204], xmm0
push eax
lea eax, [esp + 0xa4]
push eax
push esi
call fcn.100ade30
mov dword [esp + 0xc], 4
test bl, bl
je 0x100aefe8
mov edx, dword [esp + 8]
jmp 0x100af0cb
mov eax, dword [0x1017f744]
test al, 1
mov edx, dword [esp + 8]
je 0x100b146c
mov ebx, dword [0x1017f740]
mov eax, dword [ebx + 4]
mov ecx, dword [esp + 0x14]
mov ecx, dword [eax + ecx]
mov ebx, dword [esp + 0x20]
cmp ecx, dword [ebx + 0x14]
jge 0x100af0cf
cmp byte [esp + 0x18], 0
mov ecx, 0xb4828282
mov edx, 0xb4ffffff
cmovne edx, ecx
mov ecx, dword [0x1017f744]
test cl, 1
mov dword [esp + 0x1c], edx
je 0x100b15bc
add eax, dword [esp + 0x14]
push dword [eax]
lea esi, [esp + 0xa4]
push esi
call fcn.10018ee0
add esp, 8
cmp dword [esp + 0xb4], 0x10
jb 0x100af062
mov esi, dword [esp + 0xa0]
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ebx, dword [esp + 8]
mov ecx, dword [ebx + 0x230]
vmovss xmm0, dword [esp + 4]
vmovaps xmm1, xmmword [esp + 0x60]
vfmadd132ss xmm0, xmm1, dword [esp + 0x10]
sub esp, 0x1c
mov edx, dword [esp + 0x38]
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], esi
mov dword [esp + 8], ecx
vmovaps xmm1, xmmword [esp + 0x6c]
vmovss dword [esp + 4], xmm1
vmovss dword [esp], xmm0
mov dword [esp + 0x18], 0
call fcn.100ac930
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov edx, ebx
mov ebx, dword [esp + 0x20]
cmp byte [edx + 0x1d], 0
je 0x100af2c1
mov eax, dword [0x10184dfc]
test al, 1
je 0x100b04a2
mov ebx, dword [0x10184df8]
mov esi, dword [ebx + 4]
mov ecx, dword [0x1017f608]
mov ebx, dword [ecx]
mov ecx, esi
test al, 1
je 0x100b0512
vmovss xmm0, dword [ecx + ebx + 8]
vsubss xmm0, xmm0, dword [edi + esi + 8]
vmovss xmm1, dword [ecx + ebx]
vmovss xmm2, dword [ecx + ebx + 4]
vsubss xmm2, xmm2, dword [edi + esi + 4]
vsubss xmm1, xmm1, dword [edi + esi]
vmulss xmm2, xmm2, xmm2
vfmadd231ss xmm2, xmm1, xmm1
vfmadd231ss xmm2, xmm0, xmm0
vcvtss2sd xmm0, xmm2, xmm2
vxorps xmm1, xmm1, xmm1
vucomisd xmm0, xmm1
jb 0x100af145
vsqrtsd xmm0, xmm0, xmm0
jmp 0x100af15f
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 + 0x78]
vmovsd xmm0, qword [esp + 0x78]
vcvtsd2ss xmm0, xmm0, xmm0
vmulss xmm0, xmm0, dword [0x10134e10]
vmulss xmm0, xmm0, dword [0x10134e14]
vcvttss2si eax, xmm0
cmp byte [esp + 0x18], 0
mov ecx, 0xb4828282
mov esi, 0xb4ffffff
cmovne esi, ecx
mov dword [esp + 0x204], eax
mov dword [esp + 0x200], 0x10000000
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [esp + 0xa0], xmm0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0xf
lea eax, [esp + 0x200]
lea ebx, [esp + 0xa0]
lea ecx, [esp + 0x9c]
push eax
push 1
push 5
push str._FT
push ebx
push ecx
call fcn.1009acf0
add esp, 0x18
cmp dword [esp + 0xb4], 0x10
jb 0x100af1f8
mov ebx, dword [esp + 0xa0]
push ebx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + 0x230]
vmovss xmm0, dword [esp + 0x84]
vmovss xmm1, dword [esp + 0x88]
vmulss xmm1, xmm1, dword [0x10129738]
vaddss xmm1, xmm1, dword [esp + 0x80]
vaddss xmm0, xmm0, dword [esp + 0x8c]
vaddss xmm0, xmm0, dword [0x1012984c]
vcvtsi2ss xmm2, xmm7, dword [esp + 0xc]
vaddss xmm0, xmm0, xmm2
sub esp, 0x1c
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 8], ecx
vmovss dword [esp + 4], xmm0
vmovss dword [esp], xmm1
mov dword [esp + 0x18], 1
call fcn.100ac930
mov eax, dword [esp + 0xb4]
cmp eax, 0x10
mov ebx, dword [esp + 0x20]
jb 0x100af2b8
mov ecx, dword [esp + 0xa0]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x100af2ae
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x100b0911
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.100d7fd2
add esp, 8
add dword [esp + 0xc], 8
mov edx, dword [esp + 8]
test ebx, ebx
je 0x100af588
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x100af588
cmp byte [edx + 0x1a], 0
je 0x100af588
mov ecx, dword [0x1017f650]
mov edx, dword [ecx]
push eax
call dword [edx + 0x30]
mov esi, eax
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_wcslen
add esp, 4
test eax, eax
je 0x100af386
mov edi, eax
sub esp, 0x20
vxorps xmm0, xmm0, xmm0
vmovups xmmword [esp + 0x10], xmm0
mov dword [esp + 0xc], eax
mov dword [esp + 8], esi
mov dword [esp + 4], 0
mov dword [esp], 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov ebx, eax
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [esp + 0xa0], xmm0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0xf
test eax, eax
je 0x100af3ae
cmp ebx, 0xf
jbe 0x100af3b8
sub esp, 0x10
movzx eax, byte [esp + 0x210]
mov byte [esp + 4], al
mov dword [esp + 8], ebx
mov dword [esp], ebx
mov dword [esp + 0xc], 0
lea ecx, [esp + 0xb0]
call fcn.1000d380
jmp 0x100af3da
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [esp + 0xa0], xmm0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0xf
jmp 0x100af446
mov byte [esp + 0xa0], 0
jmp 0x100af3ed
mov dword [esp + 0xb0], ebx
lea eax, [esp + 0xa0]
push ebx
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov byte [esp + ebx + 0xa0], 0
cmp dword [esp + 0xb4], 0x10
jb 0x100af3ed
mov eax, dword [esp + 0xa0]
jmp 0x100af3f4
lea eax, [esp + 0xa0]
push 0
push 0
push ebx
push eax
push edi
push esi
push 0
push 0xfde9
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
mov esi, dword [esp + 0xb0]
cmp dword [esp + 0xb4], 0x10
jb 0x100af423
mov ebx, dword [esp + 0xa0]
jmp 0x100af42a
lea ebx, [esp + 0xa0]
test esi, esi
je 0x100af446
xor edi, edi
movsx eax, byte [ebx + edi]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_toupper]
add esp, 4
mov byte [ebx + edi], al
inc edi
cmp esi, edi
jne 0x100af430
mov esi, 0xb4828282
cmp byte [esp + 0x18], 0
mov ecx, dword [esp + 8]
jne 0x100af4a6
vmovss xmm0, dword [ecx + 0x48]
vmulss xmm0, xmm0, dword [0x1012973c]
vcvttss2si eax, xmm0
movzx eax, al
vmovsd xmm0, qword [ecx + 0x4c]
vbroadcastss xmm1, dword [0x1012973c]
vmulps xmm0, xmm0, xmm1
vcvttps2dq xmm0, xmm0
vpshufb xmm0, xmm0, xmmword [0x10134d40]
vpsllvd xmm0, xmm0, xmmword [0x10129960]
vmovd ecx, xmm0
or ecx, eax
vpextrd esi, xmm0, 1
or esi, ecx
or esi, 0xb4000000
cmp dword [esp + 0xb4], 0x10
mov edi, dword [ebp + 8]
jb 0x100af4bc
mov ebx, dword [esp + 0xa0]
jmp 0x100af4c3
lea ebx, [esp + 0xa0]
push ebx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + 0x230]
vmovss xmm0, dword [esp + 0x84]
vmovss xmm1, dword [esp + 0x88]
vmulss xmm1, xmm1, dword [0x10129738]
vaddss xmm1, xmm1, dword [esp + 0x80]
vaddss xmm0, xmm0, dword [esp + 0x8c]
vaddss xmm0, xmm0, dword [0x1012984c]
vcvtsi2ss xmm2, xmm7, dword [esp + 0xc]
vaddss xmm0, xmm0, xmm2
sub esp, 0x1c
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 8], ecx
vmovss dword [esp + 4], xmm0
vmovss dword [esp], xmm1
mov dword [esp + 0x18], 1
call fcn.100ac930
mov eax, dword [esp + 0xb4]
cmp eax, 0x10
jb 0x100af57f
mov ecx, dword [esp + 0xa0]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x100af575
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x100b0911
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.100d7fd2
add esp, 8
add dword [esp + 0xc], 8
mov edx, dword [esp + 8]
cmp byte [edx + 0x1b], 0
sete al
mov ecx, dword [esp + 0x40]
or cl, al
jne 0x100af6a2
mov eax, 0xb4828282
cmp byte [esp + 0x18], 0
jne 0x100af5f6
vmovss xmm0, dword [edx + 0x48]
vmulss xmm0, xmm0, dword [0x1012973c]
vcvttss2si eax, xmm0
movzx eax, al
vmovsd xmm0, qword [edx + 0x4c]
vbroadcastss xmm1, dword [0x1012973c]
vmulps xmm0, xmm0, xmm1
vcvttps2dq xmm0, xmm0
vpshufb xmm0, xmm0, xmmword [0x10134d40]
vpsllvd xmm0, xmm0, xmmword [0x10129960]
vmovd ecx, xmm0
or ecx, eax
vpextrd eax, xmm0, 1
or eax, ecx
or eax, 0xb4000000
mov dword [esp + 0x20], eax
mov eax, dword [0x1017f704]
test al, 1
je 0x100b07c5
mov ebx, dword [0x1017f700]
mov eax, dword [ebx + 4]
mov ecx, dword [esp + 0x14]
movzx eax, word [eax + ecx]
push eax
call fcn.100adbd0
mov ebx, eax
push eax
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov esi, dword [esp + 8]
mov ecx, dword [esi + 0x234]
vmovss xmm0, dword [esp + 0x84]
vmovss xmm1, dword [esp + 0x88]
vmulss xmm1, xmm1, dword [0x10129738]
vaddss xmm1, xmm1, dword [esp + 0x80]
vaddss xmm0, xmm0, dword [esp + 0x8c]
vaddss xmm0, xmm0, dword [0x1012984c]
vcvtsi2ss xmm2, xmm7, dword [esp + 0xc]
vaddss xmm0, xmm0, xmm2
sub esp, 0x1c
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 8], ecx
vmovss dword [esp + 4], xmm0
vmovss dword [esp], xmm1
mov dword [esp + 0x18], 1
call fcn.100ac930
mov edx, esi
cmp byte [edx + 0x22], 0
je 0x100af7f2
cmp byte [esp + 0x18], 0
mov eax, 0xb4828282
mov ebx, 0xb43cc896
cmovne ebx, eax
mov eax, dword [0x10184fd0]
test al, 1
je 0x100b0586
mov esi, dword [0x10184fcc]
mov eax, dword [esi + 4]
mov eax, dword [eax + edi]
mov dword [esp + 0x204], eax
mov dword [esp + 0x200], 0x10000000
vxorps xmm0, xmm0, xmm0
vmovaps xmmword [esp + 0xa0], xmm0
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0xf
lea eax, [esp + 0x200]
lea esi, [esp + 0xa0]
lea ecx, [esp + 0x9c]
push eax
push 1
push 3
push 0x1016b584
push esi
push ecx
call fcn.1009acf0
add esp, 0x18
cmp dword [esp + 0xb4], 0x10
jb 0x100af746
mov esi, dword [esp + 0xa0]
push esi
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
mov ecx, dword [esp + 8]
mov ecx, dword [ecx + 0x230]
vmovss xmm0, dword [esp + 0x80]
vmovss xmm1, dword [esp + 0x84]
vaddss xmm0, xmm0, dword [esp + 0x88]
vaddss xmm0, xmm0, dword [0x1012984c]
sub esp, 0x1c
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], eax
mov dword [esp + 0xc], esi
mov dword [esp + 8], ecx
vmovss dword [esp + 4], xmm1
vmovss dword [esp], xmm0
mov dword [esp + 0x18], 0
call fcn.100ac930
mov eax, dword [esp + 0xb4]
cmp eax, 0x10
jb 0x100af7e7
mov ecx, dword [esp + 0xa0]
lea esi, [eax + 1]
cmp esi, 0x1000
jb 0x100af7dd
mov edx, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edx
cmp ecx, 0x20
jae 0x100b0911
add eax, 0x24
mov esi, eax
mov ecx, edx
push esi
push ecx
call fcn.100d7fd2
add esp, 8
mov ebx, 9
mov edx, dword [esp + 8]
jmp 0x100af7f4
xor ebx, ebx
cmp byte [edx + 0x19], 0
je 0x100af9e7
mov eax, dword [0x10184edc]
test al, 1
je 0x100b05fa
mov esi, dword [0x10184ed8]
mov eax, dword [esi + 4]
cmp dword [eax + edi], 0
je 0x100af8ce
mov eax, dword [0x10184ee4]
test al, 1
mov dword [esp + 0xc], ebx
je 0x100b0917
mov esi, dword [0x10184ee0]
mov eax, dword [esi + 4]
xor edx, edx
cmp byte [eax + edi], 0
sete dl
mov ecx, 0x1016f332
mov eax, 0x1016f314
cmove eax, ecx
cmp byte [esp + 0x18], 0
mov esi, 0xb4828282
mov ecx, 0xb4ffffff
cmovne ecx, esi
mov esi, 2
sub esi, edx
vmovss xmm0, dword [esp + 0x80]
vaddss xmm0, xmm0, dword [esp + 0x88]
mov edx, dword [esp + 8]
mov edx, dword [edx + 0x230]
mov ebx, dword [esp + 0xc]
vcvtsi2ss xmm1, xmm7, ebx
vaddss xmm0, xmm0, dword [0x1012984c]
vaddss xmm1, xmm1, dword [esp + 0x84]
sub esp, 0x1c
mov dword [esp + 0x14], ecx
mov dword [esp + 0xc], eax
mov dword [esp + 8], edx
vmovss dword [esp + 4], xmm1
vmovss dword [esp], xmm0
mov dword [esp + 0x10], esi
mov dword [esp + 0x18], 0
call fcn.100ac930
mov edx, dword [esp + 8]
add ebx, 9
mov eax, dword [0x10184e5c]
test al, 1
je 0x100b066e
mov esi, dword [0x10184e58]
mov eax, dword [esi + 4]
cmp byte [eax + edi], 0
je 0x100af95f
cmp byte [esp + 0x18], 0
mov eax, 0xb4828282
mov ecx, 0xb4e1b43c
cmovne ecx, eax
vmovss xmm0, dword [esp + 0x80]
vaddss xmm0, xmm0, dword [esp + 0x88]
mov eax, dword [edx + 0x230]
vcvtsi2ss xmm1, xmm7, ebx
vaddss xmm0, xmm0, dword [0x1012984c]
vaddss xmm1, xmm1, dword [esp + 0x84]
sub esp, 0x1c
mov dword [esp + 0x14], ecx
mov dword [esp + 8], eax
vmovss dword [esp + 4], xmm1
vmovss dword [esp], xmm0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 4
mov dword [esp + 0xc], str.ZOOM
call fcn.100ac930
add ebx, 9
mov eax, dword [0x1017f5c0]
mov ecx, edi
call dword [eax + pe_nt_image_headers32]
test al, al
mov edx, dword [esp + 8]
je 0x100af9e7
cmp byte [esp + 0x18], 0
mov eax, 0xb4828282
mov ecx, 0xb40000ff
cmovne ecx, eax
vmovss xmm0, dword [esp + 0x80]
vaddss xmm0, xmm0, dword [esp + 0x88]
mov eax, dword [edx + 0x230]
vcvtsi2ss xmm1, xmm7, ebx
vaddss xmm0, xmm0, dword [0x1012984c]
vaddss xmm1, xmm1, dword [esp + 0x84]
sub esp, 0x1c
mov dword [esp + 0x14], ecx
mov dword [esp + 8], eax
vmovss dword [esp + 4], xmm1
vmovss dword [esp], xmm0
mov dword [esp + 0x18], 0
mov dword [esp + 0x10], 1
mov dword [esp + 0xc], 0x1016fa76
call fcn.100ac930
mov edx, dword [esp + 8]
cmp byte [edx + 0x23], 0
sete al
or byte [esp + 0x18], al
jne 0x100ae618
mov eax, dword [edi + 0x294c]
mov dword [esp + 0x18], eax
test eax, eax
je 0x100ae618
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
test eax, eax
je 0x100ae618
cmp dword [eax + 0x9c], 0
je 0x100ae618
vmovss xmm0, dword [0x1012973c]
vmulss xmm1, xmm0, dword [edx + 0x7c]
vcvttss2si ecx, xmm1
vmulss xmm1, xmm0, dword [edx + 0x80]
mov esi, edx
vcvttss2si edx, xmm1
movzx ecx, cl
movzx edx, dl
shl edx, 8
or edx, ecx
vmulss xmm0, xmm0, dword [esi + 0x84]
vcvttss2si ecx, xmm0
movzx ecx, cl
shl ecx, 0x10
add ecx, edx
add ecx, 0xb4000000
mov dword [esp + 4], ecx
xor ecx, ecx
mov edx, 0x2c
mov esi, 4
vbroadcastss xmm0, dword [0x10134d30]
vmovaps xmmword [esp + 0x50], xmm0
jmp 0x100afb32
vbroadcastss xmm1, xmm1
vdivps xmm0, xmm0, xmm1
vmovsd xmm1, qword [eax + 8]
vbroadcastss xmm2, dword [0x10129738]
vmulps xmm3, xmm1, xmm2
vmulps xmm0, xmm0, xmm1
vmulps xmm0, xmm0, xmm2
vaddps xmm1, xmm3, xmm0
vsubps xmm0, xmm3, xmm0
vblendps xmm0, xmm1, xmm0, 2
vmovaps xmmword [esp + 0x40], xmm0
mov ecx, dword [0x1017f64c]
mov eax, dword [ecx]
push dword [esp + 4]
call dword [eax + 0x38]
mov ecx, dword [0x1017f64c]
vmovaps xmm1, xmmword [esp + 0x40]
vmovshdup xmm0, xmm1
vcvttss2si edx, xmm0
mov eax, dword [ecx]
mov dword [esp + 0x14], eax
vcvttss2si edi, xmm1
vmovaps xmm1, xmmword [esp + 0x20]
vmovshdup xmm0, xmm1
vcvttss2si ebx, xmm0
vcvttss2si eax, xmm1
push edx
push edi
push ebx
push eax
mov eax, dword [esp + 0x24]
call dword [eax + 0x4c]
mov eax, dword [esp + 0x18]
mov eax, dword [eax]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 8]
inc ecx
add edx, 0x30
add esi, 0xd8
cmp ecx, dword [eax + 0x9c]
jae 0x100ae618
mov ebx, dword [eax + 0xa0]
add ebx, eax
je 0x100afb1c
test byte [ebx + esi + 0x9d], 1
je 0x100afb1c
cmp dword [ebx + esi], 0xffffffff
je 0x100afb1c
mov dword [esp + 0xc], ecx
mov ecx, dword [0x1017f614]
mov eax, dword [ecx]
mov dword [esp + 8], edx
call dword [eax + 0x94]
mov edi, eax
call fcn.10021450
mov edx, dword [esp + 8]
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 0x2910]
vmovups xmm0, xmmword [edi]
vmovups xmm1, xmmword [edi + 4]
vmovups xmm2, xmmword [edi + 8]
vmovups xmm3, xmmword [edi + 0xc]
vbroadcastss xmm4, dword [ecx + edx - 0x10]
vinsertps xmm1, xmm1, dword [edi + 0x14], 0x10
vinsertps xmm0, xmm0, dword [edi + 0x10], 0x10
vmulps xmm1, xmm4, xmm1
vbroadcastss xmm5, dword [ecx + edx - 0x20]
vinsertps xmm2, xmm2, dword [edi + 0x18], 0x10
vfmadd213ps xmm0, xmm5, xmm1
vbroadcastss xmm1, dword [ecx + edx]
vinsertps xmm3, xmm3, dword [edi + 0x1c], 0x10
vfmadd213ps xmm2, xmm1, xmm0
vaddps xmm0, xmm3, xmm2
vmulss xmm2, xmm4, dword [edi + 0x34]
vfmadd231ss xmm2, xmm5, dword [edi + 0x30]
vfmadd231ss xmm2, xmm1, dword [edi + 0x38]
vaddss xmm1, xmm2, dword [edi + 0x3c]
vmovss xmm2, dword [0x10134d2c]
vucomiss xmm2, xmm1
jbe 0x100afbf7
vmulps xmm0, xmm0, xmmword [esp + 0x50]
jmp 0x100afc28
vbroadcastss xmm1, xmm1
vdivps xmm0, xmm0, xmm1
vmovsd xmm1, qword [eax + 8]
vbroadcastss xmm2, dword [0x10129738]
vmulps xmm3, xmm1, xmm2
vmulps xmm0, xmm0, xmm1
vmulps xmm0, xmm0, xmm2
vaddps xmm1, xmm3, xmm0
vsubps xmm0, xmm3, xmm0
vblendps xmm0, xmm1, xmm0, 2
vmovaps xmmword [esp + 0x20], xmm0
mov ecx, dword [0x1017f614]
mov eax, dword [ecx]
call dword [eax + 0x94]
mov edi, eax
call fcn.10021450
mov ecx, dword [ebp + 8]
mov ecx, dword [ecx + 0x2910]
mov edx, dword [ebx + esi]
lea edx, [edx + edx*2]
shl edx, 4
vbroadcastss xmm0, dword [ecx + edx + 0x1c]
vbroadcastss xmm2, dword [ecx + edx + 0xc]
vbroadcastss xmm3, dword [ecx + edx + 0x2c]
vmovups xmm1, xmmword [edi]
vmovups xmm4, xmmword [edi + 4]
vmovups xmm5, xmmword [edi + 8]
vmovups xmm6, xmmword [edi + 0xc]
vinsertps xmm4, xmm4, dword [edi + 0x14], 0x10
vinsertps xmm7, xmm1, dword [edi + 0x10], 0x10
vinsertps xmm5, xmm5, dword [edi + 0x18], 0x10
vinsertps xmm6, xmm6, dword [edi + 0x1c], 0x10
vmulss xmm1, xmm0, dword [edi + 0x34]
vfmadd231ss xmm1, xmm2, dword [edi + 0x30]
vfmadd231ss xmm1, xmm3, dword [edi + 0x38]
vaddss xmm1, xmm1, dword [edi + 0x3c]
vmulps xmm0, xmm0, xmm4
vfmadd213ps xmm7, xmm2, xmm0
vfmadd213ps xmm5, xmm3, xmm7
vaddps xmm0, xmm6, xmm5
vmovss xmm2, dword [0x10134d2c]
vucomiss xmm2, xmm1
jbe 0x100afa8d
vmulps xmm0, xmm0, xmmword [esp + 0x50]
jmp 0x100afabe
mov dword [esp + 8], ecx
or eax, 1
mov dword [0x1017f71c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x20], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0xc], ecx
push str.CBasePlayer__m_iHealth
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x18], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100afd28
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xc], eax
cmp dword [esp + 0x18], 0
je 0x100afdc6
mov eax, dword [esp + 0x18]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100afdcd
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100afe19
mov dword [esp + 8], ecx
or eax, 1
mov dword [0x1017f724], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x20], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0xc], ecx
push str.CBasePlayer__m_lifeState
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x18], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100afd9c
mov eax, dword [esp + 0xa0]
mov dword [esp + 0xc], eax
cmp dword [esp + 0x18], 0
je 0x100afea7
mov eax, dword [esp + 0x18]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100afeae
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100afefa
mov ecx, 0x811c9dc5
jmp 0x100afe34
mov esi, dword [esp + 0x18]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0xc]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100afddf
test eax, eax
je 0x100afe34
add edx, dword [esp + 0xc]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100afe23
mov edx, dword [esp + 0x20]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
cmp esi, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov ebx, dword [eax + ecx*4]
mov eax, dword [esp + 0x18]
cmp eax, dword [esi + 0x18]
jne 0x100afe7c
cmp dword [esi + 0x1c], 0x10
jb 0x100afe64
mov eax, dword [esi + 8]
jmp 0x100afe67
lea eax, [esi + 8]
push dword [esp + 0x18]
push eax
push dword [esp + 0x14]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100afe89
cmp esi, ebx
je 0x100b17ea
mov esi, dword [esi + 4]
jmp 0x100afe50
add esi, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x1017f718], esi
mov ecx, dword [esp + 8]
jmp 0x100ae5f0
mov ecx, 0x811c9dc5
jmp 0x100aff15
mov esi, dword [esp + 0x18]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0xc]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100afec0
test eax, eax
je 0x100aff15
add edx, dword [esp + 0xc]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100aff04
mov edx, dword [esp + 0x20]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov esi, dword [eax + ecx*4]
mov eax, dword [esp + 0x18]
cmp eax, dword [ebx + 0x18]
jne 0x100aff5d
cmp dword [ebx + 0x1c], 0x10
jb 0x100aff45
mov eax, dword [ebx + 8]
jmp 0x100aff48
lea eax, [ebx + 8]
push dword [esp + 0x18]
push eax
push dword [esp + 0x14]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100aff6a
cmp ebx, esi
je 0x100b17ea
mov ebx, dword [ebx + 4]
jmp 0x100aff31
add ebx, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x1017f720], ebx
mov edi, dword [ebp + 8]
mov ecx, dword [esp + 8]
jmp 0x100ae60f
or eax, 1
mov dword [0x10184e24], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x14], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x40], ecx
push str.CBaseEntity__m_iTeamNum
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x20], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100affd1
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x40], eax
cmp dword [esp + 0x20], 0
je 0x100b014f
mov eax, dword [esp + 0x20]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100b0160
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b01ac
or eax, 1
mov dword [0x10184e24], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x50], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x14], ecx
push str.CBaseEntity__m_iTeamNum
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x20], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b0041
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x14], eax
cmp dword [esp + 0x20], 0
je 0x100b0156
mov ecx, dword [esp + 0x20]
lea eax, [ecx - 1]
and ecx, 3
mov dword [esp + 0x40], ecx
cmp eax, 3
jae 0x100b023e
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0290
or eax, 1
mov dword [0x10184ecc], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x14], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x40], ecx
push str.CBaseCombatCharacter__m_hActiveWeapon
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x20], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b00b5
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x40], eax
cmp dword [esp + 0x20], 0
je 0x100b03b8
mov eax, dword [esp + 0x20]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100b06e2
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b072e
or eax, 1
mov dword [0x10184fc8], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x14], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x40], ecx
push str.CBaseEntity__m_bSpotted
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x20], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b0125
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x40], eax
cmp dword [esp + 0x20], 0
je 0x100b07bb
mov eax, dword [esp + 0x20]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100b0835
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0881
mov ecx, 0x811c9dc5
jmp 0x100b01c7
mov ecx, 0x811c9dc5
jmp 0x100b02b0
mov esi, dword [esp + 0x20]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0x40]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100b0172
test eax, eax
je 0x100b01c7
add edx, dword [esp + 0x40]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100b01b6
mov edx, dword [esp + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov esi, dword [eax + ecx*4]
mov eax, dword [esp + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x100b020f
cmp dword [ebx + 0x1c], 0x10
jb 0x100b01f7
mov eax, dword [ebx + 8]
jmp 0x100b01fa
lea eax, [ebx + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 0x48]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b021c
cmp ebx, esi
je 0x100b17ea
mov ebx, dword [ebx + 4]
jmp 0x100b01e3
add ebx, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x10184e20], ebx
mov eax, dword [0x10184e24]
mov edi, dword [ebp + 8]
jmp 0x100ae69a
mov eax, dword [esp + 0x20]
and eax, 0xfffffffc
mov dword [esp + 4], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x14]
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 dword [esp + 4], edx
jne 0x100b0254
cmp dword [esp + 0x40], 0
je 0x100b02b0
add edx, dword [esp + 0x14]
xor eax, eax
movzx edi, byte [edx + eax]
xor edi, ecx
imul ecx, edi, 0x1000193
inc eax
cmp dword [esp + 0x40], eax
jne 0x100b029d
mov edx, dword [esp + 0x50]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov dword [esp + 0x40], eax
mov eax, dword [eax + ecx*8 + 4]
cmp eax, dword [edx + 4]
je 0x100b17ea
mov edi, eax
add ecx, ecx
mov eax, dword [esp + 0x40]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x20]
cmp eax, dword [edi + 0x18]
jne 0x100b0306
cmp dword [edi + 0x1c], 0x10
jb 0x100b02ee
mov eax, dword [edi + 8]
jmp 0x100b02f1
lea eax, [edi + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 0x1c]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b0315
cmp edi, dword [esp + 0x40]
je 0x100b17ea
mov edi, dword [edi + 4]
jmp 0x100b02da
lea eax, [edi + 0x20]
mov dword [esp + 0x20], eax
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov eax, dword [esp + 0x20]
mov dword [0x10184e20], eax
mov ecx, dword [edi + 0x24]
mov edi, dword [ebp + 8]
jmp 0x100ae6b0
mov dword [esp + 0x10], edx
mov dword [esp + 0x50], ecx
or eax, 1
mov dword [0x1017f704], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 4], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x40], ecx
push str.CBaseAttributableItem__m_iItemDefinitionIndex
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x20], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b038a
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x40], eax
cmp dword [esp + 0x20], 0
je 0x100b09f7
mov eax, dword [esp + 0x20]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x14], eax
cmp ecx, 3
jae 0x100b09fe
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0a4a
mov ecx, 0x811c9dc5
jmp 0x100b0749
or eax, 1
mov dword [0x1017f71c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x3c], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x1c], ecx
push str.CBasePlayer__m_iHealth
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x60], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b0408
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x60], 0
je 0x100b0ae4
mov eax, dword [esp + 0x60]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100b0b2a
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0b76
or eax, 1
mov dword [0x1017f71c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x1c], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x60], ecx
push str.CBasePlayer__m_iHealth
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x10], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b0478
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x60], eax
cmp dword [esp + 0x10], 0
je 0x100b0aee
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100b0c00
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0c4c
or eax, 1
mov dword [0x10184dfc], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x10], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x50], ecx
push str.CBaseEntity__m_vecOrigin
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b04e8
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x50], eax
cmp dword [esp + 4], 0
je 0x100b0af8
mov eax, dword [esp + 4]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100b0cd6
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0d22
or eax, 1
mov dword [0x10184dfc], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x1c], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x10], ecx
push str.CBaseEntity__m_vecOrigin
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b0558
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x10], eax
cmp dword [esp + 4], 0
je 0x100b0b02
mov ecx, dword [esp + 4]
lea eax, [ecx - 1]
and ecx, 3
mov dword [esp + 0x50], ecx
cmp eax, 3
jae 0x100b0db4
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0e06
or eax, 1
mov dword [0x10184fd0], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x14], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x20], ecx
push str.CCSPlayer__m_iAccount
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xc], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b05cc
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x20], eax
cmp dword [esp + 0xc], 0
je 0x100b0b0c
mov eax, dword [esp + 0xc]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x40], eax
cmp ecx, 3
jae 0x100b0eb2
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0efe
mov dword [esp + 0xc], ebx
or eax, 1
mov dword [0x10184edc], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x14], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x40], ecx
push str.CCSPlayer__m_ArmorValue
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x20], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b0644
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x40], eax
cmp dword [esp + 0x20], 0
je 0x100b0b16
mov eax, dword [esp + 0x20]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100b0f90
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b0fdc
mov dword [esp + 0xc], ebx
or eax, 1
mov dword [0x10184e5c], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x14], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x40], ecx
push str.CCSPlayer__m_bIsScoped
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x20], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b06b8
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x40], eax
cmp dword [esp + 0x20], 0
je 0x100b0b20
mov eax, dword [esp + 0x20]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100b1071
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b10bd
mov esi, dword [esp + 0x20]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0x40]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100b06f4
test eax, eax
je 0x100b0749
add edx, dword [esp + 0x40]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100b0738
mov edx, dword [esp + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov esi, dword [eax + ecx*4]
mov eax, dword [esp + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x100b0791
cmp dword [ebx + 0x1c], 0x10
jb 0x100b0779
mov eax, dword [ebx + 8]
jmp 0x100b077c
lea eax, [ebx + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 0x48]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b079e
cmp ebx, esi
je 0x100b17ea
mov ebx, dword [ebx + 4]
jmp 0x100b0765
add ebx, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x10184ec8], ebx
mov edi, dword [ebp + 8]
jmp 0x100ae6d6
mov ecx, 0x811c9dc5
jmp 0x100b089c
or eax, 1
mov dword [0x1017f704], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x50], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 4], ecx
push str.CBaseAttributableItem__m_iItemDefinitionIndex
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x40], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b080b
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
cmp dword [esp + 0x40], 0
je 0x100b1152
mov eax, dword [esp + 0x40]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100b1159
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b11a5
mov esi, dword [esp + 0x20]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0x40]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100b0847
test eax, eax
je 0x100b089c
add edx, dword [esp + 0x40]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100b088b
mov edx, dword [esp + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov esi, dword [eax + ecx*4]
mov eax, dword [esp + 0x20]
cmp eax, dword [ebx + 0x18]
jne 0x100b08e4
cmp dword [ebx + 0x1c], 0x10
jb 0x100b08cc
mov eax, dword [ebx + 8]
jmp 0x100b08cf
lea eax, [ebx + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 0x48]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b08f1
cmp ebx, esi
je 0x100b17ea
mov ebx, dword [ebx + 4]
jmp 0x100b08b8
lea esi, [ebx + 0x20]
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x10184fc4], esi
add ebx, 0x24
mov edi, dword [ebp + 8]
jmp 0x100ae681
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
or eax, 1
mov dword [0x10184ee4], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x14], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x20], ecx
push str.CCSPlayer__m_bHasHelmet
call fcn.10005ce0
mov ebx, dword [esp + 0xb0]
cmp dword [esp + 0xb4], 0x10
jb 0x100b0959
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x20], eax
test ebx, ebx
je 0x100b1232
mov eax, ebx
lea ecx, [ebx - 1]
and eax, 3
mov dword [esp + 0x40], eax
cmp ecx, 3
jae 0x100b12ac
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b12f6
or ecx, 1
mov dword [0x1017f71c], ecx
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x3c], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x60], ecx
push str.CBasePlayer__m_iHealth
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x10], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b09c9
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x60], eax
cmp dword [esp + 0x10], 0
je 0x100b1384
mov eax, dword [esp + 0x10]
lea ecx, [eax - 1]
and eax, 3
mov dword [esp + 0x1c], eax
cmp ecx, 3
jae 0x100b138b
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b13d7
mov ecx, 0x811c9dc5
jmp 0x100b0a6a
mov esi, dword [esp + 0x20]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x40]
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 0x100b0a10
cmp dword [esp + 0x14], 0
je 0x100b0a6a
add edx, dword [esp + 0x40]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp dword [esp + 0x14], esi
jne 0x100b0a57
mov edx, dword [esp + 4]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
cmp esi, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esp + 0x20]
cmp eax, dword [esi + 0x18]
jne 0x100b0ab2
cmp dword [esi + 0x1c], 0x10
jb 0x100b0a9a
mov eax, dword [esi + 8]
jmp 0x100b0a9d
lea eax, [esi + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 0x48]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b0abf
cmp esi, edi
je 0x100b17ea
mov esi, dword [esi + 4]
jmp 0x100b0a86
add esi, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x1017f700], esi
mov edi, dword [ebp + 8]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x10]
jmp 0x100ae729
mov ecx, 0x811c9dc5
jmp 0x100b0b91
mov ecx, 0x811c9dc5
jmp 0x100b0c67
mov ecx, 0x811c9dc5
jmp 0x100b0d3d
mov ecx, 0x811c9dc5
jmp 0x100b0e26
mov ecx, 0x811c9dc5
jmp 0x100b0f1e
mov ecx, 0x811c9dc5
jmp 0x100b0ff7
mov ecx, 0x811c9dc5
jmp 0x100b10d8
mov esi, dword [esp + 0x60]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0x1c]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100b0b3c
test eax, eax
je 0x100b0b91
add edx, dword [esp + 0x1c]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100b0b80
mov edx, dword [esp + 0x3c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov esi, dword [eax + ecx*4]
mov eax, dword [esp + 0x60]
cmp eax, dword [ebx + 0x18]
jne 0x100b0bd9
cmp dword [ebx + 0x1c], 0x10
jb 0x100b0bc1
mov eax, dword [ebx + 8]
jmp 0x100b0bc4
lea eax, [ebx + 8]
push dword [esp + 0x60]
push eax
push dword [esp + 0x24]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b0be6
cmp ebx, esi
je 0x100b17ea
mov ebx, dword [ebx + 4]
jmp 0x100b0bad
add ebx, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x1017f718], ebx
jmp 0x100aea3c
mov esi, dword [esp + 0x10]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0x60]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100b0c12
test eax, eax
je 0x100b0c67
add edx, dword [esp + 0x60]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100b0c56
mov edx, dword [esp + 0x1c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov esi, dword [eax + ecx*4]
mov eax, dword [esp + 0x10]
cmp eax, dword [ebx + 0x18]
jne 0x100b0caf
cmp dword [ebx + 0x1c], 0x10
jb 0x100b0c97
mov eax, dword [ebx + 8]
jmp 0x100b0c9a
lea eax, [ebx + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x68]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b0cbc
cmp ebx, esi
je 0x100b17ea
mov ebx, dword [ebx + 4]
jmp 0x100b0c83
add ebx, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x1017f718], ebx
jmp 0x100aeb3c
mov esi, dword [esp + 4]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0x50]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100b0ce8
test eax, eax
je 0x100b0d3d
add edx, dword [esp + 0x50]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100b0d2c
mov edx, dword [esp + 0x10]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov esi, dword [eax + ecx*4]
mov eax, dword [esp + 4]
cmp eax, dword [ebx + 0x18]
jne 0x100b0d85
cmp dword [ebx + 0x1c], 0x10
jb 0x100b0d6d
mov eax, dword [ebx + 8]
jmp 0x100b0d70
lea eax, [ebx + 8]
push dword [esp + 4]
push eax
push dword [esp + 0x58]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b0d92
cmp ebx, esi
je 0x100b17ea
mov ebx, dword [ebx + 4]
jmp 0x100b0d59
add ebx, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x10184df8], ebx
mov eax, dword [0x10184dfc]
mov edi, dword [ebp + 8]
jmp 0x100af0ec
mov eax, dword [esp + 4]
and eax, 0xfffffffc
mov dword [esp + 0x60], eax
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x10]
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 dword [esp + 0x60], edx
jne 0x100b0dca
cmp dword [esp + 0x50], 0
je 0x100b0e26
add edx, dword [esp + 0x10]
xor eax, eax
movzx edi, byte [edx + eax]
xor edi, ecx
imul ecx, edi, 0x1000193
inc eax
cmp dword [esp + 0x50], eax
jne 0x100b0e13
mov edx, dword [esp + 0x1c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov dword [esp + 0x50], eax
mov eax, dword [eax + ecx*8 + 4]
cmp eax, dword [edx + 4]
je 0x100b17ea
mov edi, eax
add ecx, ecx
mov eax, dword [esp + 0x50]
mov eax, dword [eax + ecx*4]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 4]
cmp eax, dword [edi + 0x18]
jne 0x100b0e7c
cmp dword [edi + 0x1c], 0x10
jb 0x100b0e64
mov eax, dword [edi + 8]
jmp 0x100b0e67
lea eax, [edi + 8]
push dword [esp + 4]
push eax
push dword [esp + 0x18]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b0e8b
cmp edi, dword [esp + 0x50]
je 0x100b17ea
mov edi, dword [edi + 4]
jmp 0x100b0e50
lea eax, [edi + 0x20]
mov dword [esp + 4], eax
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov eax, dword [esp + 4]
mov dword [0x10184df8], eax
mov ecx, dword [edi + 0x24]
mov edi, dword [ebp + 8]
jmp 0x100af101
mov esi, dword [esp + 0xc]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x20]
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 0x100b0ec4
cmp dword [esp + 0x40], 0
je 0x100b0f1e
add edx, dword [esp + 0x20]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp dword [esp + 0x40], esi
jne 0x100b0f0b
mov edx, dword [esp + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
cmp esi, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esp + 0xc]
cmp eax, dword [esi + 0x18]
jne 0x100b0f66
cmp dword [esi + 0x1c], 0x10
jb 0x100b0f4e
mov eax, dword [esi + 8]
jmp 0x100b0f51
lea eax, [esi + 8]
push dword [esp + 0xc]
push eax
push dword [esp + 0x28]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b0f73
cmp esi, edi
je 0x100b17ea
mov esi, dword [esi + 4]
jmp 0x100b0f3a
add esi, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x10184fcc], esi
mov edi, dword [ebp + 8]
jmp 0x100af6d1
mov esi, dword [esp + 0x20]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0x40]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100b0fa2
test eax, eax
je 0x100b0ff7
add edx, dword [esp + 0x40]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100b0fe6
mov edx, dword [esp + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
cmp esi, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esp + 0x20]
cmp eax, dword [esi + 0x18]
jne 0x100b103f
cmp dword [esi + 0x1c], 0x10
jb 0x100b1027
mov eax, dword [esi + 8]
jmp 0x100b102a
lea eax, [esi + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 0x48]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b104c
cmp esi, edi
je 0x100b17ea
mov esi, dword [esi + 4]
jmp 0x100b1013
add esi, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x10184ed8], esi
mov edi, dword [ebp + 8]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
jmp 0x100af811
mov esi, dword [esp + 0x20]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0x40]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100b1083
test eax, eax
je 0x100b10d8
add edx, dword [esp + 0x40]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100b10c7
mov edx, dword [esp + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
cmp esi, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esp + 0x20]
cmp eax, dword [esi + 0x18]
jne 0x100b1120
cmp dword [esi + 0x1c], 0x10
jb 0x100b1108
mov eax, dword [esi + 8]
jmp 0x100b110b
lea eax, [esi + 8]
push dword [esp + 0x20]
push eax
push dword [esp + 0x48]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b112d
cmp esi, edi
je 0x100b17ea
mov esi, dword [esi + 4]
jmp 0x100b10f4
add esi, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x10184e58], esi
mov edi, dword [ebp + 8]
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
jmp 0x100af8e1
mov ecx, 0x811c9dc5
jmp 0x100b11c0
mov esi, dword [esp + 0x40]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 4]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100b116b
test eax, eax
je 0x100b11c0
add edx, dword [esp + 4]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100b11af
mov edx, dword [esp + 0x50]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov esi, dword [eax + ecx*4]
mov eax, dword [esp + 0x40]
cmp eax, dword [ebx + 0x18]
jne 0x100b1208
cmp dword [ebx + 0x1c], 0x10
jb 0x100b11f0
mov eax, dword [ebx + 8]
jmp 0x100b11f3
lea eax, [ebx + 8]
push dword [esp + 0x40]
push eax
push dword [esp + 0xc]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b1215
cmp ebx, esi
je 0x100b17ea
mov ebx, dword [ebx + 4]
jmp 0x100b11dc
add ebx, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x1017f700], ebx
mov edi, dword [ebp + 8]
jmp 0x100af60d
mov ecx, 0x811c9dc5
jmp 0x100b1316
or eax, 1
mov dword [0x1017f744], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x50], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 4], ecx
push str.CBaseCombatWeapon__m_iClip1
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0xc], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b1282
mov eax, dword [esp + 0xa0]
mov dword [esp + 4], eax
cmp dword [esp + 0xc], 0
je 0x100b14dc
mov eax, dword [esp + 0xc]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100b14e3
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b152f
mov esi, ebx
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x20]
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 0x100b12bc
cmp dword [esp + 0x40], 0
je 0x100b1316
add edx, dword [esp + 0x20]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp dword [esp + 0x40], esi
jne 0x100b1303
mov edx, dword [esp + 0x14]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
cmp esi, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov edi, dword [eax + ecx*4]
cmp ebx, dword [esi + 0x18]
je 0x100b1347
cmp esi, edi
je 0x100b17ea
mov esi, dword [esi + 4]
cmp ebx, dword [esi + 0x18]
jne 0x100b1337
cmp dword [esi + 0x1c], 0x10
jb 0x100b1352
mov eax, dword [esi + 8]
jmp 0x100b1355
lea eax, [esi + 8]
push ebx
push eax
push dword [esp + 0x28]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b1337
add esi, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x10184ee0], esi
mov edi, dword [ebp + 8]
jmp 0x100af835
mov ecx, 0x811c9dc5
jmp 0x100b13f7
mov esi, dword [esp + 0x10]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x60]
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 0x100b139d
cmp dword [esp + 0x1c], 0
je 0x100b13f7
add edx, dword [esp + 0x60]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp dword [esp + 0x1c], esi
jne 0x100b13e4
mov edx, dword [esp + 0x3c]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
cmp esi, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov edi, dword [eax + ecx*4]
mov eax, dword [esp + 0x10]
cmp eax, dword [esi + 0x18]
jne 0x100b143f
cmp dword [esi + 0x1c], 0x10
jb 0x100b1427
mov eax, dword [esi + 8]
jmp 0x100b142a
lea eax, [esi + 8]
push dword [esp + 0x10]
push eax
push dword [esp + 0x68]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b144c
cmp esi, edi
je 0x100b17ea
mov esi, dword [esi + 4]
jmp 0x100b1413
lea edi, [esi + 0x20]
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x1017f718], edi
mov eax, dword [esi + 0x24]
mov edi, dword [ebp + 8]
jmp 0x100aeb71
or eax, 1
mov dword [0x1017f744], eax
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x70], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x3c], ecx
push str.CBaseCombatWeapon__m_iClip1
call fcn.10005ce0
mov eax, dword [esp + 0xb0]
mov dword [esp + 0x1c], eax
cmp dword [esp + 0xb4], 0x10
jb 0x100b14b2
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x3c], eax
cmp dword [esp + 0x1c], 0
je 0x100b1628
mov eax, dword [esp + 0x1c]
lea ecx, [eax - 1]
and eax, 3
cmp ecx, 3
jae 0x100b162f
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b167b
mov ecx, 0x811c9dc5
jmp 0x100b154a
mov esi, dword [esp + 0xc]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 4]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100b14f5
test eax, eax
je 0x100b154a
add edx, dword [esp + 4]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100b1539
mov edx, dword [esp + 0x50]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov esi, dword [eax + ecx*4]
mov eax, dword [esp + 0xc]
cmp eax, dword [ebx + 0x18]
jne 0x100b1592
cmp dword [ebx + 0x1c], 0x10
jb 0x100b157a
mov eax, dword [ebx + 8]
jmp 0x100b157d
lea eax, [ebx + 8]
push dword [esp + 0xc]
push eax
push dword [esp + 0xc]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b159f
cmp ebx, esi
je 0x100b17ea
mov ebx, dword [ebx + 4]
jmp 0x100b1566
add ebx, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x1017f740], ebx
mov edi, dword [ebp + 8]
jmp 0x100aee7b
or ecx, 1
mov dword [0x1017f744], ecx
mov eax, dword [0x1017f5c4]
mov dword [esp + 0x74], eax
lea ecx, [esp + 0xa0]
mov dword [esp + 0x3c], ecx
push str.CBaseCombatWeapon__m_iClip1
call fcn.10005ce0
mov ebx, dword [esp + 0xb0]
cmp dword [esp + 0xb4], 0x10
jb 0x100b15ff
mov eax, dword [esp + 0xa0]
mov dword [esp + 0x3c], eax
test ebx, ebx
je 0x100b170c
mov eax, ebx
lea ecx, [ebx - 1]
and eax, 3
mov dword [esp + 0x70], eax
cmp ecx, 3
jae 0x100b1713
mov ecx, 0x811c9dc5
xor edx, edx
jmp 0x100b175d
mov ecx, 0x811c9dc5
jmp 0x100b1696
mov esi, dword [esp + 0x1c]
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov ebx, dword [esp + 0x3c]
movzx edi, byte [ebx + edx]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 1]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 2]
xor edi, ecx
imul ecx, edi, 0x1000193
movzx edi, byte [ebx + edx + 3]
xor edi, ecx
imul ecx, edi, 0x1000193
add edx, 4
cmp esi, edx
jne 0x100b1641
test eax, eax
je 0x100b1696
add edx, dword [esp + 0x3c]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp eax, esi
jne 0x100b1685
mov edx, dword [esp + 0x70]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov ebx, dword [eax + ecx*8 + 4]
cmp ebx, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov esi, dword [eax + ecx*4]
mov eax, dword [esp + 0x1c]
cmp eax, dword [ebx + 0x18]
jne 0x100b16de
cmp dword [ebx + 0x1c], 0x10
jb 0x100b16c6
mov eax, dword [ebx + 8]
jmp 0x100b16c9
lea eax, [ebx + 8]
push dword [esp + 0x1c]
push eax
push dword [esp + 0x44]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
je 0x100b16eb
cmp ebx, esi
je 0x100b17ea
mov ebx, dword [ebx + 4]
jmp 0x100b16b2
add ebx, 0x20
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x1017f740], ebx
mov edi, dword [ebp + 8]
mov edx, dword [esp + 8]
jmp 0x100aefff
mov ecx, 0x811c9dc5
jmp 0x100b177d
mov esi, ebx
and esi, 0xfffffffc
mov ecx, 0x811c9dc5
xor edx, edx
mov eax, dword [esp + 0x3c]
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 0x100b1723
cmp dword [esp + 0x70], 0
je 0x100b177d
add edx, dword [esp + 0x3c]
xor esi, esi
movzx edi, byte [edx + esi]
xor edi, ecx
imul ecx, edi, 0x1000193
inc esi
cmp dword [esp + 0x70], esi
jne 0x100b176a
mov edx, dword [esp + 0x74]
and ecx, dword [edx + 0x18]
mov eax, dword [edx + 0xc]
mov esi, dword [eax + ecx*8 + 4]
cmp esi, dword [edx + 4]
je 0x100b17ea
add ecx, ecx
mov edi, dword [eax + ecx*4]
cmp ebx, dword [esi + 0x18]
je 0x100b17a6
cmp esi, edi
je 0x100b17ea
mov esi, dword [esi + 4]
cmp ebx, dword [esi + 0x18]
jne 0x100b179a
cmp dword [esi + 0x1c], 0x10
jb 0x100b17b1
mov eax, dword [esi + 8]
jmp 0x100b17b4
lea eax, [esi + 8]
push ebx
push eax
push dword [esp + 0x44]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100b179a
lea edi, [esi + 0x20]
lea ecx, [esp + 0xa0]
call fcn.100026e0
mov dword [0x1017f740], edi
mov eax, dword [esi + 0x24]
add eax, dword [esp + 0x14]
mov edi, dword [ebp + 8]
jmp 0x100af03f
push 0x1016ba76
call sub.MSVCP140.dll_void___cdecl_std::_Xout_of_range_char_const__
int3