Function at 0x1005ca60
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 0x100b3588
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x3f8
mov eax, dword [0x100cd040]
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 - 0x44], edi
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x328], 0
push str.players
lea ecx, [ebp - 0x328]
mov dword [ebp - 0x314], 0
movups xmmword [ebp - 0x324], xmm0
mov dword [ebp - 0x310], 0
call fcn.10027ad0
lea eax, [ebp - 0x328]
mov dword [ebp - 4], 0
cmp edi, eax
je 0x1005cb13
cmp dword [ebp - 0x310], 0xf
lea eax, [ebp - 0x324]
push dword [ebp - 0x314]
cmova eax, dword [ebp - 0x324]
mov ecx, edi
push eax
call fcn.10027070
lea ecx, [ebp - 0x328]
mov dword [ebp - 4], 0xffffffff
call fcn.10026f90
mov eax, dword [ebp - 0x328]
push 8
push eax
mov dword [ebp - 0x328], 0
call fcn.100ad380
add esp, 8
mov dword [ebp - 0xc0], 0
xorps xmm0, xmm0
mov dword [ebp - 0xac], 0
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0xa8], 0
movups xmmword [ebp - 0xbc], xmm0
push 5
push str.enemy
call fcn.10027ad0
mov dword [ebp - 4], 1
lea ecx, [ebp - 0xa4]
push 8
xorps xmm0, xmm0
mov dword [ebp - 0xa4], 0
push str.friendly
movups xmmword [ebp - 0xa0], xmm0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0
call fcn.10027ad0
lea eax, [ebp - 0x88]
mov dword [ebp - 4], 2
lea ecx, [ebp - 0xc0]
push eax
push ecx
push ecx
lea ecx, [ebp - 0x78]
call fcn.1007db30
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x360]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x360], 0
push 0x100bf940
movups xmmword [ebp - 0x35c], xmm0
mov dword [ebp - 0x34c], 0
mov dword [ebp - 0x348], 0
call fcn.10027ad0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x344]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x344], 0
push str.boxes
movups xmmword [ebp - 0x340], xmm0
mov dword [ebp - 0x330], 0
mov dword [ebp - 0x32c], 0
call fcn.10027ad0
xorps xmm0, xmm0
mov byte [ebp - 4], 6
push 8
movups xmmword [ebp - 0x88], xmm0
call fcn.100acb20
lea ecx, [ebp - 0x88]
add esp, 4
mov dword [eax + 4], 0
mov dword [ebp - 0x88], eax
mov dword [eax], ecx
lea ecx, [edi + 0x74]
mov byte [ebp - 4], 7
lea eax, [ebp - 0x360]
cmp ecx, eax
je 0x1005ccb3
cmp dword [ebp - 0x348], 0xf
lea eax, [ebp - 0x35c]
push dword [ebp - 0x34c]
cmova eax, dword [ebp - 0x35c]
push eax
call fcn.10027070
lea ecx, [edi + 0xb8]
mov byte [edi + 0xad], 1
lea eax, [ebp - 0x344]
cmp ecx, eax
je 0x1005ccea
cmp dword [ebp - 0x32c], 0xf
lea eax, [ebp - 0x340]
push dword [ebp - 0x330]
cmova eax, dword [ebp - 0x340]
push eax
call fcn.10027070
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0xad], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0xf8], eax
add eax, 0x14
mov dword [edi + 0x48], eax
mov dword [edi + 0x4c], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x40], eax
cmp esi, eax
je 0x1005cd66
lea ecx, [edi + 0xd4]
nop dword [eax]
mov eax, dword [edi + 0xdc]
push esi
cmp eax, dword [edi + 0xe0]
je 0x1005cd52
mov ecx, eax
call fcn.1002c0e0
mov eax, dword [edi + 0xdc]
lea ecx, [edi + 0xd4]
push eax
push eax
call fcn.10028c10
add dword [edi + 0xdc], 0x1c
jmp 0x1005cd58
push eax
call fcn.100507e0
add esi, 0x1c
lea ecx, [edi + 0xd4]
cmp esi, dword [ebp - 0x40]
jne 0x1005cd20
mov ecx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x80]
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x18], eax
cmp ecx, eax
je 0x1005d116
lea esi, [edi + 0xe8]
mov eax, dword [ecx]
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0x1c], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x64], ecx
push 3
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x28]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
mov ecx, dword [ebp - 0x64]
mov edx, dword [esi]
mov dword [ebp - 0x20], edx
mov eax, dword [ecx]
cmp eax, edx
je 0x1005cdd6
test eax, eax
je 0x1005cdcb
call fcn.1001b180
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov dword [edx + 4], ecx
mov dword [ecx], edx
lea ecx, [ebp - 0x28]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov eax, dword [esi + 4]
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0x64], ecx
push 3
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x2c]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
mov ecx, dword [ebp - 0x64]
mov edx, dword [esi]
mov dword [ebp - 0x20], edx
mov eax, dword [ecx]
cmp eax, edx
je 0x1005ce2d
test eax, eax
je 0x1005ce22
call fcn.1001b180
mov ecx, dword [ebp - 0x64]
mov edx, dword [ebp - 0x20]
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov dword [edx + 4], ecx
mov dword [ecx], edx
lea ecx, [ebp - 0x2c]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xcc]
call fcn.10027830
mov ecx, dword [esi + 8]
add esp, 0x18
mov dword [ebp - 0xf4], ecx
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0xfc], 0
push 3
mov dword [ebp - 0xf8], 0
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
test esi, esi
jne 0x1005cf09
mov esi, dword [ebp - 0xfc]
test esi, esi
je 0x1005cfbd
mov eax, dword [esi + 4]
add esi, 4
test eax, eax
je 0x1005ceac
lea ecx, [ebp - 0xfc]
cmp eax, ecx
je 0x1005cea7
mov esi, dword [esi]
add esi, 4
mov eax, dword [esi]
test eax, eax
jne 0x1005ce92
cmp dword [esi], 0
jne 0x1005cef2
push str.ITERATOR_LIST_CORRUPTED_
push 0x100b9568
push 0
push 0x536
push 0x100b9570
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x1005ced3
int3
push 0
push 0x536
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
push 0x100b969c
push str._ITERATOR_LIST_CORRUPTED__
call dword [sym.imp.ucrtbased.dll__invalid_parameter]
add esp, 0x14
mov eax, dword [ebp - 0xf8]
mov dword [esi], eax
mov dword [ebp - 0xfc], 0
jmp 0x1005cfbd
mov ecx, dword [esi]
mov esi, dword [ebp - 0xfc]
mov dword [ebp - 0x20], ecx
cmp esi, ecx
je 0x1005cfbd
test esi, esi
je 0x1005cfa5
mov eax, dword [esi + 4]
add esi, 4
test eax, eax
je 0x1005cf4a
nop
lea edx, [ebp - 0xfc]
cmp eax, edx
je 0x1005cf45
mov esi, dword [esi]
add esi, 4
mov eax, dword [esi]
test eax, eax
jne 0x1005cf30
cmp dword [esi], 0
jne 0x1005cf93
push str.ITERATOR_LIST_CORRUPTED_
push 0x100b9568
push 0
push 0x536
push 0x100b9570
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x1005cf71
int3
push 0
push 0x536
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
push 0x100b969c
push str._ITERATOR_LIST_CORRUPTED__
call dword [sym.imp.ucrtbased.dll__invalid_parameter]
mov ecx, dword [ebp - 0x20]
add esp, 0x14
mov eax, dword [ebp - 0xf8]
mov dword [esi], eax
mov dword [ebp - 0xfc], 0
mov eax, dword [ecx + 4]
mov dword [ebp - 0xf8], eax
lea eax, [ebp - 0xfc]
mov dword [ecx + 4], eax
mov dword [ebp - 0xfc], ecx
mov esi, dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
lea ecx, [ebp - 0x30]
call esi
mov ecx, dword [ebp - 0x64]
lea eax, [ebp - 0xfc]
push eax
call fcn.10025a60
push 3
lea ecx, [ebp - 0x34]
mov byte [ebp - 0x39], al
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
mov ecx, dword [ebp - 0xfc]
test ecx, ecx
je 0x1005d078
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
test eax, eax
je 0x1005d01a
nop dword [eax]
lea ecx, [ebp - 0xfc]
cmp eax, ecx
je 0x1005d015
mov esi, dword [esi]
add esi, 4
mov eax, dword [esi]
test eax, eax
jne 0x1005d000
cmp dword [esi], 0
jne 0x1005d060
push str.ITERATOR_LIST_CORRUPTED_
push 0x100b9568
push 0
push 0x536
push 0x100b9570
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x1005d041
int3
push 0
push 0x536
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
push 0x100b969c
push str._ITERATOR_LIST_CORRUPTED__
call dword [sym.imp.ucrtbased.dll__invalid_parameter]
add esp, 0x14
mov eax, dword [ebp - 0xf8]
mov dword [esi], eax
mov esi, dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov dword [ebp - 0xfc], 0
lea ecx, [ebp - 0x34]
call esi
push 3
lea ecx, [ebp - 0x24]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0xcc]
call fcn.1001b180
lea ecx, [ebp - 0x24]
call esi
mov ecx, dword [edi + 0xdc]
lea esi, [edi + 0xe8]
sub ecx, dword [edi + 0xd8]
mov eax, 0x92492493
imul ecx
add edx, ecx
mov ecx, dword [ebp - 0x1c]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jae 0x1005d0f2
mov eax, dword [edi + 0xf0]
cmp eax, dword [edi + 0xf4]
je 0x1005d0e6
mov dword [eax], ecx
mov ecx, esi
mov eax, dword [esi + 8]
push eax
push eax
call fcn.10028c10
add dword [esi + 8], 4
jmp 0x1005d0f2
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.100286e0
cmp byte [ebp - 0x39], 0
je 0x1005d104
mov eax, dword [edi + 0xa8]
test eax, eax
je 0x1005d104
call eax
mov ecx, dword [ebp - 0x40]
add ecx, 4
mov dword [ebp - 0x40], ecx
cmp ecx, dword [ebp - 0x18]
jne 0x1005cd83
lea ecx, [ebp - 0x88]
call fcn.10026c50
mov eax, dword [ebp - 0x88]
push 8
push eax
mov dword [ebp - 0x88], 0
call fcn.100ad380
add esp, 8
lea ecx, [ebp - 0x344]
call fcn.10026f90
mov eax, dword [ebp - 0x344]
push 8
push eax
mov dword [ebp - 0x344], 0
call fcn.100ad380
add esp, 8
lea ecx, [ebp - 0x360]
call fcn.10026f90
mov eax, dword [ebp - 0x360]
push 8
push eax
mov dword [ebp - 0x360], 0
call fcn.100ad380
add esp, 8
lea ecx, [ebp - 0x78]
call fcn.1004fac0
mov eax, dword [ebp - 0x78]
push 8
push eax
mov dword [ebp - 0x78], 0
call fcn.100ad380
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0xc0]
push fcn.10026a00
push 2
push 0x1c
push eax
call fcn.100acb70
mov dword [edi + 0x50], 0
lea eax, [edi + 0x38]
mov dword [edi + 0x3c], 0x14
lea ecx, [ebp - 0x18]
mov dword [edi + 0x44], 0xaf
mov dword [ebp - 0x18], eax
mov eax, dword [edi + 0x34]
push ecx
lea ecx, [edi + 0x1c]
mov dword [edi + 0x54], eax
call fcn.1004f6a0
push 9
xorps xmm0, xmm0
mov dword [ebp - 0x184], 0
push str.box_enemy
lea ecx, [ebp - 0x184]
mov dword [ebp - 0x170], 0
lea esi, [edi + 0xfc]
mov dword [ebp - 0x16c], 0
movups xmmword [ebp - 0x180], xmm0
call fcn.10027ad0
mov dword [ebp - 4], 8
lea ecx, [ebp - 0x168]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x168], 0
push str.box_enemy_color
movups xmmword [ebp - 0x164], xmm0
mov dword [ebp - 0x154], 0
mov dword [ebp - 0x150], 0
call fcn.10027ad0
lea ecx, [edi + 0x198]
mov byte [ebp - 4], 9
lea eax, [ebp - 0x168]
cmp ecx, eax
je 0x1005d2a3
cmp dword [ebp - 0x150], 0xf
lea eax, [ebp - 0x164]
push dword [ebp - 0x154]
cmova eax, dword [ebp - 0x164]
push eax
call fcn.10027070
lea ecx, [edi + 0x138]
lea eax, [ebp - 0x184]
cmp ecx, eax
je 0x1005d2d3
cmp dword [ebp - 0x16c], 0xf
lea eax, [ebp - 0x180]
push dword [ebp - 0x170]
cmova eax, dword [ebp - 0x180]
push eax
call fcn.10027070
lea ecx, [ebp - 0x168]
mov dword [edi + 0x1b4], 0xff3cc896
mov dword [edi + 0x188], 0x3f800000
mov dword [edi + 0x1b8], 0
call fcn.10026f90
mov eax, dword [ebp - 0x168]
push 8
push eax
mov dword [ebp - 0x168], 0
call fcn.100ad380
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x184]
call fcn.10026f90
mov eax, dword [ebp - 0x184]
push 8
push eax
mov dword [ebp - 0x184], 0
call fcn.100ad380
mov dword [edi + 0x114], 0
lea ecx, [edi + 0x1c]
mov dword [edi + 0x100], 0x14
add esp, 8
mov dword [edi + 0x108], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x118], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.1004f6a0
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0x1bc], 0
push str.box_friendly
lea ecx, [ebp - 0x1bc]
mov dword [ebp - 0x1a8], 0
lea esi, [edi + 0x1bc]
mov dword [ebp - 0x1a4], 0
movups xmmword [ebp - 0x1b8], xmm0
call fcn.10027ad0
mov dword [ebp - 4], 0xa
lea ecx, [ebp - 0x1a0]
push 0x12
xorps xmm0, xmm0
mov dword [ebp - 0x1a0], 0
push str.box_friendly_color
movups xmmword [ebp - 0x19c], xmm0
mov dword [ebp - 0x18c], 0
mov dword [ebp - 0x188], 0
call fcn.10027ad0
lea ecx, [edi + 0x258]
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x1a0]
cmp ecx, eax
je 0x1005d42f
cmp dword [ebp - 0x188], 0xf
lea eax, [ebp - 0x19c]
push dword [ebp - 0x18c]
cmova eax, dword [ebp - 0x19c]
push eax
call fcn.10027070
lea ecx, [edi + 0x1f8]
lea eax, [ebp - 0x1bc]
cmp ecx, eax
je 0x1005d45f
cmp dword [ebp - 0x1a4], 0xf
lea eax, [ebp - 0x1b8]
push dword [ebp - 0x1a8]
cmova eax, dword [ebp - 0x1b8]
push eax
call fcn.10027070
lea ecx, [ebp - 0x1a0]
mov dword [edi + 0x274], 0xff00c8ff
mov dword [edi + 0x248], 0x3f800000
mov dword [edi + 0x278], 0
call fcn.10026f90
mov eax, dword [ebp - 0x1a0]
push 8
push eax
mov dword [ebp - 0x1a0], 0
call fcn.100ad380
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1bc]
call fcn.10026f90
mov eax, dword [ebp - 0x1bc]
push 8
push eax
mov dword [ebp - 0x1bc], 0
call fcn.100ad380
mov dword [edi + 0x1d4], 0
lea ecx, [edi + 0x1c]
mov dword [edi + 0x1c0], 0x14
add esp, 8
mov dword [edi + 0x1c8], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x1d8], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.1004f6a0
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x1f4], 0
push str.dormant
lea ecx, [ebp - 0x1f4]
mov dword [ebp - 0x1e0], 0
lea esi, [edi + 0x27c]
mov dword [ebp - 0x1dc], 0
movups xmmword [ebp - 0x1f0], xmm0
call fcn.10027ad0
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x1d8]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x1d8], 0
push str.dormant_enemies
movups xmmword [ebp - 0x1d4], xmm0
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1c0], 0
call fcn.10027ad0
lea ecx, [edi + 0x2b8]
mov byte [ebp - 4], 0xd
lea eax, [ebp - 0x1f4]
cmp ecx, eax
je 0x1005d5bb
cmp dword [ebp - 0x1dc], 0xf
lea eax, [ebp - 0x1f0]
push dword [ebp - 0x1e0]
cmova eax, dword [ebp - 0x1f0]
push eax
call fcn.10027070
lea ecx, [edi + 0x2fc]
mov byte [edi + 0x2f1], 1
lea eax, [ebp - 0x1d8]
cmp ecx, eax
je 0x1005d5f2
cmp dword [ebp - 0x1c0], 0xf
lea eax, [ebp - 0x1d4]
push dword [ebp - 0x1c4]
cmova eax, dword [ebp - 0x1d4]
push eax
call fcn.10027070
lea ecx, [ebp - 0x1d8]
mov byte [edi + 0x2f8], 0
call fcn.10026f90
mov eax, dword [ebp - 0x1d8]
push 8
push eax
mov dword [ebp - 0x1d8], 0
call fcn.100ad380
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1f4]
call fcn.10026f90
mov eax, dword [ebp - 0x1f4]
push 8
push eax
mov dword [ebp - 0x1f4], 0
call fcn.100ad380
mov dword [edi + 0x294], 0
lea ecx, [edi + 0x1c]
mov dword [edi + 0x280], 0x14
add esp, 8
mov dword [edi + 0x288], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x298], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.1004f6a0
push 9
xorps xmm0, xmm0
mov dword [ebp - 0x22c], 0
push str.offscreen
lea ecx, [ebp - 0x22c]
mov dword [ebp - 0x218], 0
lea esi, [edi + 0x318]
mov dword [ebp - 0x214], 0
movups xmmword [ebp - 0x228], xmm0
call fcn.10027ad0
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0x210]
push 0x13
xorps xmm0, xmm0
mov dword [ebp - 0x210], 0
push str.enemy_offscreen_esp
movups xmmword [ebp - 0x20c], xmm0
mov dword [ebp - 0x1fc], 0
mov dword [ebp - 0x1f8], 0
call fcn.10027ad0
lea ecx, [edi + 0x354]
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x22c]
cmp ecx, eax
je 0x1005d737
cmp dword [ebp - 0x214], 0xf
lea eax, [ebp - 0x228]
push dword [ebp - 0x218]
cmova eax, dword [ebp - 0x228]
push eax
call fcn.10027070
lea ecx, [edi + 0x398]
mov byte [edi + 0x38d], 1
lea eax, [ebp - 0x210]
cmp ecx, eax
je 0x1005d76e
cmp dword [ebp - 0x1f8], 0xf
lea eax, [ebp - 0x20c]
push dword [ebp - 0x1fc]
cmova eax, dword [ebp - 0x20c]
push eax
call fcn.10027070
lea ecx, [ebp - 0x210]
mov byte [edi + 0x394], 0
call fcn.10026f90
mov eax, dword [ebp - 0x210]
push 8
push eax
mov dword [ebp - 0x210], 0
call fcn.100ad380
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x22c]
call fcn.10026f90
mov eax, dword [ebp - 0x22c]
push 8
push eax
mov dword [ebp - 0x22c], 0
call fcn.100ad380
mov dword [edi + 0x330], 0
lea ecx, [edi + 0x1c]
mov dword [edi + 0x31c], 0x14
add esp, 8
mov dword [edi + 0x324], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x334], eax
lea eax, [ebp - 0x18]
push eax
mov dword [ebp - 0x18], esi
call fcn.1004f6a0
mov esi, dword [0x100bdc2c]
lea ecx, [ebp - 0x264]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x264], 0
push str.offscreen_color
movups xmmword [ebp - 0x260], xmm0
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 0
call fcn.10027ad0
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0x248]
push 0x13
xorps xmm0, xmm0
mov dword [ebp - 0x248], 0
push str.offscreen_esp_color
movups xmmword [ebp - 0x244], xmm0
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x230], 0
call fcn.10027ad0
lea ecx, [edi + 0x450]
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0x248]
cmp ecx, eax
je 0x1005d8b3
cmp dword [ebp - 0x230], 0xf
lea eax, [ebp - 0x244]
push dword [ebp - 0x234]
cmova eax, dword [ebp - 0x244]
push eax
call fcn.10027070
lea ecx, [edi + 0x3f0]
lea eax, [ebp - 0x264]
cmp ecx, eax
je 0x1005d8e3
cmp dword [ebp - 0x24c], 0xf
lea eax, [ebp - 0x260]
push dword [ebp - 0x250]
cmova eax, dword [ebp - 0x260]
push eax
call fcn.10027070
mov dword [edi + 0x46c], esi
lea ecx, [ebp - 0x248]
shr esi, 0x18
mov dword [edi + 0x470], 0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100c25e4]
movss dword [edi + 0x440], xmm0
call fcn.10026f90
mov eax, dword [ebp - 0x248]
push 8
push eax
mov dword [ebp - 0x248], 0
call fcn.100ad380
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x264]
call fcn.10026f90
mov eax, dword [ebp - 0x264]
push 8
push eax
mov dword [ebp - 0x264], 0
call fcn.100ad380
mov dword [edi + 0x3cc], 0
lea eax, [edi + 0x3b4]
mov dword [edi + 0x3b8], 0x14
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x18], eax
add esp, 8
mov dword [edi + 0x3c0], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x3d0], eax
lea eax, [ebp - 0x18]
push eax
call fcn.1004f6a0
push 5
xorps xmm0, xmm0
mov dword [ebp - 0xc0], 0
push str.enemy
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0xac], 0
movups xmmword [ebp - 0xbc], xmm0
mov dword [ebp - 0xa8], 0
call fcn.10027ad0
mov dword [ebp - 4], 0x12
lea ecx, [ebp - 0xa4]
push 8
xorps xmm0, xmm0
mov dword [ebp - 0xa4], 0
push str.friendly
movups xmmword [ebp - 0xa0], xmm0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0
call fcn.10027ad0
lea eax, [ebp - 0x88]
mov dword [ebp - 4], 0x13
lea ecx, [ebp - 0xc0]
push eax
push ecx
push ecx
lea ecx, [ebp - 0x78]
call fcn.1007db30
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x29c]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x29c], 0
push str.name
movups xmmword [ebp - 0x298], xmm0
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x284], 0
call fcn.10027ad0
mov byte [ebp - 4], 0x15
xorps xmm0, xmm0
mov dword [ebp - 0x280], 0
movups xmmword [ebp - 0x27c], xmm0
mov dword [ebp - 0x26c], 0
push 4
push str.name
lea ecx, [ebp - 0x280]
mov dword [ebp - 0x268], 0
call fcn.10027ad0
xorps xmm0, xmm0
mov byte [ebp - 4], 0x17
push 8
movups xmmword [ebp - 0x88], xmm0
call fcn.100acb20
lea ecx, [ebp - 0x88]
add esp, 4
mov dword [eax + 4], 0
mov dword [ebp - 0x88], eax
mov dword [eax], ecx
lea ecx, [edi + 0x4b0]
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x29c]
cmp ecx, eax
je 0x1005db12
cmp dword [ebp - 0x284], 0xf
lea eax, [ebp - 0x298]
push dword [ebp - 0x288]
cmova eax, dword [ebp - 0x298]
push eax
call fcn.10027070
lea ecx, [edi + 0x4f4]
mov byte [edi + 0x4e9], 1
lea eax, [ebp - 0x280]
cmp ecx, eax
je 0x1005db49
cmp dword [ebp - 0x268], 0xf
lea eax, [ebp - 0x27c]
push dword [ebp - 0x26c]
cmova eax, dword [ebp - 0x27c]
push eax
call fcn.10027070
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0x4e9], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x534], eax
add eax, 0x14
mov dword [edi + 0x484], eax
mov dword [edi + 0x488], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x1005dbcd
lea eax, [edi + 0x510]
mov ecx, dword [edi + 0x518]
push esi
cmp ecx, dword [edi + 0x51c]
je 0x1005dbb7
call fcn.1002c0e0
mov eax, dword [edi + 0x518]
lea ecx, [edi + 0x510]
push eax
push eax
call fcn.10028c10
add dword [edi + 0x518], 0x1c
lea eax, [edi + 0x510]
jmp 0x1005dbc5
push ecx
mov ecx, eax
call fcn.100507e0
lea eax, [edi + 0x510]
add esi, 0x1c
cmp esi, dword [ebp - 0x18]
jne 0x1005db81
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x38], ecx
cmp eax, ecx
je 0x1005df86
lea esi, [edi + 0x524]
nop word [eax + eax]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0x1c], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x40], ecx
push 3
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x24]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
mov ecx, dword [ebp - 0x40]
mov edx, dword [esi]
mov dword [ebp - 0x18], edx
mov eax, dword [ecx]
cmp eax, edx
je 0x1005dc43
test eax, eax
je 0x1005dc38
call fcn.1001b180
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x18]
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov dword [edx + 4], ecx
mov dword [ecx], edx
lea ecx, [ebp - 0x24]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov eax, dword [esi + 4]
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0x40], ecx
push 3
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
mov ecx, dword [ebp - 0x40]
mov edx, dword [esi]
mov dword [ebp - 0x18], edx
mov eax, dword [ecx]
cmp eax, edx
je 0x1005dc9a
test eax, eax
je 0x1005dc8f
call fcn.1001b180
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x18]
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov dword [edx + 4], ecx
mov dword [ecx], edx
lea ecx, [ebp - 0x34]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xcc]
call fcn.10027830
mov ecx, dword [esi + 8]
add esp, 0x18
mov dword [ebp - 0x100], ecx
lea ecx, [ebp - 0x30]
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x108], 0
push 3
mov dword [ebp - 0x104], 0
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
test esi, esi
jne 0x1005dd77
mov esi, dword [ebp - 0x108]
test esi, esi
je 0x1005de2d
mov eax, dword [esi + 4]
add esi, 4
test eax, eax
je 0x1005dd1a
nop
lea ecx, [ebp - 0x108]
cmp eax, ecx
je 0x1005dd15
mov esi, dword [esi]
add esi, 4
mov eax, dword [esi]
test eax, eax
jne 0x1005dd00
cmp dword [esi], 0
jne 0x1005dd60
push str.ITERATOR_LIST_CORRUPTED_
push 0x100b9568
push 0
push 0x536
push 0x100b9570
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x1005dd41
int3
push 0
push 0x536
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
push 0x100b969c
push str._ITERATOR_LIST_CORRUPTED__
call dword [sym.imp.ucrtbased.dll__invalid_parameter]
add esp, 0x14
mov eax, dword [ebp - 0x104]
mov dword [esi], eax
mov dword [ebp - 0x108], 0
jmp 0x1005de2d
mov ecx, dword [esi]
mov esi, dword [ebp - 0x108]
mov dword [ebp - 0x18], ecx
cmp esi, ecx
je 0x1005de2d
test esi, esi
je 0x1005de15
mov eax, dword [esi + 4]
add esi, 4
test eax, eax
je 0x1005ddba
nop dword [eax]
lea edx, [ebp - 0x108]
cmp eax, edx
je 0x1005ddb5
mov esi, dword [esi]
add esi, 4
mov eax, dword [esi]
test eax, eax
jne 0x1005dda0
cmp dword [esi], 0
jne 0x1005de03
push str.ITERATOR_LIST_CORRUPTED_
push 0x100b9568
push 0
push 0x536
push 0x100b9570
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x1005dde1
int3
push 0
push 0x536
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
push 0x100b969c
push str._ITERATOR_LIST_CORRUPTED__
call dword [sym.imp.ucrtbased.dll__invalid_parameter]
mov ecx, dword [ebp - 0x18]
add esp, 0x14
mov eax, dword [ebp - 0x104]
mov dword [esi], eax
mov dword [ebp - 0x108], 0
mov eax, dword [ecx + 4]
mov dword [ebp - 0x104], eax
lea eax, [ebp - 0x108]
mov dword [ecx + 4], eax
mov dword [ebp - 0x108], ecx
mov esi, dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
lea ecx, [ebp - 0x30]
call esi
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x108]
push eax
call fcn.10025a60
push 3
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x39], al
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
mov ecx, dword [ebp - 0x108]
test ecx, ecx
je 0x1005dee8
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
test eax, eax
je 0x1005de8a
nop dword [eax]
lea ecx, [ebp - 0x108]
cmp eax, ecx
je 0x1005de85
mov esi, dword [esi]
add esi, 4
mov eax, dword [esi]
test eax, eax
jne 0x1005de70
cmp dword [esi], 0
jne 0x1005ded0
push str.ITERATOR_LIST_CORRUPTED_
push 0x100b9568
push 0
push 0x536
push 0x100b9570
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x1005deb1
int3
push 0
push 0x536
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
push 0x100b969c
push str._ITERATOR_LIST_CORRUPTED__
call dword [sym.imp.ucrtbased.dll__invalid_parameter]
add esp, 0x14
mov eax, dword [ebp - 0x104]
mov dword [esi], eax
mov esi, dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov dword [ebp - 0x108], 0
lea ecx, [ebp - 0x28]
call esi
push 3
lea ecx, [ebp - 0x20]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0xcc]
call fcn.1001b180
lea ecx, [ebp - 0x20]
call esi
mov ecx, dword [edi + 0x518]
lea esi, [edi + 0x524]
sub ecx, dword [edi + 0x514]
mov eax, 0x92492493
imul ecx
add edx, ecx
mov ecx, dword [ebp - 0x1c]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jae 0x1005df62
mov eax, dword [edi + 0x52c]
cmp eax, dword [edi + 0x530]
je 0x1005df56
mov dword [eax], ecx
mov ecx, esi
mov eax, dword [esi + 8]
push eax
push eax
call fcn.10028c10
add dword [esi + 8], 4
jmp 0x1005df62
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.100286e0
cmp byte [ebp - 0x39], 0
je 0x1005df74
mov eax, dword [edi + 0x4e4]
test eax, eax
je 0x1005df74
call eax
mov eax, dword [ebp - 0x64]
add eax, 4
mov dword [ebp - 0x64], eax
cmp eax, dword [ebp - 0x38]
jne 0x1005dbf0
lea ecx, [ebp - 0x88]
call fcn.10026c50
mov eax, dword [ebp - 0x88]
push 8
push eax
mov dword [ebp - 0x88], 0
call fcn.100ad380
add esp, 8
lea ecx, [ebp - 0x280]
call fcn.10026f90
mov eax, dword [ebp - 0x280]
push 8
push eax
mov dword [ebp - 0x280], 0
call fcn.100ad380
add esp, 8
lea ecx, [ebp - 0x29c]
call fcn.10026f90
mov eax, dword [ebp - 0x29c]
push 8
push eax
mov dword [ebp - 0x29c], 0
call fcn.100ad380
add esp, 8
lea ecx, [ebp - 0x78]
call fcn.1004fac0
mov eax, dword [ebp - 0x78]
push 8
push eax
mov dword [ebp - 0x78], 0
call fcn.100ad380
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0xc0]
push fcn.10026a00
push 2
push 0x1c
push eax
call fcn.100acb70
mov dword [edi + 0x48c], 0
lea eax, [edi + 0x474]
mov dword [edi + 0x478], 0x14
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x38], eax
mov dword [edi + 0x480], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x490], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
mov esi, dword [0x100bdc2c]
lea ecx, [ebp - 0x2d4]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x2d4], 0
push 0x100bf9e0
movups xmmword [ebp - 0x2d0], xmm0
mov dword [ebp - 0x2c0], 0
mov dword [ebp - 0x2bc], 0
call fcn.10027ad0
mov dword [ebp - 4], 0x19
lea ecx, [ebp - 0x2b8]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x2b8], 0
push str.name_color
movups xmmword [ebp - 0x2b4], xmm0
mov dword [ebp - 0x2a4], 0
mov dword [ebp - 0x2a0], 0
call fcn.10027ad0
lea ecx, [edi + 0x5d4]
mov byte [ebp - 4], 0x1a
lea eax, [ebp - 0x2b8]
cmp ecx, eax
je 0x1005e122
cmp dword [ebp - 0x2a0], 0xf
lea eax, [ebp - 0x2b4]
push dword [ebp - 0x2a4]
cmova eax, dword [ebp - 0x2b4]
push eax
call fcn.10027070
lea ecx, [edi + 0x574]
lea eax, [ebp - 0x2d4]
cmp ecx, eax
je 0x1005e152
cmp dword [ebp - 0x2bc], 0xf
lea eax, [ebp - 0x2d0]
push dword [ebp - 0x2c0]
cmova eax, dword [ebp - 0x2d0]
push eax
call fcn.10027070
mov dword [edi + 0x5f0], esi
lea ecx, [ebp - 0x2b8]
shr esi, 0x18
mov dword [edi + 0x5f4], 0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100c25e4]
movss dword [edi + 0x5c4], xmm0
call fcn.10026f90
mov eax, dword [ebp - 0x2b8]
push 8
push eax
mov dword [ebp - 0x2b8], 0
call fcn.100ad380
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2d4]
call fcn.10026f90
mov eax, dword [ebp - 0x2d4]
push 8
push eax
mov dword [ebp - 0x2d4], 0
call fcn.100ad380
mov dword [edi + 0x550], 0
lea eax, [edi + 0x538]
mov dword [edi + 0x53c], 0x14
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x38], eax
add esp, 8
mov dword [edi + 0x544], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x554], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
push 5
xorps xmm0, xmm0
mov dword [ebp - 0xc0], 0
push str.enemy
lea ecx, [ebp - 0xc0]
mov dword [ebp - 0xac], 0
movups xmmword [ebp - 0xbc], xmm0
mov dword [ebp - 0xa8], 0
call fcn.10027ad0
mov dword [ebp - 4], 0x1b
lea ecx, [ebp - 0xa4]
push 8
xorps xmm0, xmm0
mov dword [ebp - 0xa4], 0
push str.friendly
movups xmmword [ebp - 0xa0], xmm0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0
call fcn.10027ad0
lea eax, [ebp - 0x88]
mov dword [ebp - 4], 0x1c
lea ecx, [ebp - 0xc0]
push eax
push ecx
push ecx
lea ecx, [ebp - 0x78]
call fcn.1007db30
mov byte [ebp - 4], 0x1d
lea ecx, [ebp - 0x30c]
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x30c], 0
push str.health
movups xmmword [ebp - 0x308], xmm0
mov dword [ebp - 0x2f8], 0
mov dword [ebp - 0x2f4], 0
call fcn.10027ad0
mov byte [ebp - 4], 0x1e
xorps xmm0, xmm0
mov dword [ebp - 0x2f0], 0
movups xmmword [ebp - 0x2ec], xmm0
mov dword [ebp - 0x2dc], 0
push 6
push str.health
lea ecx, [ebp - 0x2f0]
mov dword [ebp - 0x2d8], 0
call fcn.10027ad0
xorps xmm0, xmm0
mov byte [ebp - 4], 0x20
push 8
movups xmmword [ebp - 0x88], xmm0
call fcn.100acb20
lea ecx, [ebp - 0x88]
add esp, 4
mov dword [eax + 4], 0
mov dword [ebp - 0x88], eax
mov dword [eax], ecx
lea ecx, [edi + 0x634]
mov byte [ebp - 4], 0x21
lea eax, [ebp - 0x30c]
cmp ecx, eax
je 0x1005e381
cmp dword [ebp - 0x2f4], 0xf
lea eax, [ebp - 0x308]
push dword [ebp - 0x2f8]
cmova eax, dword [ebp - 0x308]
push eax
call fcn.10027070
lea ecx, [edi + 0x678]
mov byte [edi + 0x66d], 1
lea eax, [ebp - 0x2f0]
cmp ecx, eax
je 0x1005e3b8
cmp dword [ebp - 0x2d8], 0xf
lea eax, [ebp - 0x2ec]
push dword [ebp - 0x2dc]
cmova eax, dword [ebp - 0x2ec]
push eax
call fcn.10027070
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0x66d], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x6b8], eax
add eax, 0x14
mov dword [edi + 0x608], eax
mov dword [edi + 0x60c], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x38], eax
cmp esi, eax
je 0x1005e43c
lea eax, [edi + 0x694]
mov ecx, dword [edi + 0x69c]
push esi
cmp ecx, dword [edi + 0x6a0]
je 0x1005e426
call fcn.1002c0e0
mov eax, dword [edi + 0x69c]
lea ecx, [edi + 0x694]
push eax
push eax
call fcn.10028c10
add dword [edi + 0x69c], 0x1c
lea eax, [edi + 0x694]
jmp 0x1005e434
push ecx
mov ecx, eax
call fcn.100507e0
lea eax, [edi + 0x694]
add esi, 0x1c
cmp esi, dword [ebp - 0x38]
jne 0x1005e3f0
mov eax, dword [ebp - 0x84]
mov ecx, dword [ebp - 0x80]
mov dword [ebp - 0x64], eax
mov dword [ebp - 0x20], ecx
cmp eax, ecx
je 0x1005e7f6
lea esi, [edi + 0x6a8]
nop dword [eax]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0x1c], eax
mov eax, dword [esi + 8]
mov dword [ebp - 0x40], ecx
push 3
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x18]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
mov ecx, dword [ebp - 0x40]
mov edx, dword [esi]
mov dword [ebp - 0x38], edx
mov eax, dword [ecx]
cmp eax, edx
je 0x1005e4b3
test eax, eax
je 0x1005e4a8
call fcn.1001b180
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x38]
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov dword [edx + 4], ecx
mov dword [ecx], edx
lea ecx, [ebp - 0x18]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov eax, dword [esi + 4]
sub esp, 0xc
mov ecx, esp
mov dword [ebp - 0x40], ecx
push 3
mov dword [ecx], 0
mov dword [ecx + 4], 0
mov dword [ecx + 8], eax
lea ecx, [ebp - 0x24]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
mov ecx, dword [ebp - 0x40]
mov edx, dword [esi]
mov dword [ebp - 0x38], edx
mov eax, dword [ecx]
cmp eax, edx
je 0x1005e50a
test eax, eax
je 0x1005e4ff
call fcn.1001b180
mov ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x38]
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov dword [edx + 4], ecx
mov dword [ecx], edx
lea ecx, [ebp - 0x24]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xcc]
call fcn.10027830
mov ecx, dword [esi + 8]
add esp, 0x18
mov dword [ebp - 0x10c], ecx
lea ecx, [ebp - 0x34]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x114], 0
push 3
mov dword [ebp - 0x110], 0
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
test esi, esi
jne 0x1005e5e7
mov esi, dword [ebp - 0x114]
test esi, esi
je 0x1005e69d
mov eax, dword [esi + 4]
add esi, 4
test eax, eax
je 0x1005e58a
nop
lea ecx, [ebp - 0x114]
cmp eax, ecx
je 0x1005e585
mov esi, dword [esi]
add esi, 4
mov eax, dword [esi]
test eax, eax
jne 0x1005e570
cmp dword [esi], 0
jne 0x1005e5d0
push str.ITERATOR_LIST_CORRUPTED_
push 0x100b9568
push 0
push 0x536
push 0x100b9570
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x1005e5b1
int3
push 0
push 0x536
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
push 0x100b969c
push str._ITERATOR_LIST_CORRUPTED__
call dword [sym.imp.ucrtbased.dll__invalid_parameter]
add esp, 0x14
mov eax, dword [ebp - 0x110]
mov dword [esi], eax
mov dword [ebp - 0x114], 0
jmp 0x1005e69d
mov ecx, dword [esi]
mov esi, dword [ebp - 0x114]
mov dword [ebp - 0x38], ecx
cmp esi, ecx
je 0x1005e69d
test esi, esi
je 0x1005e685
mov eax, dword [esi + 4]
add esi, 4
test eax, eax
je 0x1005e62a
nop dword [eax]
lea edx, [ebp - 0x114]
cmp eax, edx
je 0x1005e625
mov esi, dword [esi]
add esi, 4
mov eax, dword [esi]
test eax, eax
jne 0x1005e610
cmp dword [esi], 0
jne 0x1005e673
push str.ITERATOR_LIST_CORRUPTED_
push 0x100b9568
push 0
push 0x536
push 0x100b9570
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x1005e651
int3
push 0
push 0x536
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
push 0x100b969c
push str._ITERATOR_LIST_CORRUPTED__
call dword [sym.imp.ucrtbased.dll__invalid_parameter]
mov ecx, dword [ebp - 0x38]
add esp, 0x14
mov eax, dword [ebp - 0x110]
mov dword [esi], eax
mov dword [ebp - 0x114], 0
mov eax, dword [ecx + 4]
mov dword [ebp - 0x110], eax
lea eax, [ebp - 0x114]
mov dword [ecx + 4], eax
mov dword [ebp - 0x114], ecx
mov esi, dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
lea ecx, [ebp - 0x34]
call esi
mov ecx, dword [ebp - 0x30]
lea eax, [ebp - 0x114]
push eax
call fcn.10025a60
push 3
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x39], al
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
mov ecx, dword [ebp - 0x114]
test ecx, ecx
je 0x1005e758
mov eax, dword [ecx + 4]
lea esi, [ecx + 4]
test eax, eax
je 0x1005e6fa
nop dword [eax]
lea ecx, [ebp - 0x114]
cmp eax, ecx
je 0x1005e6f5
mov esi, dword [esi]
add esi, 4
mov eax, dword [esi]
test eax, eax
jne 0x1005e6e0
cmp dword [esi], 0
jne 0x1005e740
push str.ITERATOR_LIST_CORRUPTED_
push 0x100b9568
push 0
push 0x536
push 0x100b9570
push 2
call dword [sym.imp.ucrtbased.dll__CrtDbgReport]
add esp, 0x18
cmp eax, 1
jne 0x1005e721
int3
push 0
push 0x536
push str.C:Program_FilesMicrosoft_Visual_Studio2022CommunityVCToolsMSVC14.40.33807includexmemory
push 0x100b969c
push str._ITERATOR_LIST_CORRUPTED__
call dword [sym.imp.ucrtbased.dll__invalid_parameter]
add esp, 0x14
mov eax, dword [ebp - 0x110]
mov dword [esi], eax
mov esi, dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::destructor_void_]
mov dword [ebp - 0x114], 0
lea ecx, [ebp - 0x2c]
call esi
push 3
lea ecx, [ebp - 0x28]
call dword [sym.imp.MSVCP140D.dll_public:_void___thiscall_std::_Lockit::constructor_int_]
lea ecx, [ebp - 0xcc]
call fcn.1001b180
lea ecx, [ebp - 0x28]
call esi
mov ecx, dword [edi + 0x69c]
lea esi, [edi + 0x6a8]
sub ecx, dword [edi + 0x698]
mov eax, 0x92492493
imul ecx
add edx, ecx
mov ecx, dword [ebp - 0x1c]
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
jae 0x1005e7d2
mov eax, dword [edi + 0x6b0]
cmp eax, dword [edi + 0x6b4]
je 0x1005e7c6
mov dword [eax], ecx
mov ecx, esi
mov eax, dword [esi + 8]
push eax
push eax
call fcn.10028c10
add dword [esi + 8], 4
jmp 0x1005e7d2
lea ecx, [ebp - 0x1c]
push ecx
push eax
mov ecx, esi
call fcn.100286e0
cmp byte [ebp - 0x39], 0
je 0x1005e7e4
mov eax, dword [edi + 0x668]
test eax, eax
je 0x1005e7e4
call eax
mov eax, dword [ebp - 0x64]
add eax, 4
mov dword [ebp - 0x64], eax
cmp eax, dword [ebp - 0x20]
jne 0x1005e460
lea ecx, [ebp - 0x88]
call fcn.10026c50
mov eax, dword [ebp - 0x88]
push 8
push eax
mov dword [ebp - 0x88], 0
call fcn.100ad380
add esp, 8
lea ecx, [ebp - 0x2f0]
call fcn.10026f90
mov eax, dword [ebp - 0x2f0]
push 8
push eax
mov dword [ebp - 0x2f0], 0
call fcn.100ad380
add esp, 8
lea ecx, [ebp - 0x30c]
call fcn.10026f90
mov eax, dword [ebp - 0x30c]
push 8
push eax
mov dword [ebp - 0x30c], 0
call fcn.100ad380
add esp, 8
lea ecx, [ebp - 0x78]
call fcn.1004fac0
mov eax, dword [ebp - 0x78]
push 8
push eax
mov dword [ebp - 0x78], 0
call fcn.100ad380
add esp, 8
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0xc0]
push fcn.10026a00
push 2
push 0x1c
push eax
call fcn.100acb70
mov dword [edi + 0x610], 0
lea eax, [edi + 0x5f8]
mov dword [edi + 0x5fc], 0x14
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x38], eax
mov dword [edi + 0x604], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x614], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x408], 0
push str.money
lea ecx, [ebp - 0x408]
mov dword [ebp - 0x3f4], 0
movups xmmword [ebp - 0x404], xmm0
mov dword [ebp - 0x3f0], 0
call fcn.10027ad0
mov dword [ebp - 4], 0x22
lea ecx, [ebp - 0x3ec]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x3ec], 0
push str.armor
movups xmmword [ebp - 0x3e8], xmm0
mov dword [ebp - 0x3d8], 0
mov dword [ebp - 0x3d4], 0
call fcn.10027ad0
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x3d0]
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x3d0], 0
push str.scoped
movups xmmword [ebp - 0x3cc], xmm0
mov dword [ebp - 0x3bc], 0
mov dword [ebp - 0x3b8], 0
call fcn.10027ad0
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x3b4]
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x3b4], 0
push str.flashed
movups xmmword [ebp - 0x3b0], xmm0
mov dword [ebp - 0x3a0], 0
mov dword [ebp - 0x39c], 0
call fcn.10027ad0
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x398]
push 9
xorps xmm0, xmm0
mov dword [ebp - 0x398], 0
push str.reloading
movups xmmword [ebp - 0x394], xmm0
mov dword [ebp - 0x384], 0
mov dword [ebp - 0x380], 0
call fcn.10027ad0
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x37c]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x37c], 0
push str.bomb
movups xmmword [ebp - 0x378], xmm0
mov dword [ebp - 0x368], 0
mov dword [ebp - 0x364], 0
call fcn.10027ad0
lea eax, [ebp - 0x360]
mov dword [ebp - 4], 0x27
lea ecx, [ebp - 0x408]
push eax
push ecx
push ecx
lea ecx, [ebp - 0xe4]
call fcn.1007db30
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0xa4]
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0xa4], 0
push 0x100bfa2c
movups xmmword [ebp - 0xa0], xmm0
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0
call fcn.10027ad0
mov byte [ebp - 4], 0x29
lea ecx, [ebp - 0x60]
push 0xb
xorps xmm0, xmm0
mov dword [ebp - 0x60], 0
push str.flags_enemy
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x48], 0
call fcn.10027ad0
xorps xmm0, xmm0
mov byte [ebp - 4], 0x2b
push 8
movups xmmword [ebp - 0x78], xmm0
call fcn.100acb20
lea ecx, [ebp - 0x78]
add esp, 4
mov dword [eax + 4], 0
mov dword [ebp - 0x78], eax
mov dword [eax], ecx
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x2c
push eax
lea ecx, [edi + 0x6f8]
call fcn.100269d0
lea eax, [ebp - 0x60]
mov byte [edi + 0x731], 1
push eax
lea ecx, [edi + 0x73c]
call fcn.100269d0
mov esi, dword [ebp - 0xe0]
xor eax, eax
cmp byte [edi + 0x731], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x77c], eax
add eax, 0x14
mov dword [edi + 0x6cc], eax
mov dword [edi + 0x6d0], eax
mov eax, dword [ebp - 0xdc]
mov dword [ebp - 0x38], eax
cmp esi, eax
je 0x1005eb87
lea eax, [edi + 0x758]
mov edi, dword [ebp - 0x38]
mov dword [ebp - 0x18], eax
push esi
mov ecx, eax
call fcn.1004f5d0
mov eax, dword [ebp - 0x18]
add esi, 0x1c
cmp esi, edi
jne 0x1005eb72
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x70]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], ecx
cmp eax, ecx
je 0x1005ec47
lea esi, [edi + 0x76c]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x1c], eax
push esp
call fcn.10025ae0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10025b50
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x84]
call fcn.10027830
add esp, 0x18
lea ecx, [edi + 0x76c]
mov esi, eax
lea eax, [ebp - 0xcc]
push eax
call fcn.10025ae0
push eax
mov ecx, esi
call fcn.10025a60
lea ecx, [ebp - 0xcc]
mov byte [ebp - 0x39], al
call fcn.1001cc70
lea ecx, [ebp - 0x84]
call fcn.1001cc70
lea ecx, [edi + 0x758]
call fcn.1002c0c0
lea esi, [edi + 0x76c]
cmp dword [ebp - 0x1c], eax
jae 0x1005ec23
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.1003c440
cmp byte [ebp - 0x39], 0
je 0x1005ec35
mov eax, dword [edi + 0x72c]
test eax, eax
je 0x1005ec35
call eax
mov eax, dword [ebp - 0x40]
add eax, 4
mov dword [ebp - 0x40], eax
cmp eax, dword [ebp - 0x38]
jne 0x1005eba1
lea ecx, [ebp - 0x78]
call fcn.10025bc0
lea ecx, [ebp - 0x60]
call fcn.10026a00
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0xe4]
call fcn.1004f610
push fcn.10026a00
push 6
push 0x1c
lea eax, [ebp - 0x408]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100acb70
mov dword [edi + 0x6d4], 0
lea eax, [edi + 0x6bc]
mov dword [edi + 0x6c0], 0x14
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x38], eax
mov dword [edi + 0x6c8], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x6d8], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
push str.money
lea ecx, [ebp - 0x408]
call fcn.10026a20
push str.armor
lea ecx, [ebp - 0x3ec]
mov dword [ebp - 4], 0x2d
call fcn.10026a20
push str.scoped
lea ecx, [ebp - 0x3d0]
mov byte [ebp - 4], 0x2e
call fcn.10026a20
push str.flashed
lea ecx, [ebp - 0x3b4]
mov byte [ebp - 4], 0x2f
call fcn.10026a20
push str.reloading
lea ecx, [ebp - 0x398]
mov byte [ebp - 4], 0x30
call fcn.10026a20
push str.bomb
lea ecx, [ebp - 0x37c]
mov byte [ebp - 4], 0x31
call fcn.10026a20
lea eax, [ebp - 0x360]
mov dword [ebp - 4], 0x32
lea ecx, [ebp - 0x408]
push eax
push ecx
push ecx
lea ecx, [ebp - 0x78]
call fcn.1007db30
push 0x100bfa40
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x33
call fcn.10026a20
push str.flags_friendly
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x34
call fcn.10026a20
lea ecx, [ebp - 0xe8]
call fcn.1004f630
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x36
push eax
lea ecx, [edi + 0x7bc]
call fcn.100269d0
lea eax, [ebp - 0xa4]
mov byte [edi + 0x7f5], 1
push eax
lea ecx, [edi + 0x800]
call fcn.100269d0
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0x7f5], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x840], eax
add eax, 0x14
mov dword [edi + 0x790], eax
mov dword [edi + 0x794], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x38], eax
cmp esi, eax
je 0x1005ee09
lea eax, [edi + 0x81c]
mov edi, dword [ebp - 0x38]
mov dword [ebp - 0x18], eax
push esi
mov ecx, eax
call fcn.1004f5d0
mov eax, dword [ebp - 0x18]
add esi, 0x1c
cmp esi, edi
jne 0x1005edf4
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0xe4]
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], ecx
cmp eax, ecx
je 0x1005eed6
lea esi, [edi + 0x830]
nop dword [eax]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x1c], eax
push esp
call fcn.10025ae0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10025b50
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xcc]
call fcn.10027830
add esp, 0x18
lea ecx, [edi + 0x830]
mov esi, eax
lea eax, [ebp - 0x84]
push eax
call fcn.10025ae0
push eax
mov ecx, esi
call fcn.10025a60
lea ecx, [ebp - 0x84]
mov byte [ebp - 0x39], al
call fcn.1001cc70
lea ecx, [ebp - 0xcc]
call fcn.1001cc70
lea ecx, [edi + 0x81c]
call fcn.1002c0c0
lea esi, [edi + 0x830]
cmp dword [ebp - 0x1c], eax
jae 0x1005eeb2
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.1003c440
cmp byte [ebp - 0x39], 0
je 0x1005eec4
mov eax, dword [edi + 0x7f0]
test eax, eax
je 0x1005eec4
call eax
mov eax, dword [ebp - 0x40]
add eax, 4
mov dword [ebp - 0x40], eax
cmp eax, dword [ebp - 0x38]
jne 0x1005ee30
lea ecx, [ebp - 0xe8]
call fcn.10025bc0
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
call fcn.10026a00
lea ecx, [ebp - 0x78]
call fcn.1004f610
push fcn.10026a00
push 6
push 0x1c
lea eax, [ebp - 0x408]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100acb70
mov dword [edi + 0x798], 0
lea eax, [edi + 0x780]
mov dword [edi + 0x784], 0x14
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x38], eax
mov dword [edi + 0x78c], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x79c], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
push str.enemy
lea ecx, [ebp - 0x14c]
call fcn.10026a20
push str.friendly
lea ecx, [ebp - 0x130]
mov dword [ebp - 4], 0x37
call fcn.10026a20
lea eax, [ebp - 0x114]
mov dword [ebp - 4], 0x38
lea ecx, [ebp - 0x14c]
push eax
push ecx
push ecx
lea ecx, [ebp - 0x78]
call fcn.1007db30
push str.weapon
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x39
call fcn.10026a20
push str.weapon
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x3a
call fcn.10026a20
lea ecx, [ebp - 0xe8]
call fcn.1004f630
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x3c
push eax
lea ecx, [edi + 0x880]
call fcn.100269d0
lea eax, [ebp - 0xa4]
mov byte [edi + 0x8b9], 1
push eax
lea ecx, [edi + 0x8c4]
call fcn.100269d0
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0x8b9], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x904], eax
add eax, 0x14
mov dword [edi + 0x854], eax
mov dword [edi + 0x858], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x38], eax
cmp esi, eax
je 0x1005f048
lea eax, [edi + 0x8e0]
mov edi, dword [ebp - 0x38]
mov dword [ebp - 0x18], eax
push esi
mov ecx, eax
call fcn.1004f5d0
mov eax, dword [ebp - 0x18]
add esi, 0x1c
cmp esi, edi
jne 0x1005f033
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0xe4]
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], ecx
cmp eax, ecx
je 0x1005f10e
lea esi, [edi + 0x8f4]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x1c], eax
push esp
call fcn.10025ae0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10025b50
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xcc]
call fcn.10027830
add esp, 0x18
lea ecx, [edi + 0x8f4]
mov esi, eax
lea eax, [ebp - 0x84]
push eax
call fcn.10025ae0
push eax
mov ecx, esi
call fcn.10025a60
lea ecx, [ebp - 0x84]
mov byte [ebp - 0x39], al
call fcn.1001cc70
lea ecx, [ebp - 0xcc]
call fcn.1001cc70
lea ecx, [edi + 0x8e0]
call fcn.1002c0c0
lea esi, [edi + 0x8f4]
cmp dword [ebp - 0x1c], eax
jae 0x1005f0ea
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.1003c440
cmp byte [ebp - 0x39], 0
je 0x1005f0fc
mov eax, dword [edi + 0x8b4]
test eax, eax
je 0x1005f0fc
call eax
mov eax, dword [ebp - 0x40]
add eax, 4
mov dword [ebp - 0x40], eax
cmp eax, dword [ebp - 0x38]
jne 0x1005f068
lea ecx, [ebp - 0xe8]
call fcn.10025bc0
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
call fcn.10026a00
lea ecx, [ebp - 0x78]
call fcn.1004f610
push fcn.10026a00
push 2
push 0x1c
lea eax, [ebp - 0x14c]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100acb70
mov dword [edi + 0x85c], 0
lea eax, [edi + 0x844]
mov dword [edi + 0x848], 0x14
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x38], eax
mov dword [edi + 0x850], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x860], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
push str.text
lea ecx, [ebp - 0x14c]
call fcn.10026a20
push str.icon
lea ecx, [ebp - 0x130]
mov dword [ebp - 4], 0x3d
call fcn.10026a20
lea eax, [ebp - 0x114]
mov dword [ebp - 4], 0x3e
lea ecx, [ebp - 0x14c]
push eax
push ecx
push ecx
lea ecx, [ebp - 0xe4]
call fcn.1007db30
push str.weapon_mode
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x3f
call fcn.10026a20
push 0x100bb905
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x40
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x41
push eax
lea ecx, [edi + 0x944]
call fcn.100269d0
mov eax, dword [ebp - 0xdc]
mov esi, dword [ebp - 0xe0]
mov byte [edi + 0x97d], 0
mov dword [edi + 0x9bc], 0
mov dword [edi + 0x918], 0x14
mov dword [edi + 0x91c], 0x14
mov dword [ebp - 0x38], eax
cmp esi, eax
je 0x1005f268
lea eax, [edi + 0x9a4]
mov edi, dword [ebp - 0x38]
mov dword [ebp - 0x18], eax
push esi
mov ecx, eax
call fcn.1004f5d0
mov eax, dword [ebp - 0x18]
add esi, 0x1c
cmp esi, edi
jne 0x1005f253
mov edi, dword [ebp - 0x44]
lea ecx, [edi + 0x9a4]
call fcn.1002c0c0
test eax, eax
je 0x1005f281
mov dword [edi + 0x9b8], 0
lea ecx, [ebp - 0x60]
call fcn.10026a00
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0xe4]
call fcn.1004f610
push fcn.10026a00
push 2
push 0x1c
lea eax, [ebp - 0x14c]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100acb70
mov dword [edi + 0x920], 0
lea eax, [edi + 0x908]
mov dword [edi + 0x90c], 0x14
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x38], eax
mov dword [edi + 0x914], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x924], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
push str.ammo
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x9c0]
call fcn.10026a20
push str.ammo
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x42
call fcn.10026a20
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x43
push eax
lea ecx, [edi + 0x9fc]
call fcn.100269d0
lea eax, [ebp - 0xa4]
mov byte [edi + 0xa35], 1
push eax
lea ecx, [edi + 0xa40]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov byte [edi + 0xa3c], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 0
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0x14
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
mov esi, dword [0x100bdc5c]
lea ecx, [ebp - 0x60]
push str.ammo_color
add edi, 0xa5c
call fcn.10026a20
push str.color
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x44
call fcn.10026a20
mov ecx, dword [ebp - 0x44]
lea eax, [ebp - 0xa4]
push eax
add ecx, 0xaf8
mov byte [ebp - 4], 0x45
call fcn.100269d0
mov ecx, dword [ebp - 0x44]
lea eax, [ebp - 0x60]
push eax
lea ecx, [ecx + 0xa98]
call fcn.100269d0
mov eax, dword [ebp - 0x44]
lea ecx, [ebp - 0xa4]
mov dword [eax + 0xb14], esi
shr esi, 0x18
mov dword [eax + 0xb18], 0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100c25e4]
movss dword [eax + 0xae8], xmm0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov eax, dword [ebp - 0x44]
mov dword [edi + 0x18], 0
mov dword [edi + 4], 0x14
mov dword [edi + 0xc], 0xaf
mov eax, dword [eax + 0x34]
mov dword [edi + 0x1c], eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x38], edi
mov edi, dword [ebp - 0x44]
push eax
lea ecx, [edi + 0x1c]
call fcn.1004f6a0
push str.lby_update
lea ecx, [ebp - 0x60]
lea esi, [edi + 0xb1c]
call fcn.10026a20
push 0x100bfaac
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x46
call fcn.10026a20
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x47
push eax
lea ecx, [edi + 0xb58]
call fcn.100269d0
lea eax, [ebp - 0xa4]
mov byte [edi + 0xb91], 1
push eax
lea ecx, [edi + 0xb9c]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov byte [edi + 0xb98], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 0
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0x14
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
mov esi, dword [0x100bdc4c]
lea ecx, [ebp - 0x60]
push str.lby_update_color
add edi, 0xbb8
call fcn.10026a20
push str.color
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x48
call fcn.10026a20
mov ecx, dword [ebp - 0x44]
lea eax, [ebp - 0xa4]
push eax
mov byte [ebp - 4], 0x49
lea ecx, [ecx + 0xc54]
call fcn.100269d0
lea eax, [ebp - 0x60]
push eax
mov ecx, dword [ebp - 0x44]
lea ecx, [ecx + 0xbf4]
call fcn.100269d0
mov eax, dword [ebp - 0x44]
lea ecx, [ebp - 0xa4]
mov dword [eax + 0xc70], esi
shr esi, 0x18
mov dword [eax + 0xc74], 0
movd xmm0, esi
cvtdq2ps xmm0, xmm0
mulss xmm0, dword [0x100c25e4]
movss dword [eax + 0xc44], xmm0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov eax, dword [ebp - 0x44]
mov dword [edi + 0x18], 0
mov dword [edi + 4], 0x14
mov dword [edi + 0xc], 0xaf
mov eax, dword [eax + 0x34]
mov dword [edi + 0x1c], eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x38], edi
mov edi, dword [ebp - 0x44]
push eax
lea ecx, [edi + 0x1c]
call fcn.1004f6a0
push str.enemy
lea ecx, [ebp - 0x14c]
call fcn.10026a20
push str.friendly
lea ecx, [ebp - 0x130]
mov dword [ebp - 4], 0x4a
call fcn.10026a20
lea eax, [ebp - 0x114]
mov dword [ebp - 4], 0x4b
lea ecx, [ebp - 0x14c]
push eax
push ecx
push ecx
lea ecx, [ebp - 0x78]
call fcn.1007db30
push str.skeleton
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x4c
call fcn.10026a20
push str.skeleton
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x4d
call fcn.10026a20
lea ecx, [ebp - 0xe8]
call fcn.1004f630
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x4f
push eax
lea ecx, [edi + 0xcb4]
call fcn.100269d0
lea eax, [ebp - 0xa4]
mov byte [edi + 0xced], 1
push eax
lea ecx, [edi + 0xcf8]
call fcn.100269d0
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0xced], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0xd38], eax
add eax, 0x14
mov dword [edi + 0xc88], eax
mov dword [edi + 0xc8c], eax
mov eax, dword [ebp - 0x70]
cmp esi, eax
mov dword [ebp - 0x18], eax
je 0x1005f6cb
lea eax, [edi + 0xd14]
mov edi, eax
push esi
mov ecx, edi
call fcn.1004f5d0
add esi, 0x1c
cmp esi, dword [ebp - 0x18]
jne 0x1005f6b8
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0xe4]
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], ecx
cmp eax, ecx
je 0x1005f796
lea esi, [edi + 0xd28]
nop dword [eax + eax]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x1c], eax
push esp
call fcn.10025ae0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10025b50
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xcc]
call fcn.10027830
add esp, 0x18
lea ecx, [edi + 0xd28]
mov esi, eax
lea eax, [ebp - 0x84]
push eax
call fcn.10025ae0
push eax
mov ecx, esi
call fcn.10025a60
lea ecx, [ebp - 0x84]
mov byte [ebp - 0x39], al
call fcn.1001cc70
lea ecx, [ebp - 0xcc]
call fcn.1001cc70
lea ecx, [edi + 0xd14]
call fcn.1002c0c0
lea esi, [edi + 0xd28]
cmp dword [ebp - 0x1c], eax
jae 0x1005f772
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.1003c440
cmp byte [ebp - 0x39], 0
je 0x1005f784
mov eax, dword [edi + 0xce8]
test eax, eax
je 0x1005f784
call eax
mov eax, dword [ebp - 0x40]
add eax, 4
mov dword [ebp - 0x40], eax
cmp eax, dword [ebp - 0x38]
jne 0x1005f6f0
lea ecx, [ebp - 0xe8]
call fcn.10025bc0
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
call fcn.10026a00
lea ecx, [ebp - 0x78]
call fcn.1004f610
push fcn.10026a00
push 2
push 0x1c
lea eax, [ebp - 0x14c]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100acb70
mov dword [edi + 0xc90], 1
lea eax, [edi + 0xc78]
mov dword [edi + 0xc7c], 0xff
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x38], eax
mov dword [edi + 0xc84], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0xc94], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
push str.skeleton_enemy
lea ecx, [ebp - 0x60]
lea esi, [edi + 0xd3c]
call fcn.10026a20
push str.enemy_color
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x50
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x51
push eax
lea ecx, [edi + 0xdd8]
call fcn.100269d0
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0xd78]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov dword [edi + 0xdf4], 0xffffffff
mov dword [edi + 0xdc8], 0x3f800000
mov dword [edi + 0xdf8], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push str.skeleton_friendly
lea ecx, [ebp - 0x60]
lea esi, [edi + 0xdfc]
call fcn.10026a20
push str.friendly_color
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x52
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x53
push eax
lea ecx, [edi + 0xe98]
call fcn.100269d0
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0xe38]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov dword [edi + 0xeb4], 0xffffffff
mov dword [edi + 0xe88], 0x3f800000
mov dword [edi + 0xeb8], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push str.enemy
lea ecx, [ebp - 0x14c]
call fcn.10026a20
push str.friendly
lea ecx, [ebp - 0x130]
mov dword [ebp - 4], 0x54
call fcn.10026a20
lea eax, [ebp - 0x114]
mov dword [ebp - 4], 0x55
lea ecx, [ebp - 0x14c]
push eax
push ecx
push ecx
lea ecx, [ebp - 0x78]
call fcn.1007db30
push str.glow
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x56
call fcn.10026a20
push str.glow
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x57
call fcn.10026a20
lea ecx, [ebp - 0xe8]
call fcn.1004f630
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x59
push eax
lea ecx, [edi + 0xef8]
call fcn.100269d0
lea eax, [ebp - 0xa4]
mov byte [edi + 0xf31], 1
push eax
lea ecx, [edi + 0xf3c]
call fcn.100269d0
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0xf31], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0xf7c], eax
add eax, 0x14
mov dword [edi + 0xecc], eax
mov dword [edi + 0xed0], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x38], eax
cmp esi, eax
je 0x1005fa6a
lea eax, [edi + 0xf58]
mov edi, dword [ebp - 0x38]
mov dword [ebp - 0x18], eax
push esi
mov ecx, eax
call fcn.1004f5d0
mov eax, dword [ebp - 0x18]
add esi, 0x1c
cmp esi, edi
jne 0x1005fa55
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0xe4]
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], ecx
cmp eax, ecx
je 0x1005fb36
lea esi, [edi + 0xf6c]
nop word [eax + eax]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x1c], eax
push esp
call fcn.10025ae0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10025b50
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xcc]
call fcn.10027830
add esp, 0x18
lea ecx, [edi + 0xf6c]
mov esi, eax
lea eax, [ebp - 0x84]
push eax
call fcn.10025ae0
push eax
mov ecx, esi
call fcn.10025a60
lea ecx, [ebp - 0x84]
mov byte [ebp - 0x39], al
call fcn.1001cc70
lea ecx, [ebp - 0xcc]
call fcn.1001cc70
lea ecx, [edi + 0xf58]
call fcn.1002c0c0
lea esi, [edi + 0xf6c]
cmp dword [ebp - 0x1c], eax
jae 0x1005fb12
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.1003c440
cmp byte [ebp - 0x39], 0
je 0x1005fb24
mov eax, dword [edi + 0xf2c]
test eax, eax
je 0x1005fb24
call eax
mov eax, dword [ebp - 0x40]
add eax, 4
mov dword [ebp - 0x40], eax
cmp eax, dword [ebp - 0x38]
jne 0x1005fa90
lea ecx, [ebp - 0xe8]
call fcn.10025bc0
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
call fcn.10026a00
lea ecx, [ebp - 0x78]
call fcn.1004f610
push fcn.10026a00
push 2
push 0x1c
lea eax, [ebp - 0x14c]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100acb70
mov dword [edi + 0xed4], 1
lea eax, [edi + 0xebc]
mov dword [edi + 0xec0], 0xff
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x38], eax
mov dword [edi + 0xec8], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0xed8], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
push str.glow_enemy
lea ecx, [ebp - 0x60]
lea esi, [edi + 0xf80]
call fcn.10026a20
push str.enemy_color
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x5a
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x5b
push eax
lea ecx, [edi + 0x101c]
call fcn.100269d0
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0xfbc]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov dword [edi + 0x1038], 0xff3cc896
mov dword [edi + 0x100c], 0x3f800000
mov dword [edi + 0x103c], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push str.glow_friendly
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1040]
call fcn.10026a20
push str.friendly_color
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x5c
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x5d
push eax
lea ecx, [edi + 0x10dc]
call fcn.100269d0
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x107c]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov dword [edi + 0x10f8], 0xff3cc896
mov dword [edi + 0x10cc], 0x3f800000
mov dword [edi + 0x10fc], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push 0x100bf1f8
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1100]
call fcn.1007e220
push str.glow_blend
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x5e
call fcn.10026a20
push 0x100bb905
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x5f
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x60
push eax
lea ecx, [edi + 0x113c]
call fcn.100269d0
lea eax, [ebp - 0x60]
mov byte [edi + 0x1175], 0
push eax
lea ecx, [edi + 0x11b4]
mov dword [edi + 0x11d0], 0
mov dword [edi + 0x1110], 8
mov dword [edi + 0x1114], 8
mov dword [edi + 0x1184], 0x41200000
mov dword [edi + 0x1188], 0x42c80000
mov dword [edi + 0x1180], 0x42700000
mov dword [edi + 0x1194], 0
mov dword [edi + 0x118c], 0x3f800000
call fcn.1007e1b0
lea ecx, [ebp - 0xf0]
call fcn.10026a00
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fa20
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push str.visible
lea ecx, [ebp - 0x14c]
call fcn.10026a20
push str.invisible
lea ecx, [ebp - 0x130]
mov dword [ebp - 4], 0x61
call fcn.10026a20
mov dword [ebp - 4], 0x62
lea ecx, [ebp - 0x14c]
lea eax, [ebp - 0x114]
push eax
push ecx
push ecx
lea ecx, [ebp - 0x78]
call fcn.1007db30
push str.chams_enemy
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x63
call fcn.10026a20
push 0x100bfb68
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x64
call fcn.10026a20
lea ecx, [ebp - 0xe8]
call fcn.1004f630
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x66
push eax
lea ecx, [edi + 0x1210]
call fcn.100269d0
lea eax, [ebp - 0xa4]
mov byte [edi + 0x1249], 1
push eax
lea ecx, [edi + 0x1254]
call fcn.100269d0
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0x1249], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x1294], eax
add eax, 0x14
mov dword [edi + 0x11e4], eax
mov dword [edi + 0x11e8], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x1005ff13
lea eax, [edi + 0x1270]
mov dword [ebp - 0x38], eax
mov edi, eax
nop dword [eax]
push esi
mov ecx, edi
call fcn.1004f5d0
add esi, 0x1c
cmp esi, dword [ebp - 0x18]
jne 0x1005ff00
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0xe4]
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], ecx
cmp eax, ecx
je 0x1005ffd9
lea esi, [edi + 0x1284]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x1c], eax
push esp
call fcn.10025ae0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10025b50
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xcc]
call fcn.10027830
add esp, 0x18
lea ecx, [edi + 0x1284]
mov esi, eax
lea eax, [ebp - 0x84]
push eax
call fcn.10025ae0
push eax
mov ecx, esi
call fcn.10025a60
lea ecx, [ebp - 0x84]
mov byte [ebp - 0x39], al
call fcn.1001cc70
lea ecx, [ebp - 0xcc]
call fcn.1001cc70
lea ecx, [edi + 0x1270]
call fcn.1002c0c0
lea esi, [edi + 0x1284]
cmp dword [ebp - 0x1c], eax
jae 0x1005ffb5
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.1003c440
cmp byte [ebp - 0x39], 0
je 0x1005ffc7
mov eax, dword [edi + 0x1244]
test eax, eax
je 0x1005ffc7
call eax
mov eax, dword [ebp - 0x40]
add eax, 4
mov dword [ebp - 0x40], eax
cmp eax, dword [ebp - 0x38]
jne 0x1005ff33
lea ecx, [ebp - 0xe8]
call fcn.10025bc0
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
call fcn.10026a00
lea ecx, [ebp - 0x78]
call fcn.1004f610
push fcn.10026a00
push 2
push 0x1c
lea eax, [ebp - 0x14c]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100acb70
mov dword [edi + 0x11ec], 1
lea eax, [edi + 0x11d4]
mov dword [edi + 0x11d8], 0xff
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x38], eax
mov dword [edi + 0x11e0], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x11f0], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
push str.chams_enemy_vis
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1298]
call fcn.10026a20
push str.color_visible
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x67
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x68
push eax
lea ecx, [edi + 0x1334]
call fcn.100269d0
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x12d4]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov dword [edi + 0x1350], 0xff3cc896
mov dword [edi + 0x1324], 0x3f800000
mov dword [edi + 0x1354], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push str.chams_enemy_invis
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1358]
call fcn.10026a20
push str.color_invisible
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x69
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x6a
push eax
lea ecx, [edi + 0x13f4]
call fcn.100269d0
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x1394]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov dword [edi + 0x1410], 0xffe1b43c
mov dword [edi + 0x13e4], 0x3f800000
mov dword [edi + 0x1414], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push 0x100bf1f8
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1418]
call fcn.1007e220
push str.chams_enemy_blend
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x6b
call fcn.10026a20
push 0x100bb905
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x6c
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x6d
push eax
lea ecx, [edi + 0x1454]
call fcn.100269d0
lea eax, [ebp - 0x60]
mov byte [edi + 0x148d], 0
push eax
lea ecx, [edi + 0x14cc]
mov dword [edi + 0x14e8], 0
mov dword [edi + 0x1428], 8
mov dword [edi + 0x142c], 8
mov dword [edi + 0x149c], 0x41200000
mov dword [edi + 0x14a0], 0x42c80000
mov dword [edi + 0x1498], 0x42c80000
mov dword [edi + 0x14ac], 0
mov dword [edi + 0x14a4], 0x3f800000
call fcn.1007e1b0
lea ecx, [ebp - 0xf0]
call fcn.10026a00
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fa20
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push 0x100bfbc4
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x14ec]
call fcn.10026a20
push str.chams_history
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x6e
call fcn.10026a20
mov byte [ebp - 4], 0x6f
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x1528]
call fcn.100269d0
lea eax, [ebp - 0xa4]
mov byte [edi + 0x1561], 1
push eax
lea ecx, [edi + 0x156c]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov byte [edi + 0x1568], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push str.chams_history_col
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1588]
call fcn.10026a20
push str.color
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x70
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x71
push eax
lea ecx, [edi + 0x1624]
call fcn.100269d0
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x15c4]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov dword [edi + 0x1640], 0xffc8ffff
mov dword [edi + 0x1614], 0x3f800000
mov dword [edi + 0x1644], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push 0x100bf1f8
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1648]
call fcn.1007e220
push str.chams_history_blend
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x72
call fcn.10026a20
push 0x100bb905
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x73
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x74
push eax
lea ecx, [edi + 0x1684]
call fcn.100269d0
lea eax, [ebp - 0x60]
mov byte [edi + 0x16bd], 0
push eax
lea ecx, [edi + 0x16fc]
mov dword [edi + 0x1718], 0
mov dword [edi + 0x1658], 8
mov dword [edi + 0x165c], 8
mov dword [edi + 0x16cc], 0x41200000
mov dword [edi + 0x16d0], 0x42c80000
mov dword [edi + 0x16c8], 0x42c80000
mov dword [edi + 0x16dc], 0
mov dword [edi + 0x16d4], 0x3f800000
call fcn.1007e1b0
lea ecx, [ebp - 0xf0]
call fcn.10026a00
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fa20
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push str.visible
lea ecx, [ebp - 0x14c]
call fcn.10026a20
push str.invisible
lea ecx, [ebp - 0x130]
mov dword [ebp - 4], 0x75
call fcn.10026a20
lea eax, [ebp - 0x114]
mov dword [ebp - 4], 0x76
lea ecx, [ebp - 0x14c]
push eax
push ecx
push ecx
lea ecx, [ebp - 0x78]
call fcn.1007db30
push 0x100bfc0c
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x77
call fcn.10026a20
push str.chams_friendly
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x78
call fcn.10026a20
lea ecx, [ebp - 0xe8]
call fcn.1004f630
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x7a
push eax
lea ecx, [edi + 0x1758]
call fcn.100269d0
lea eax, [ebp - 0xa4]
mov byte [edi + 0x1791], 1
push eax
lea ecx, [edi + 0x179c]
call fcn.100269d0
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x1791], al
cmovne eax, ecx
mov dword [edi + 0x17dc], eax
add eax, 0x14
mov dword [edi + 0x172c], eax
mov dword [edi + 0x1730], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x18], eax
mov esi, dword [ebp - 0x74]
cmp esi, eax
je 0x10060613
lea eax, [edi + 0x17b8]
mov dword [ebp - 0x38], eax
mov edi, eax
nop dword [eax + eax]
push esi
mov ecx, edi
call fcn.1004f5d0
add esi, 0x1c
cmp esi, dword [ebp - 0x18]
jne 0x10060600
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0xe4]
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], ecx
cmp eax, ecx
je 0x100606d9
lea esi, [edi + 0x17cc]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x1c], eax
push esp
call fcn.10025ae0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10025b50
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xcc]
call fcn.10027830
add esp, 0x18
lea ecx, [edi + 0x17cc]
mov esi, eax
lea eax, [ebp - 0x84]
push eax
call fcn.10025ae0
push eax
mov ecx, esi
call fcn.10025a60
lea ecx, [ebp - 0x84]
mov byte [ebp - 0x39], al
call fcn.1001cc70
lea ecx, [ebp - 0xcc]
call fcn.1001cc70
lea ecx, [edi + 0x17b8]
call fcn.1002c0c0
lea esi, [edi + 0x17cc]
cmp dword [ebp - 0x1c], eax
jae 0x100606b5
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.1003c440
cmp byte [ebp - 0x39], 0
je 0x100606c7
mov eax, dword [edi + 0x178c]
test eax, eax
je 0x100606c7
call eax
mov eax, dword [ebp - 0x40]
add eax, 4
mov dword [ebp - 0x40], eax
cmp eax, dword [ebp - 0x38]
jne 0x10060633
lea ecx, [ebp - 0xe8]
call fcn.10025bc0
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
call fcn.10026a00
lea ecx, [ebp - 0x78]
call fcn.1004f610
push fcn.10026a00
push 2
push 0x1c
lea eax, [ebp - 0x14c]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100acb70
mov dword [edi + 0x1734], 1
lea eax, [edi + 0x171c]
mov dword [edi + 0x1720], 0xff
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x38], eax
mov dword [edi + 0x1728], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x1738], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
push str.chams_friendly_vis
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x17e0]
call fcn.10026a20
push str.color_visible
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x7b
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x7c
push eax
lea ecx, [edi + 0x187c]
call fcn.100269d0
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x181c]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov dword [edi + 0x1898], 0xff00c8ff
mov dword [edi + 0x186c], 0x3f800000
mov dword [edi + 0x189c], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push str.chams_friendly_invis
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x18a0]
call fcn.10026a20
push str.color_invisible
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x7d
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x7e
push eax
lea ecx, [edi + 0x193c]
call fcn.100269d0
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x18dc]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov dword [edi + 0x1958], 0xff0032ff
mov dword [edi + 0x192c], 0x3f800000
mov dword [edi + 0x195c], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push str.real
lea ecx, [ebp - 0x14c]
call fcn.10026a20
push str.fake
lea ecx, [ebp - 0x130]
mov dword [ebp - 4], 0x7f
call fcn.10026a20
lea eax, [ebp - 0x114]
mov dword [ebp - 4], 0x80
lea ecx, [ebp - 0x14c]
push eax
push ecx
push ecx
lea ecx, [ebp - 0x78]
call fcn.1007db30
push str.chams_local
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x81
call fcn.10026a20
push 0x100bfc74
lea ecx, [ebp - 0xa4]
mov byte [ebp - 4], 0x82
call fcn.10026a20
lea ecx, [ebp - 0xe8]
call fcn.1004f630
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x84
push eax
lea ecx, [edi + 0x1a70]
call fcn.100269d0
lea eax, [ebp - 0xa4]
mov byte [edi + 0x1aa9], 1
push eax
lea ecx, [edi + 0x1ab4]
call fcn.100269d0
mov esi, dword [ebp - 0x74]
xor eax, eax
cmp byte [edi + 0x1aa9], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0x1af4], eax
add eax, 0x14
mov dword [edi + 0x1a44], eax
mov dword [edi + 0x1a48], eax
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x38], eax
cmp esi, eax
je 0x100609ad
lea eax, [edi + 0x1ad0]
mov edi, dword [ebp - 0x38]
mov dword [ebp - 0x18], eax
push esi
mov ecx, eax
call fcn.1004f5d0
mov eax, dword [ebp - 0x18]
add esi, 0x1c
cmp esi, edi
jne 0x10060998
mov edi, dword [ebp - 0x44]
mov eax, dword [ebp - 0xe4]
mov ecx, dword [ebp - 0xe0]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x38], ecx
cmp eax, ecx
je 0x10060a76
lea esi, [edi + 0x1ae4]
nop dword [eax]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esi
mov dword [ebp - 0x1c], eax
push esp
call fcn.10025ae0
sub esp, 0xc
mov ecx, esi
push esp
call fcn.10025b50
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0xcc]
call fcn.10027830
add esp, 0x18
lea ecx, [edi + 0x1ae4]
mov esi, eax
lea eax, [ebp - 0x84]
push eax
call fcn.10025ae0
push eax
mov ecx, esi
call fcn.10025a60
lea ecx, [ebp - 0x84]
mov byte [ebp - 0x39], al
call fcn.1001cc70
lea ecx, [ebp - 0xcc]
call fcn.1001cc70
lea ecx, [edi + 0x1ad0]
call fcn.1002c0c0
lea esi, [edi + 0x1ae4]
cmp dword [ebp - 0x1c], eax
jae 0x10060a52
lea eax, [ebp - 0x1c]
mov ecx, esi
push eax
call fcn.1003c440
cmp byte [ebp - 0x39], 0
je 0x10060a64
mov eax, dword [edi + 0x1aa4]
test eax, eax
je 0x10060a64
call eax
mov eax, dword [ebp - 0x40]
add eax, 4
mov dword [ebp - 0x40], eax
cmp eax, dword [ebp - 0x38]
jne 0x100609d0
lea ecx, [ebp - 0xe8]
call fcn.10025bc0
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
call fcn.10026a00
lea ecx, [ebp - 0x78]
call fcn.1004f610
push fcn.10026a00
push 2
push 0x1c
lea eax, [ebp - 0x14c]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100acb70
mov dword [edi + 0x1a4c], 1
lea eax, [edi + 0x1a34]
mov dword [edi + 0x1a38], 0xff
lea ecx, [edi + 0x1c]
mov dword [ebp - 0x38], eax
mov dword [edi + 0x1a40], 0xaf
mov eax, dword [edi + 0x34]
mov dword [edi + 0x1a50], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
push 0x100bf1f8
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1960]
call fcn.1007e220
push str.chams_friendly_blend
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x85
call fcn.10026a20
push 0x100bb905
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x86
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x87
push eax
lea ecx, [edi + 0x199c]
call fcn.100269d0
lea eax, [ebp - 0x60]
mov byte [edi + 0x19d5], 0
push eax
lea ecx, [edi + 0x1a14]
mov dword [edi + 0x1a30], 0
mov dword [edi + 0x1970], 8
mov dword [edi + 0x1974], 8
mov dword [edi + 0x19e4], 0x41200000
mov dword [edi + 0x19e8], 0x42c80000
mov dword [edi + 0x19e0], 0x42c80000
mov dword [edi + 0x19f4], 0
mov dword [edi + 0x19ec], 0x3f800000
call fcn.1007e1b0
lea ecx, [ebp - 0xf0]
call fcn.10026a00
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fa20
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push str.chams_local_col
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1af8]
call fcn.10026a20
push str.color
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x88
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x89
push eax
lea ecx, [edi + 0x1b94]
call fcn.100269d0
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x1b34]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov dword [edi + 0x1bb0], 0xffc8ffff
mov dword [edi + 0x1b84], 0x3f800000
mov dword [edi + 0x1bb4], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push 0x100bf1f8
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1bb8]
call fcn.1007e220
push str.chams_local_blend
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x8a
call fcn.10026a20
push 0x100bb905
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x8b
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x8c
push eax
lea ecx, [edi + 0x1bf4]
call fcn.100269d0
lea eax, [ebp - 0x60]
mov byte [edi + 0x1c2d], 0
push eax
lea ecx, [edi + 0x1c6c]
mov dword [edi + 0x1c88], 0
mov dword [edi + 0x1bc8], 8
mov dword [edi + 0x1bcc], 8
mov dword [edi + 0x1c3c], 0x41200000
mov dword [edi + 0x1c40], 0x42c80000
mov dword [edi + 0x1c38], 0x42c80000
mov dword [edi + 0x1c4c], 0
mov dword [edi + 0x1c44], 0x3f800000
call fcn.1007e1b0
lea ecx, [ebp - 0xf0]
call fcn.10026a00
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fa20
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x38], esi
push eax
call fcn.1004f6a0
push str.chams_local_ghost_col
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1c8c]
call fcn.10026a20
push str.fake_color
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x8d
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x8e
push eax
lea ecx, [edi + 0x1d28]
call fcn.100269d0
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x1cc8]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov dword [edi + 0x1d44], 0xffc8ffff
mov dword [edi + 0x1d18], 0x3f800000
mov dword [edi + 0x1d48], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
push 0x100bf1f8
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1d4c]
call fcn.1007e220
push str.chams_local_ghost_blend
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x8f
call fcn.10026a20
push 0x100bb905
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0x90
call fcn.10026a20
lea eax, [ebp - 0xa4]
mov byte [ebp - 4], 0x91
push eax
lea ecx, [edi + 0x1d88]
call fcn.100269d0
lea eax, [ebp - 0x60]
mov byte [edi + 0x1dc1], 0
push eax
lea ecx, [edi + 0x1e00]
mov dword [edi + 0x1e1c], 0
mov dword [edi + 0x1d5c], 8
mov dword [edi + 0x1d60], 8
mov dword [edi + 0x1dd0], 0x41200000
mov dword [edi + 0x1dd4], 0x42c80000
mov dword [edi + 0x1dcc], 0x42c80000
mov dword [edi + 0x1de0], 0
mov dword [edi + 0x1dd8], 0x3f800000
call fcn.1007e1b0
lea ecx, [ebp - 0xf0]
call fcn.10026a00
lea ecx, [ebp - 0xa4]
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.1004fa20
mov dword [esi + 0x18], 1
mov dword [ebp - 0x38], esi
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
lea ecx, [edi + 0x1c]
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
call fcn.1004f6a0
push str.chams_local_scope
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x1e20]
call fcn.10026a20
push str.blend_when_scoped
lea ecx, [ebp - 0xa4]
mov dword [ebp - 4], 0x92
call fcn.10026a20
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x93
push eax
lea ecx, [edi + 0x1e5c]
call fcn.100269d0
lea eax, [ebp - 0xa4]
mov byte [edi + 0x1e95], 1
push eax
lea ecx, [edi + 0x1ea0]
call fcn.100269d0
lea ecx, [ebp - 0xa4]
mov byte [edi + 0x1e9c], 0
call fcn.10026a00
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.10026a00
mov dword [esi + 0x18], 1
lea ecx, [edi + 0x1c]
mov dword [esi + 4], 0xff
mov dword [esi + 0xc], 0xaf
mov eax, dword [edi + 0x34]
mov dword [esi + 0x1c], eax
lea eax, [ebp - 0x38]
push eax
mov dword [ebp - 0x38], esi
call fcn.1004f6a0
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.100acaf0
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret