Function at 0x100c25b0
Capabilities:
Contain obfuscated stackstrings
Parse pe header

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1019e2ed
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x2e0
mov eax, dword [0x102480b4]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x40], edi
mov ecx, 0x1028ab98
call fcn.10193940
lea eax, [ebp - 0x15]
mov dword [ebp - 0x128], 0
push 8
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0x128]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0x128], eax
mov dword [ebp - 4], 0
push 4
push str.head
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0xf
mov byte [ebp - 0x124], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 4], 1
lea eax, [ebp - 0x16]
push 8
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0x10c]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0x10c], eax
mov byte [ebp - 4], 2
push 5
push str.chest
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
mov byte [ebp - 4], 3
lea eax, [ebp - 0x15]
push 8
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0xf0], eax
mov byte [ebp - 4], 4
push 4
push str.body
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xd8], 0xf
mov byte [ebp - 0xec], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
mov byte [ebp - 4], 5
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0
lea eax, [ebp - 0x16]
push 8
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0xd4]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0xd4], eax
mov byte [ebp - 4], 6
push 4
push str.arms
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0xf
mov byte [ebp - 0xd0], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
mov byte [ebp - 4], 7
lea eax, [ebp - 0x15]
push 8
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0xb8]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0xb8], eax
mov byte [ebp - 4], 8
push 4
push str.legs
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 0xf
mov byte [ebp - 0xb4], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
lea eax, [ebp - 0x9c]
mov dword [ebp - 4], 9
lea ecx, [ebp - 0x128]
push eax
push ecx
push ecx
lea ecx, [ebp - 0x98]
call fcn.100f2270
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x16]
push 8
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0x6c], eax
mov byte [ebp - 4], 0xb
push 0xc
push str.rifle_hitbox
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
mov byte [ebp - 4], 0xc
mov dword [ebp - 0x88], 0
lea eax, [ebp - 0x15]
mov dword [ebp - 0x84], 0
push 8
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0x88]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0x88], eax
mov byte [ebp - 4], 0xd
push 6
push str.hitbox
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0xf
mov byte [ebp - 0x84], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
xorps xmm0, xmm0
mov byte [ebp - 4], 0xf
push 8
movups xmmword [ebp - 0x50], xmm0
call fcn.10191600
lea ecx, [ebp - 0x50]
add esp, 4
mov dword [eax + 4], 0
mov dword [ebp - 0x50], eax
mov dword [eax], ecx
lea ecx, [edi + 0x4f54]
mov byte [ebp - 4], 0x10
lea eax, [ebp - 0x6c]
cmp ecx, eax
je 0x100c29ef
cmp dword [ebp - 0x54], 0x10
lea eax, [ebp - 0x68]
push dword [ebp - 0x58]
cmovae eax, dword [ebp - 0x68]
push eax
call fcn.100425a0
lea ecx, [edi + 0x4f94]
mov byte [edi + 0x4f8d], 1
lea eax, [ebp - 0x88]
cmp ecx, eax
je 0x100c2a20
cmp dword [ebp - 0x70], 0x10
lea eax, [ebp - 0x84]
push dword [ebp - 0x74]
cmovae eax, dword [ebp - 0x84]
push eax
call fcn.100425a0
mov esi, dword [ebp - 0x94]
xor eax, eax
cmp byte [edi + 0x4f8d], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x4fd4], eax
add eax, 0x14
mov dword [edi + 0x4f28], eax
mov dword [edi + 0x4f2c], eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x20], eax
cmp esi, eax
je 0x100c2aa6
nop dword [eax + eax]
mov ecx, dword [edi + 0x4fb8]
lea eax, [edi + 0x4fb0]
push esi
cmp ecx, dword [edi + 0x4fbc]
je 0x100c2a96
call fcn.100429a0
mov eax, dword [edi + 0x4fb8]
lea ecx, [edi + 0x4fb0]
push eax
push eax
call fcn.1004f600
add dword [edi + 0x4fb8], 0x1c
jmp 0x100c2a9e
push ecx
mov ecx, eax
call fcn.1004d880
add esi, 0x1c
cmp esi, dword [ebp - 0x20]
jne 0x100c2a60
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x34], ecx
cmp eax, ecx
je 0x100c2bce
lea esi, [edi + 0x4fc4]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x1c], eax
push esp
call fcn.100416a0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10041720
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x140]
call fcn.10048230
add esp, 0x18
lea ecx, [edi + 0x4fc4]
mov esi, eax
lea eax, [ebp - 0x134]
push eax
call fcn.100416a0
push eax
mov ecx, esi
call fcn.1003e530
mov esi, dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0x20]
push 3
mov byte [ebp - 0x15], al
call esi
lea ecx, [ebp - 0x134]
call fcn.1002f5b0
lea ecx, [ebp - 0x20]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
push 3
lea ecx, [ebp - 0x28]
call esi
lea ecx, [ebp - 0x140]
call fcn.1002f5b0
lea ecx, [ebp - 0x28]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov ecx, dword [edi + 0x4fb8]
lea esi, [edi + 0x4fc4]
sub ecx, dword [edi + 0x4fb4]
mov eax, 0x92492493
imul ecx
add edx, ecx
mov ecx, dword [ebp - 0x2c]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jae 0x100c2baa
mov eax, dword [edi + 0x4fcc]
cmp eax, dword [edi + 0x4fd0]
je 0x100c2b9e
mov dword [eax], ecx
mov ecx, esi
mov eax, dword [edi + 0x4fcc]
push eax
push eax
call fcn.10079c70
add dword [edi + 0x4fcc], 4
jmp 0x100c2baa
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.1007b330
cmp byte [ebp - 0x15], 0
je 0x100c2bbc
mov eax, dword [edi + 0x4f88]
test eax, eax
je 0x100c2bbc
call eax
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [ebp - 0x34]
jne 0x100c2ac0
lea ecx, [ebp - 0x50]
call fcn.1002f6d0
mov ecx, dword [ebp - 0x4c]
test ecx, ecx
je 0x100c2bff
mov edx, dword [ebp - 0x44]
sub edx, ecx
and edx, 0xfffffffc
call fcn.10049fa0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
mov eax, dword [ebp - 0x50]
push 8
push eax
mov dword [ebp - 0x50], 0
call fcn.10191ec0
add esp, 8
lea ecx, [ebp - 0x88]
call fcn.1002f6d0
mov eax, dword [ebp - 0x70]
mov esi, dword [sym.imp.ucrtbased.dll__invalid_parameter]
cmp eax, 0x10
jb 0x100c2c90
mov ecx, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x34], eax
test ecx, ecx
jne 0x100c2c89
test eax, eax
je 0x100c2c89
push str.null_pointer_cannot_point_to_a_block_of_non_zero_size
push 0x101ad5ac
push ecx
push 0x33c
push 0x101ad5b0
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x100c2c68
int3
push 0
push 0x33c
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.32.31326includexmemory
push 0x101ad6dc
push str._null_pointer_cannot_point_to_a_block_of_non_zero_size_
call esi
mov eax, dword [ebp - 0x34]
add esp, 0x14
mov ecx, dword [ebp - 0x2c]
mov edx, eax
call fcn.10049fa0
mov eax, dword [ebp - 0x88]
push 8
push eax
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0xf
mov byte [ebp - 0x84], 0
mov dword [ebp - 0x88], 0
call fcn.10191ec0
add esp, 8
lea ecx, [ebp - 0x6c]
call fcn.1002f6d0
mov eax, dword [ebp - 0x54]
cmp eax, 0x10
jb 0x100c2d30
mov ecx, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x34], eax
test ecx, ecx
jne 0x100c2d29
test eax, eax
je 0x100c2d29
push str.null_pointer_cannot_point_to_a_block_of_non_zero_size
push 0x101ad5ac
push ecx
push 0x33c
push 0x101ad5b0
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x100c2d08
int3
push 0
push 0x33c
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.32.31326includexmemory
push 0x101ad6dc
push str._null_pointer_cannot_point_to_a_block_of_non_zero_size_
call esi
mov eax, dword [ebp - 0x34]
add esp, 0x14
mov ecx, dword [ebp - 0x2c]
mov edx, eax
call fcn.10049fa0
mov eax, dword [ebp - 0x6c]
push 8
push eax
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
mov dword [ebp - 0x6c], 0
call fcn.10191ec0
add esp, 8
lea ecx, [ebp - 0x98]
call fcn.10044c30
mov eax, dword [ebp - 0x98]
push 8
push eax
mov dword [ebp - 0x98], 0
call fcn.10191ec0
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x128]
push fcn.10042720
push 5
push 0x1c
push eax
call fcn.10191670
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea esi, [edi + 0x4f18]
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x4f30], 1
lea ecx, [ebp - 0x34]
mov dword [edi + 0x4f1c], 0x14a
mov dword [edi + 0x4f24], 0xfa
mov eax, dword [edi + 0x34]
push ecx
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x34], esi
mov dword [edi + 0x4f34], eax
call fcn.100ef1f0
lea eax, [ebp - 0x16]
mov dword [ebp - 0x128], 0
push 8
mov dword [ebp - 0x124], 0
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0x128]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0x128], eax
mov dword [ebp - 4], 0x11
push 4
push str.head
mov dword [ebp - 0x114], 0
mov dword [ebp - 0x110], 0xf
mov byte [ebp - 0x124], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 4], 0x12
lea eax, [ebp - 0x15]
push 8
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0x108], 0
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0x10c]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0x10c], eax
mov byte [ebp - 4], 0x13
push 5
push str.chest
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0xf4], 0xf
mov byte [ebp - 0x108], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
mov byte [ebp - 4], 0x14
lea eax, [ebp - 0x16]
push 8
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xec], 0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0xf0]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0xf0], eax
mov byte [ebp - 4], 0x15
push 4
push str.body
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xd8], 0xf
mov byte [ebp - 0xec], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x15]
push 8
mov dword [ebp - 0xd4], 0
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0xd4]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0xd4], eax
mov byte [ebp - 4], 0x17
push 4
push str.arms
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0xf
mov byte [ebp - 0xd0], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x16]
push 8
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xb4], 0
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0xb8]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0xb8], eax
mov byte [ebp - 4], 0x19
push 4
push str.legs
mov dword [ebp - 0xa4], 0
mov dword [ebp - 0xa0], 0xf
mov byte [ebp - 0xb4], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
lea eax, [ebp - 0x9c]
mov dword [ebp - 4], 0x1a
lea ecx, [ebp - 0x128]
push eax
push ecx
push ecx
lea ecx, [ebp - 0x98]
call fcn.100f2270
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x16]
push 8
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0x88]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0x88], eax
mov byte [ebp - 4], 0x1c
push 0x14
push str.rifle_hitbox_history
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0xf
mov byte [ebp - 0x84], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
mov byte [ebp - 4], 0x1d
lea eax, [ebp - 0x15]
push 8
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0x6c]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0x6c], eax
mov byte [ebp - 4], 0x1e
push 0xe
push str.hitbox_history
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
call fcn.100425a0
mov dword [ebp - 0x3c], 0
xorps xmm0, xmm0
mov byte [ebp - 4], 0x20
push 8
movups xmmword [ebp - 0x50], xmm0
call fcn.10191600
lea ecx, [ebp - 0x50]
add esp, 4
mov dword [eax + 4], 0
mov dword [ebp - 0x50], eax
mov dword [eax], ecx
lea ecx, [edi + 0x5014]
mov byte [ebp - 4], 0x21
lea eax, [ebp - 0x88]
cmp ecx, eax
je 0x100c31e0
cmp dword [ebp - 0x70], 0x10
lea eax, [ebp - 0x84]
push dword [ebp - 0x74]
cmovae eax, dword [ebp - 0x84]
push eax
call fcn.100425a0
lea ecx, [edi + 0x5054]
mov byte [edi + 0x504d], 1
lea eax, [ebp - 0x6c]
cmp ecx, eax
je 0x100c3208
cmp dword [ebp - 0x54], 0x10
lea eax, [ebp - 0x68]
push dword [ebp - 0x58]
cmovae eax, dword [ebp - 0x68]
push eax
call fcn.100425a0
mov esi, dword [ebp - 0x94]
xor eax, eax
cmp byte [edi + 0x504d], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x5094], eax
add eax, 0x14
mov dword [edi + 0x4fe8], eax
mov dword [edi + 0x4fec], eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x34], eax
cmp esi, eax
je 0x100c3286
mov ecx, dword [edi + 0x5078]
lea eax, [edi + 0x5070]
push esi
cmp ecx, dword [edi + 0x507c]
je 0x100c3276
call fcn.100429a0
mov eax, dword [edi + 0x5078]
lea ecx, [edi + 0x5070]
push eax
push eax
call fcn.1004f600
add dword [edi + 0x5078], 0x1c
jmp 0x100c327e
push ecx
mov ecx, eax
call fcn.1004d880
add esi, 0x1c
cmp esi, dword [ebp - 0x34]
jne 0x100c3240
mov eax, dword [ebp - 0x4c]
mov ecx, dword [ebp - 0x48]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x28], ecx
cmp eax, ecx
je 0x100c33ae
lea esi, [edi + 0x5084]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x24], eax
push esp
call fcn.100416a0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10041720
lea edx, [ebp - 0x24]
lea ecx, [ebp - 0x134]
call fcn.10048230
add esp, 0x18
lea ecx, [edi + 0x5084]
mov esi, eax
lea eax, [ebp - 0x140]
push eax
call fcn.100416a0
push eax
mov ecx, esi
call fcn.1003e530
mov esi, dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0x34]
push 3
mov byte [ebp - 0x15], al
call esi
lea ecx, [ebp - 0x140]
call fcn.1002f5b0
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
push 3
lea ecx, [ebp - 0x2c]
call esi
lea ecx, [ebp - 0x134]
call fcn.1002f5b0
lea ecx, [ebp - 0x2c]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov ecx, dword [edi + 0x5078]
lea esi, [edi + 0x5084]
sub ecx, dword [edi + 0x5074]
mov eax, 0x92492493
imul ecx
add edx, ecx
mov ecx, dword [ebp - 0x20]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jae 0x100c338a
mov eax, dword [edi + 0x508c]
cmp eax, dword [edi + 0x5090]
je 0x100c337e
mov dword [eax], ecx
mov ecx, esi
mov eax, dword [edi + 0x508c]
push eax
push eax
call fcn.10079c70
add dword [edi + 0x508c], 4
jmp 0x100c338a
lea ecx, [ebp - 0x24]
push ecx
push eax
mov ecx, esi
call fcn.1007b330
cmp byte [ebp - 0x15], 0
je 0x100c339c
mov eax, dword [edi + 0x5048]
test eax, eax
je 0x100c339c
call eax
mov eax, dword [ebp - 0x1c]
add eax, 4
mov dword [ebp - 0x1c], eax
cmp eax, dword [ebp - 0x28]
jne 0x100c32a0
lea ecx, [ebp - 0x50]
call fcn.1002f6d0
mov ecx, dword [ebp - 0x4c]
test ecx, ecx
je 0x100c33df
mov edx, dword [ebp - 0x44]
sub edx, ecx
and edx, 0xfffffffc
call fcn.10049fa0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0
mov eax, dword [ebp - 0x50]
push 8
push eax
mov dword [ebp - 0x50], 0
call fcn.10191ec0
add esp, 8
lea ecx, [ebp - 0x6c]
call fcn.1002f6d0
mov eax, dword [ebp - 0x54]
cmp eax, 0x10
jb 0x100c347f
mov ecx, dword [ebp - 0x68]
inc eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x34], eax
test ecx, ecx
jne 0x100c3470
test eax, eax
je 0x100c3470
push str.null_pointer_cannot_point_to_a_block_of_non_zero_size
push 0x101ad5ac
push ecx
push 0x33c
push 0x101ad5b0
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x100c3440
int3
mov esi, dword [sym.imp.ucrtbased.dll__invalid_parameter]
push 0
push 0x33c
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.32.31326includexmemory
push 0x101ad6dc
push str._null_pointer_cannot_point_to_a_block_of_non_zero_size_
call esi
mov eax, dword [ebp - 0x34]
add esp, 0x14
mov ecx, dword [ebp - 0x2c]
mov edx, eax
call fcn.10049fa0
jmp 0x100c3485
mov esi, dword [sym.imp.ucrtbased.dll__invalid_parameter]
mov edx, eax
call fcn.10049fa0
jmp 0x100c3485
mov esi, dword [sym.imp.ucrtbased.dll__invalid_parameter]
mov eax, dword [ebp - 0x6c]
push 8
push eax
mov dword [ebp - 0x58], 0
mov dword [ebp - 0x54], 0xf
mov byte [ebp - 0x68], 0
mov dword [ebp - 0x6c], 0
call fcn.10191ec0
add esp, 8
lea ecx, [ebp - 0x88]
call fcn.1002f6d0
mov eax, dword [ebp - 0x70]
cmp eax, 0x10
jb 0x100c3522
mov ecx, dword [ebp - 0x84]
inc eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x34], eax
test ecx, ecx
jne 0x100c351b
test eax, eax
je 0x100c351b
push str.null_pointer_cannot_point_to_a_block_of_non_zero_size
push 0x101ad5ac
push ecx
push 0x33c
push 0x101ad5b0
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x100c34fa
int3
push 0
push 0x33c
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.32.31326includexmemory
push 0x101ad6dc
push str._null_pointer_cannot_point_to_a_block_of_non_zero_size_
call esi
mov eax, dword [ebp - 0x34]
add esp, 0x14
mov ecx, dword [ebp - 0x2c]
mov edx, eax
call fcn.10049fa0
mov eax, dword [ebp - 0x88]
push 8
push eax
mov dword [ebp - 0x74], 0
mov dword [ebp - 0x70], 0xf
mov byte [ebp - 0x84], 0
mov dword [ebp - 0x88], 0
call fcn.10191ec0
add esp, 8
lea ecx, [ebp - 0x98]
call fcn.10044c30
mov eax, dword [ebp - 0x98]
push 8
push eax
mov dword [ebp - 0x98], 0
call fcn.10191ec0
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x128]
push fcn.10042720
push 5
push 0x1c
push eax
call fcn.10191670
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea esi, [edi + 0x4fd8]
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x4ff0], 1
lea ecx, [edi + 0x1c]
mov dword [edi + 0x4fdc], 0x14a
mov dword [edi + 0x4fe4], 0xfa
mov eax, dword [edi + 0x34]
mov dword [edi + 0x4ff4], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], esi
call fcn.100ef1f0
lea eax, [ebp - 0x16]
mov dword [ebp - 0x110], 0
push 8
mov dword [ebp - 0x10c], 0
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0xf8], 0
mov dword [ebp - 0x38], eax
call fcn.10191600
lea ecx, [ebp - 0x110]
mov dword [ebp - 0x3c], eax
add esp, 4
mov dword [eax], ecx
mov dword [eax + 4], 0
mov dword [ebp - 0x110], eax
mov dword [ebp - 4], 0x22
push 4
push str.head
mov dword [ebp - 0xfc], 0
mov dword [ebp - 0xf8], 0xf
mov byte [ebp - 0x10c], 0
call fcn.100425a0
mov dword [ebp - 4], 0x23
lea eax, [ebp - 0x15]
mov ecx, 8
mov dword [ebp - 0xf4], 0
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xe0], 0
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0x38], eax
call fcn.1002f040
mov esi, eax
lea eax, [ebp - 0xf4]
push eax
mov ecx, esi
mov dword [ebp - 0x3c], esi
call fcn.1002f140
mov dword [ebp - 0xf4], esi
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0xf4]
call fcn.100454d0
push str.chest
lea ecx, [ebp - 0xf4]
call fcn.100455b0
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x3c], 0
call fcn.10042ef0
push str.body
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x25
call fcn.10042840
push str.legs
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0x26
call fcn.10042840
lea eax, [ebp - 0xa0]
mov dword [ebp - 4], 0x27
push eax
lea eax, [ebp - 0x110]
push eax
lea ecx, [ebp - 0x30]
call fcn.100f2200
push dword [eax + 4]
push dword [eax]
push ecx
lea ecx, [ebp - 0x50]
call fcn.100f2270
push str.rifle_multipoint
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x28
call fcn.10042840
push str.multi_point
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x29
call fcn.10042840
lea ecx, [ebp - 0x98]
call fcn.100418f0
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 0x2b
push eax
lea ecx, [edi + 0x50d4]
call fcn.10073120
lea eax, [ebp - 0x6c]
mov byte [edi + 0x510d], 1
push eax
lea ecx, [edi + 0x5114]
call fcn.10073120
mov esi, dword [ebp - 0x4c]
xor eax, eax
cmp byte [edi + 0x510d], al
mov ecx, 0xf
cmovne eax, ecx
mov ecx, dword [ebp - 0x48]
mov dword [edi + 0x5154], eax
add eax, 0x14
mov dword [edi + 0x50a8], eax
mov dword [edi + 0x50ac], eax
lea eax, [edi + 0x5130]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x24], eax
cmp esi, ecx
je 0x100c37e6
mov edi, eax
push esi
mov ecx, edi
call fcn.10041290
add esi, 0x1c
cmp esi, dword [ebp - 0x34]
jne 0x100c37d3
mov edi, dword [ebp - 0x40]
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x90]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x34], ecx
cmp eax, ecx
je 0x100c38af
lea esi, [edi + 0x5144]
mov dword [ebp - 0x1c], esi
nop dword [eax]
mov edi, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x28], edi
push esp
call fcn.100416a0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10041720
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x134]
call fcn.10048230
mov ecx, dword [ebp - 0x1c]
add esp, 0x18
mov esi, eax
lea eax, [ebp - 0x140]
push eax
call fcn.100416a0
push eax
mov ecx, esi
call fcn.1003e530
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x15], al
call fcn.10034970
lea ecx, [ebp - 0x134]
call fcn.10034970
mov ecx, dword [ebp - 0x24]
call fcn.10041220
mov esi, dword [ebp - 0x1c]
cmp edi, eax
jae 0x100c3888
lea eax, [ebp - 0x28]
mov ecx, esi
push eax
call fcn.10072eb0
cmp byte [ebp - 0x15], 0
mov edi, dword [ebp - 0x40]
je 0x100c389d
mov eax, dword [edi + 0x5108]
test eax, eax
je 0x100c389d
call eax
mov eax, dword [ebp - 0x20]
add eax, 4
mov dword [ebp - 0x20], eax
cmp eax, dword [ebp - 0x34]
jne 0x100c3810
lea ecx, [ebp - 0x98]
call fcn.100417a0
lea ecx, [ebp - 0x6c]
call fcn.10042720
lea ecx, [ebp - 0x88]
call fcn.10042720
lea ecx, [ebp - 0x50]
call fcn.10041330
push fcn.10042720
push 4
push 0x1c
lea eax, [ebp - 0x110]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.10191670
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea esi, [edi + 0x5098]
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x50b0], 1
lea ecx, [edi + 0x1c]
mov dword [edi + 0x509c], 0x14a
mov dword [edi + 0x50a4], 0xfa
mov eax, dword [edi + 0x34]
mov dword [edi + 0x50b4], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], esi
call fcn.100ef1f0
push 0x1022c89c
lea ecx, [ebp - 0x1cc]
lea esi, [edi + 0x5158]
call fcn.100f24f0
push str.rifle_hitbox_scale
lea ecx, [ebp - 0x6c]
mov dword [ebp - 4], 0x2c
call fcn.10042840
push 0x101af3e7
lea ecx, [ebp - 0x88]
mov byte [ebp - 4], 0x2d
call fcn.10042840
lea eax, [ebp - 0x6c]
mov byte [ebp - 4], 0x2e
push eax
lea ecx, [edi + 0x5194]
call fcn.10073120
lea eax, [ebp - 0x1cc]
mov byte [edi + 0x51cd], 0
push eax
lea ecx, [edi + 0x5208]
mov dword [edi + 0x5224], 0
mov dword [edi + 0x5168], 8
mov dword [edi + 0x516c], 8
mov dword [edi + 0x51d8], 0x3f800000
mov dword [edi + 0x51dc], 0x42c80000
mov dword [edi + 0x51d4], 0x42700000
mov dword [edi + 0x51e8], 0
mov dword [edi + 0x51e0], 0x3f800000
call fcn.100f24b0
lea ecx, [ebp - 0x88]
call fcn.10042720
lea ecx, [ebp - 0x6c]
call fcn.10042720
lea ecx, [ebp - 0x1cc]
mov dword [ebp - 4], 0xffffffff
call fcn.100a6a90
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x5170], 1
mov dword [edi + 0x515c], 0x14a
mov dword [edi + 0x5164], 0xfa
mov eax, dword [edi + 0x34]
mov dword [ebp - 0x34], esi
mov dword [edi + 0x5174], eax
lea ecx, [edi + 0x1c]
lea eax, [ebp - 0x34]
push eax
call fcn.100ef1f0
push 0x1022c89c
lea ecx, [ebp - 0x1e8]
lea esi, [edi + 0x5228]
call fcn.100f24f0
push str.rifle_body_hitbox_scale
lea ecx, [ebp - 0x6c]
mov dword [ebp - 4], 0x2f
call fcn.10042840
push str.body_hitbox_scale
lea ecx, [ebp - 0x1cc]
mov byte [ebp - 4], 0x30
call fcn.10042840
lea eax, [ebp - 0x6c]
mov byte [ebp - 4], 0x31
push eax
lea ecx, [edi + 0x5264]
call fcn.10073120
lea eax, [ebp - 0x1cc]
mov byte [edi + 0x529d], 1
push eax
lea ecx, [edi + 0x52bc]
call fcn.10073120
xor eax, eax
mov dword [edi + 0x52a8], 0x3f800000
cmp byte [edi + 0x529d], al
mov ecx, 0xf
mov dword [edi + 0x52ac], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x52a4], 0x42700000
mov dword [edi + 0x52f4], eax
lea ecx, [edi + 0x52d8]
add eax, 8
mov dword [edi + 0x52b8], 0
mov dword [edi + 0x5238], eax
mov dword [edi + 0x523c], eax
lea eax, [ebp - 0x1e8]
push eax
mov dword [edi + 0x52b0], 0x3f800000
call fcn.100f24b0
lea ecx, [ebp - 0x1cc]
call fcn.10042720
lea ecx, [ebp - 0x6c]
call fcn.10042720
lea ecx, [ebp - 0x1e8]
mov dword [ebp - 4], 0xffffffff
call fcn.100a6a90
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x5240], 1
lea ecx, [edi + 0x1c]
mov dword [edi + 0x522c], 0x14a
mov dword [edi + 0x5234], 0xfa
mov eax, dword [edi + 0x34]
mov dword [edi + 0x5244], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], esi
call fcn.100ef1f0
push 0x1022c89c
lea ecx, [ebp - 0x204]
lea esi, [edi + 0x52f8]
call fcn.100f24f0
push str.rifle_feet_hitbox_scale
lea ecx, [ebp - 0x1cc]
mov dword [ebp - 4], 0x32
call fcn.10042840
mov byte [ebp - 4], 0x33
push str.feet_hitbox_scale
lea ecx, [ebp - 0x1e8]
call fcn.10042840
lea eax, [ebp - 0x1cc]
mov byte [ebp - 4], 0x34
push eax
lea ecx, [edi + 0x5334]
call fcn.10073120
lea eax, [ebp - 0x1e8]
mov byte [edi + 0x536d], 1
push eax
lea ecx, [edi + 0x538c]
call fcn.10073120
xor eax, eax
mov dword [edi + 0x5378], 0x3f800000
cmp byte [edi + 0x536d], al
mov ecx, 0xf
mov dword [edi + 0x537c], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x5374], 0x428c0000
mov dword [edi + 0x53c4], eax
lea ecx, [edi + 0x53a8]
add eax, 8
mov dword [edi + 0x5388], 0
mov dword [edi + 0x5308], eax
mov dword [edi + 0x530c], eax
lea eax, [ebp - 0x204]
push eax
mov dword [edi + 0x5380], 0x3f800000
call fcn.100f24b0
lea ecx, [ebp - 0x1e8]
call fcn.10042720
lea ecx, [ebp - 0x1cc]
call fcn.10042720
lea ecx, [ebp - 0x204]
mov dword [ebp - 4], 0xffffffff
call fcn.100a6a90
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x5310], 1
lea ecx, [edi + 0x1c]
mov dword [edi + 0x52fc], 0x14a
mov dword [edi + 0x5304], 0xfa
mov eax, dword [edi + 0x34]
mov dword [edi + 0x5314], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], esi
call fcn.100ef1f0
push 0x101ad6dc
lea ecx, [ebp - 0x194]
lea esi, [edi + 0x53c8]
call fcn.100f24f0
push str.rifle_minimal_damage
lea ecx, [ebp - 0x1e8]
mov dword [ebp - 4], 0x35
call fcn.10042840
push str.minimal_damage
lea ecx, [ebp - 0x204]
mov byte [ebp - 4], 0x36
call fcn.10042840
lea eax, [ebp - 0x1e8]
mov byte [ebp - 4], 0x37
push eax
lea ecx, [edi + 0x5404]
call fcn.10073120
lea eax, [ebp - 0x204]
mov byte [edi + 0x543d], 1
push eax
lea ecx, [edi + 0x545c]
call fcn.10073120
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x543d], al
cmovne eax, ecx
mov dword [edi + 0x5494], eax
lea ecx, [edi + 0x5478]
add eax, 8
mov dword [edi + 0x5448], 0x3f800000
mov dword [edi + 0x53d8], eax
mov dword [edi + 0x53dc], eax
lea eax, [ebp - 0x194]
push eax
mov dword [edi + 0x544c], 0x42c80000
mov dword [edi + 0x5444], 0x41a00000
mov dword [edi + 0x5458], 0
mov dword [edi + 0x5450], 0x3f800000
call fcn.100f24b0
lea ecx, [ebp - 0x204]
call fcn.10042720
lea ecx, [ebp - 0x1e8]
call fcn.10042720
lea ecx, [ebp - 0x194]
mov dword [ebp - 4], 0xffffffff
call fcn.100a6a90
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x53e0], 1
lea ecx, [edi + 0x1c]
mov dword [edi + 0x53cc], 0x14a
mov dword [edi + 0x53d4], 0xfa
mov eax, dword [edi + 0x34]
mov dword [edi + 0x53e4], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], esi
call fcn.100ef1f0
push str.rifle_minimal_damage_hp
lea ecx, [ebp - 0x1b0]
lea esi, [edi + 0x5498]
call fcn.10042840
push str.scale_damage_on_hp
lea ecx, [ebp - 0x194]
mov dword [ebp - 4], 0x38
call fcn.10042840
lea eax, [ebp - 0x1b0]
mov byte [ebp - 4], 0x39
push eax
lea ecx, [edi + 0x54d4]
call fcn.10073120
lea eax, [ebp - 0x194]
mov byte [edi + 0x550d], 1
push eax
lea ecx, [edi + 0x5514]
call fcn.10073120
lea ecx, [ebp - 0x194]
mov byte [edi + 0x5510], 0
call fcn.10042720
lea ecx, [ebp - 0x1b0]
mov dword [ebp - 4], 0xffffffff
call fcn.10042720
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x54b0], 1
lea ecx, [edi + 0x1c]
mov dword [edi + 0x549c], 0x14a
mov dword [edi + 0x54a4], 0xfa
mov eax, dword [edi + 0x34]
mov dword [edi + 0x54b4], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], esi
call fcn.100ef1f0
push 0x101ad6dc
lea ecx, [ebp - 0x178]
lea esi, [edi + 0x5530]
call fcn.100f24f0
push str.rifle_dmg_override_amount
lea ecx, [ebp - 0x194]
mov dword [ebp - 4], 0x3a
call fcn.10042840
push str.dmg_override_amount
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 0x3b
call fcn.10042840
lea eax, [ebp - 0x194]
mov byte [ebp - 4], 0x3c
push eax
lea ecx, [edi + 0x556c]
call fcn.10073120
lea eax, [ebp - 0x1b0]
mov byte [edi + 0x55a5], 1
push eax
lea ecx, [edi + 0x55c4]
call fcn.10073120
xor eax, eax
mov dword [edi + 0x55b0], 0x3f800000
cmp byte [edi + 0x55a5], al
mov ecx, 0xf
mov dword [edi + 0x55b4], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0x55ac], 0x40a00000
mov dword [edi + 0x55fc], eax
lea ecx, [edi + 0x55e0]
add eax, 8
mov dword [edi + 0x55c0], 0
mov dword [edi + 0x5540], eax
mov dword [edi + 0x5544], eax
lea eax, [ebp - 0x178]
push eax
mov dword [edi + 0x55b8], 0x3f800000
call fcn.100f24b0
lea ecx, [ebp - 0x1b0]
call fcn.10042720
lea ecx, [ebp - 0x194]
call fcn.10042720
lea ecx, [ebp - 0x178]
mov dword [ebp - 4], 0xffffffff
call fcn.100a6a90
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x5548], 1
lea ecx, [edi + 0x1c]
mov dword [edi + 0x5534], 0x14a
mov dword [edi + 0x553c], 0xfa
mov eax, dword [edi + 0x34]
mov dword [edi + 0x554c], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], esi
call fcn.100ef1f0
push str.rifle_penetrate
lea ecx, [ebp - 0x15c]
lea esi, [edi + 0x5600]
call fcn.10042840
push str.penetrate_walls
lea ecx, [ebp - 0x178]
mov dword [ebp - 4], 0x3d
call fcn.10042840
lea eax, [ebp - 0x15c]
mov byte [ebp - 4], 0x3e
push eax
lea ecx, [edi + 0x563c]
call fcn.10073120
lea eax, [ebp - 0x178]
mov byte [edi + 0x5675], 1
push eax
lea ecx, [edi + 0x567c]
call fcn.10073120
mov byte [edi + 0x5678], 0
lea ecx, [ebp - 0x178]
call fcn.10042720
lea ecx, [ebp - 0x15c]
mov dword [ebp - 4], 0xffffffff
call fcn.10042720
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x5618], 1
lea ecx, [edi + 0x1c]
mov dword [edi + 0x5604], 0x14a
mov dword [edi + 0x560c], 0xfa
mov eax, dword [edi + 0x34]
mov dword [edi + 0x561c], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], esi
call fcn.100ef1f0
push 0x1022c958
lea ecx, [ebp - 0x260]
call fcn.10042840
push str.always
lea ecx, [ebp - 0x244]
mov dword [ebp - 4], 0x3f
call fcn.10042840
push str.hitchance_fail
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x40
call fcn.10042840
lea eax, [ebp - 0x20c]
mov dword [ebp - 4], 0x41
push eax
lea eax, [ebp - 0x260]
push eax
lea ecx, [ebp - 0x3c]
call fcn.100f2200
push dword [eax + 4]
push dword [eax]
push ecx
lea ecx, [ebp - 0x98]
call fcn.100f2270
push str.rifle_zoom
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x42
call fcn.10042840
push str.auto_scope
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 0x43
call fcn.10042840
lea eax, [ebp - 0x178]
mov byte [ebp - 4], 0x44
push eax
lea ecx, [edi + 0x56d4]
call fcn.10073120
lea eax, [ebp - 0x15c]
mov byte [edi + 0x570d], 1
push eax
lea ecx, [edi + 0x5714]
call fcn.10073120
mov esi, dword [ebp - 0x94]
xor eax, eax
cmp byte [edi + 0x570d], al
mov ecx, 0xf
cmovne eax, ecx
lea ecx, [edi + 0x5730]
mov dword [edi + 0x5748], eax
add eax, 0x14
mov dword [edi + 0x56a8], eax
mov dword [edi + 0x56ac], eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x20], ecx
cmp esi, eax
je 0x100c4236
mov edi, ecx
nop dword [eax]
push esi
mov ecx, edi
call fcn.10041290
add esi, 0x1c
cmp esi, dword [ebp - 0x34]
jne 0x100c4220
mov edi, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x20]
call fcn.10041220
test eax, eax
je 0x100c4249
mov dword [edi + 0x5744], 0
lea ecx, [ebp - 0x15c]
call fcn.10042720
lea ecx, [ebp - 0x178]
call fcn.10042720
lea ecx, [ebp - 0x98]
call fcn.10041330
push fcn.10042720
push 3
push 0x1c
lea eax, [ebp - 0x260]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.10191670
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea esi, [edi + 0x5698]
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x56b0], 1
lea ecx, [edi + 0x1c]
mov dword [edi + 0x569c], 0x14a
mov dword [edi + 0x56a4], 0xfa
mov eax, dword [edi + 0x34]
mov dword [edi + 0x56b4], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], esi
call fcn.100ef1f0
push str.rifle_hitchance
lea ecx, [ebp - 0x1b0]
add edi, 0x574c
call fcn.10042840
push str.hitchance
lea ecx, [ebp - 0x15c]
mov dword [ebp - 4], 0x45
call fcn.10042840
mov esi, dword [ebp - 0x40]
lea eax, [ebp - 0x1b0]
push eax
mov byte [ebp - 4], 0x46
lea ecx, [esi + 0x5788]
call fcn.10073120
lea eax, [ebp - 0x15c]
mov byte [esi + 0x57c1], 1
push eax
lea ecx, [esi + 0x57c8]
call fcn.10073120
lea ecx, [ebp - 0x15c]
mov byte [esi + 0x57c4], 0
call fcn.10042720
lea ecx, [ebp - 0x1b0]
mov dword [ebp - 4], 0xffffffff
call fcn.10042720
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
push eax
lea ecx, [edi + 0x60]
call fcn.100ef420
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x100585d0
push eax
lea ecx, [edi + 0x60]
call fcn.100ef420
mov dword [esi + 0x5764], 1
lea ecx, [esi + 0x1c]
mov dword [esi + 0x5750], 0x14a
mov dword [esi + 0x5758], 0xfa
mov eax, dword [esi + 0x34]
mov dword [esi + 0x5768], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], edi
call fcn.100ef1f0
push 0x1022c89c
lea ecx, [ebp - 0x194]
lea edi, [esi + 0x57e4]
call fcn.100f24f0
push str.rifle_hitchance_amount
lea ecx, [ebp - 0x15c]
mov dword [ebp - 4], 0x47
call fcn.10042840
push 0x101af3e7
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x48
call fcn.10042840
lea eax, [ebp - 0x15c]
mov byte [ebp - 4], 0x49
push eax
lea ecx, [esi + 0x5820]
call fcn.10073120
lea eax, [ebp - 0x194]
mov byte [esi + 0x5859], 0
push eax
lea ecx, [esi + 0x5894]
mov dword [esi + 0x58b0], 0
mov dword [esi + 0x57f4], 8
mov dword [esi + 0x57f8], 8
mov dword [esi + 0x5864], 0x3f800000
mov dword [esi + 0x5868], 0x42c80000
mov dword [esi + 0x5860], 0x42480000
mov dword [esi + 0x5874], 0
mov dword [esi + 0x586c], 0x3f800000
call fcn.100f24b0
lea ecx, [ebp - 0x178]
call fcn.10042720
lea ecx, [ebp - 0x15c]
call fcn.10042720
lea ecx, [ebp - 0x194]
mov dword [ebp - 4], 0xffffffff
call fcn.100a6a90
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
push eax
lea ecx, [edi + 0x60]
call fcn.100ef420
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x100585d0
push eax
lea ecx, [edi + 0x60]
call fcn.100ef420
mov dword [ebp - 0x34], edi
mov edi, esi
mov dword [edi + 0x57fc], 1
lea ecx, [edi + 0x1c]
mov dword [edi + 0x57e8], 0x14a
mov dword [edi + 0x57f0], 0xfa
mov eax, dword [edi + 0x34]
mov dword [edi + 0x5800], eax
lea eax, [ebp - 0x34]
push eax
call fcn.100ef1f0
push str.always
lea ecx, [ebp - 0x2f0]
call fcn.10042840
push str.lethal
lea ecx, [ebp - 0x2d4]
mov dword [ebp - 4], 0x4a
call fcn.10042840
push str.lethal_x2
lea ecx, [ebp - 0x2b8]
mov byte [ebp - 4], 0x4b
call fcn.10042840
push str.fake
lea ecx, [ebp - 0x29c]
mov byte [ebp - 4], 0x4c
call fcn.10042840
push str.in_air
lea ecx, [ebp - 0x280]
mov byte [ebp - 4], 0x4d
call fcn.10042840
mov dword [ebp - 4], 0x4e
lea eax, [ebp - 0x264]
push eax
lea eax, [ebp - 0x2f0]
push eax
lea ecx, [ebp - 0x30]
call fcn.100f2200
push dword [eax + 4]
push dword [eax]
push ecx
lea ecx, [ebp - 0x50]
call fcn.100f2270
push str.rifle_baim1
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x4f
call fcn.10042840
push str.prefer_body_aim
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 0x50
call fcn.10042840
lea ecx, [ebp - 0x98]
call fcn.100418f0
lea eax, [ebp - 0x178]
mov byte [ebp - 4], 0x52
push eax
lea ecx, [edi + 0x58f0]
call fcn.10073120
lea eax, [ebp - 0x15c]
mov byte [edi + 0x5929], 1
push eax
lea ecx, [edi + 0x5930]
call fcn.10073120
mov esi, dword [ebp - 0x4c]
xor eax, eax
cmp byte [edi + 0x5929], al
mov ecx, 0xf
cmovne eax, ecx
mov ecx, dword [ebp - 0x48]
mov dword [edi + 0x5970], eax
add eax, 0x14
mov dword [edi + 0x58c4], eax
mov dword [edi + 0x58c8], eax
lea eax, [edi + 0x594c]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x20], eax
cmp esi, ecx
je 0x100c463a
mov edi, eax
push esi
mov ecx, edi
call fcn.10041290
add esi, 0x1c
cmp esi, dword [ebp - 0x34]
jne 0x100c4627
mov edi, dword [ebp - 0x40]
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x90]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x34], ecx
cmp eax, ecx
je 0x100c46ff
lea esi, [edi + 0x5960]
mov dword [ebp - 0x1c], esi
nop dword [eax]
mov edi, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x28], edi
push esp
call fcn.100416a0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10041720
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x134]
call fcn.10048230
mov ecx, dword [ebp - 0x1c]
add esp, 0x18
mov esi, eax
lea eax, [ebp - 0x140]
push eax
call fcn.100416a0
push eax
mov ecx, esi
call fcn.1003e530
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x15], al
call fcn.10034970
lea ecx, [ebp - 0x134]
call fcn.10034970
mov ecx, dword [ebp - 0x20]
call fcn.10041220
mov esi, dword [ebp - 0x1c]
cmp edi, eax
jae 0x100c46d8
lea eax, [ebp - 0x28]
mov ecx, esi
push eax
call fcn.10072eb0
cmp byte [ebp - 0x15], 0
mov edi, dword [ebp - 0x40]
je 0x100c46ed
mov eax, dword [edi + 0x5924]
test eax, eax
je 0x100c46ed
call eax
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [ebp - 0x34]
jne 0x100c4660
lea ecx, [ebp - 0x98]
call fcn.100417a0
lea ecx, [ebp - 0x15c]
call fcn.10042720
lea ecx, [ebp - 0x178]
call fcn.10042720
lea ecx, [ebp - 0x50]
call fcn.10041330
push fcn.10042720
push 5
push 0x1c
lea eax, [ebp - 0x2f0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.10191670
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea esi, [edi + 0x58b4]
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x58cc], 1
lea ecx, [edi + 0x1c]
mov dword [edi + 0x58b8], 0x14a
mov dword [edi + 0x58c0], 0xfa
mov eax, dword [edi + 0x34]
mov dword [edi + 0x58d0], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], esi
call fcn.100ef1f0
push str.always
lea ecx, [ebp - 0x110]
call fcn.10042840
push str.health
lea ecx, [ebp - 0xf4]
mov dword [ebp - 4], 0x53
call fcn.10042840
push str.fake
lea ecx, [ebp - 0xd8]
mov byte [ebp - 4], 0x54
call fcn.10042840
push str.in_air
lea ecx, [ebp - 0xbc]
mov byte [ebp - 4], 0x55
call fcn.10042840
lea eax, [ebp - 0xa0]
mov dword [ebp - 4], 0x56
push eax
lea eax, [ebp - 0x110]
push eax
lea ecx, [ebp - 0x30]
call fcn.100f2200
push dword [eax + 4]
push dword [eax]
push ecx
lea ecx, [ebp - 0x50]
call fcn.100f2270
push str.rifle_baim2
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x57
call fcn.10042840
push str.only_body_aim
lea ecx, [ebp - 0x15c]
mov byte [ebp - 4], 0x58
call fcn.10042840
lea ecx, [ebp - 0x98]
call fcn.100418f0
lea eax, [ebp - 0x178]
mov byte [ebp - 4], 0x5a
push eax
lea ecx, [edi + 0x59b0]
call fcn.10073120
lea eax, [ebp - 0x15c]
mov byte [edi + 0x59e9], 1
push eax
lea ecx, [edi + 0x59f0]
call fcn.10073120
mov esi, dword [ebp - 0x4c]
xor eax, eax
cmp byte [edi + 0x59e9], al
mov ecx, 0xf
cmovne eax, ecx
mov ecx, dword [ebp - 0x48]
mov dword [edi + 0x5a30], eax
add eax, 0x14
mov dword [edi + 0x5984], eax
mov dword [edi + 0x5988], eax
lea eax, [edi + 0x5a0c]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x20], eax
cmp esi, ecx
je 0x100c48c3
mov edi, eax
nop dword [eax]
push esi
mov ecx, edi
call fcn.10041290
add esi, 0x1c
cmp esi, dword [ebp - 0x34]
jne 0x100c48b0
mov edi, dword [ebp - 0x40]
mov eax, dword [ebp - 0x94]
mov ecx, dword [ebp - 0x90]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x34], ecx
cmp eax, ecx
je 0x100c4985
lea esi, [edi + 0x5a20]
mov dword [ebp - 0x1c], esi
mov edi, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x28], edi
push esp
call fcn.100416a0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10041720
lea edx, [ebp - 0x28]
lea ecx, [ebp - 0x134]
call fcn.10048230
mov ecx, dword [ebp - 0x1c]
add esp, 0x18
mov esi, eax
lea eax, [ebp - 0x140]
push eax
call fcn.100416a0
push eax
mov ecx, esi
call fcn.1003e530
lea ecx, [ebp - 0x140]
mov byte [ebp - 0x15], al
call fcn.10034970
lea ecx, [ebp - 0x134]
call fcn.10034970
mov ecx, dword [ebp - 0x20]
call fcn.10041220
mov esi, dword [ebp - 0x1c]
cmp edi, eax
jae 0x100c495e
lea eax, [ebp - 0x28]
mov ecx, esi
push eax
call fcn.10072eb0
cmp byte [ebp - 0x15], 0
mov edi, dword [ebp - 0x40]
je 0x100c4973
mov eax, dword [edi + 0x59e4]
test eax, eax
je 0x100c4973
call eax
mov eax, dword [ebp - 0x24]
add eax, 4
mov dword [ebp - 0x24], eax
cmp eax, dword [ebp - 0x34]
jne 0x100c48e6
lea ecx, [ebp - 0x98]
call fcn.100417a0
lea ecx, [ebp - 0x15c]
call fcn.10042720
lea ecx, [ebp - 0x178]
call fcn.10042720
lea ecx, [ebp - 0x50]
call fcn.10041330
push fcn.10042720
push 4
push 0x1c
lea eax, [ebp - 0x110]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.10191670
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
lea esi, [edi + 0x5974]
lea ecx, [esi + 0x60]
push eax
call fcn.100ef420
mov dword [edi + 0x598c], 1
lea ecx, [edi + 0x1c]
mov dword [edi + 0x5978], 0x14a
mov dword [edi + 0x5980], 0xfa
mov eax, dword [edi + 0x34]
mov dword [edi + 0x5990], eax
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x34], esi
call fcn.100ef1f0
push 0x1022ca90
lea ecx, [ebp - 0x1b0]
lea esi, [edi + 0x5a34]
call fcn.100f24f0
push str.rifle_baim_hp
lea ecx, [ebp - 0x15c]
mov dword [ebp - 4], 0x5b
call fcn.10042840
push 0x101af3e7
lea ecx, [ebp - 0x178]
mov byte [ebp - 4], 0x5c
call fcn.10042840
lea eax, [ebp - 0x15c]
mov byte [ebp - 4], 0x5d
push eax
lea ecx, [edi + 0x5a70]
call fcn.10073120
lea eax, [ebp - 0x1b0]
mov byte [edi + 0x5aa9], 0
push eax
lea ecx, [edi + 0x5ae4]
mov dword [edi + 0x5b00], 0
mov dword [edi + 0x5a44], 8
mov dword [edi + 0x5a48], 8
mov dword [edi + 0x5ab4], 0x3f800000
mov dword [edi + 0x5ab8], 0x42c80000
mov dword [edi + 0x5ab0], 0x41a00000
mov dword [edi + 0x5ac4], 0
mov dword [edi + 0x5abc], 0x3f800000
call fcn.100f24b0
lea ecx, [ebp - 0x178]
call fcn.10042720
lea ecx, [ebp - 0x15c]
call fcn.10042720
lea ecx, [ebp - 0x1b0]
mov dword [ebp - 4], 0xffffffff
call fcn.100a6a90
lea eax, [ebp - 0x34]
mov dword [ebp - 0x34], 0x10057e80
push eax
lea ecx, [edi + 0x5a94]
call fcn.100ef420
mov dword [esi + 0x18], 1
mov dword [esi + 4], 0x14a
mov dword [esi + 0xc], 0xfa
mov eax, dword [edi + 0x34]
mov dword [ebp - 0x34], esi
mov dword [esi + 0x1c], eax
lea ecx, [edi + 0x1c]
lea eax, [ebp - 0x34]
push eax
call fcn.100ef1f0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.101912d0
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret