Function at 0x10079a00
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 0x100d65b7
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xaf8
mov eax, dword [0x100f2040]
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 - 0xc8], edi
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x204], 0
push str.players
lea ecx, [ebp - 0x214]
mov dword [ebp - 0x200], 0
movups xmmword [ebp - 0x214], xmm0
call fcn.10035960
lea eax, [ebp - 0x214]
mov dword [ebp - 4], 0
cmp edi, eax
je 0x10079aa6
cmp dword [ebp - 0x200], 0xf
mov ecx, edi
push dword [ebp - 0x204]
cmova eax, dword [ebp - 0x214]
push eax
call fcn.10034e50
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x200]
cmp ecx, 0xf
jbe 0x10079ae7
mov edx, dword [ebp - 0x214]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10079add
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x204], 0
push 0x100e2260
lea ecx, [ebp - 0x6a0]
mov dword [ebp - 0x200], 0xf
mov byte [ebp - 0x214], 0
movups xmmword [ebp - 0x6a0], xmm0
mov dword [ebp - 0x690], 0
mov dword [ebp - 0x68c], 0
call fcn.10035960
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x688]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x678], 0
push str.model
movups xmmword [ebp - 0x688], xmm0
mov dword [ebp - 0x674], 0
call fcn.10035960
lea ecx, [ebp - 0x6a0]
mov dword [ebp - 4], 2
push ecx
lea eax, [ebp - 0x670]
push eax
push ecx
lea ecx, [ebp - 0x538]
call fcn.1009d0d0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1fc]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x1ec], 0
push 0x100e07c4
movups xmmword [ebp - 0x1fc], xmm0
mov dword [ebp - 0x1e8], 0
call fcn.10035960
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x508]
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x4f8], 0
push 0x100de451
movups xmmword [ebp - 0x508], xmm0
mov dword [ebp - 0x4f4], 0
call fcn.10035960
lea ecx, [edi + 0x68]
mov byte [ebp - 4], 5
lea eax, [ebp - 0x1fc]
cmp ecx, eax
je 0x10079c1d
cmp dword [ebp - 0x1e8], 0xf
push dword [ebp - 0x1ec]
cmova eax, dword [ebp - 0x1fc]
push eax
call fcn.10034e50
mov byte [edi + 0x99], 0
mov dword [edi + 0xcc], 0
mov dword [edi + 0x40], 0x14
mov dword [edi + 0x44], 0x14
mov eax, dword [ebp - 0x534]
mov esi, dword [ebp - 0x538]
mov dword [ebp - 0x100], eax
cmp esi, eax
je 0x10079c96
lea ecx, [edi + 0xb8]
nop dword [eax + eax]
mov eax, dword [edi + 0xbc]
push esi
cmp eax, dword [edi + 0xc0]
je 0x10079c7f
mov ecx, eax
call fcn.10034a50
add dword [edi + 0xbc], 0x18
jmp 0x10079c85
push eax
call fcn.1005a410
add esi, 0x18
lea ecx, [edi + 0xb8]
cmp esi, dword [ebp - 0x100]
jne 0x10079c60
mov ecx, dword [edi + 0xbc]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0xb8]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x10079cbf
mov dword [edi + 0xc8], 0
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x4f4]
cmp ecx, 0xf
jbe 0x10079cfd
mov edx, dword [ebp - 0x508]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10079cf3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x1e8]
mov dword [ebp - 0x4f8], 0
mov dword [ebp - 0x4f4], 0xf
mov byte [ebp - 0x508], 0
cmp ecx, 0xf
jbe 0x10079d56
mov edx, dword [ebp - 0x1fc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10079d4c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea ecx, [ebp - 0x538]
mov dword [ebp - 0x1ec], 0
mov dword [ebp - 0x1e8], 0xf
mov byte [ebp - 0x1fc], 0
call fcn.10034bf0
push fcn.10034970
push 2
push 0x18
lea eax, [ebp - 0x6a0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100cee52
lea eax, [edi + 0x30]
mov dword [ebp - 0x60], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x48], 0
imul eax, dword [edi + 0x48], 0xeb
add eax, 0x14
mov dword [edi + 0x34], eax
mov dword [edi + 0x3c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x4c], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x10079dd5
mov eax, dword [ebp - 0x60]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x10079ddf
lea eax, [ebp - 0x60]
push eax
push edx
call fcn.10036960
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x6c0], 0
push str.enemy
lea ecx, [ebp - 0x6d0]
mov dword [ebp - 0x6bc], 0
movups xmmword [ebp - 0x6d0], xmm0
call fcn.10035960
mov dword [ebp - 4], 6
lea ecx, [ebp - 0x6b8]
push 8
xorps xmm0, xmm0
mov dword [ebp - 0x6a8], 0
push str.friendly
movups xmmword [ebp - 0x6b8], xmm0
mov dword [ebp - 0x6a4], 0
call fcn.10035960
lea ecx, [ebp - 0x6d0]
mov dword [ebp - 4], 7
push ecx
lea eax, [ebp - 0x6a0]
push eax
push ecx
lea ecx, [ebp - 0x544]
call fcn.1009d0d0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x1cc]
push 3
xorps xmm0, xmm0
mov dword [ebp - 0x1bc], 0
push 0x100e2284
movups xmmword [ebp - 0x1cc], xmm0
mov dword [ebp - 0x1b8], 0
call fcn.10035960
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x1e4]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x1d4], 0
push str.boxes
movups xmmword [ebp - 0x1e4], xmm0
mov dword [ebp - 0x1d0], 0
call fcn.10035960
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x46c], 0
mov dword [ebp - 0x468], 0
lea ecx, [edi + 0x108]
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x1cc]
cmp ecx, eax
je 0x10079f1b
cmp dword [ebp - 0x1b8], 0xf
push dword [ebp - 0x1bc]
cmova eax, dword [ebp - 0x1cc]
push eax
call fcn.10034e50
lea ecx, [edi + 0x140]
mov byte [edi + 0x139], 1
lea eax, [ebp - 0x1e4]
cmp ecx, eax
je 0x10079f4c
cmp dword [ebp - 0x1d0], 0xf
push dword [ebp - 0x1d4]
cmova eax, dword [ebp - 0x1e4]
push eax
call fcn.10034e50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x139], al
cmovne eax, ecx
mov dword [edi + 0x174], eax
add eax, 0x14
mov dword [edi + 0xe0], eax
mov dword [edi + 0xe4], eax
mov eax, dword [ebp - 0x540]
mov esi, dword [ebp - 0x544]
mov dword [ebp - 0x100], eax
cmp esi, eax
je 0x10079fcc
lea ecx, [edi + 0x158]
nop dword [eax]
mov eax, dword [edi + 0x15c]
push esi
cmp eax, dword [edi + 0x160]
je 0x10079fb5
mov ecx, eax
call fcn.10034a50
add dword [edi + 0x15c], 0x18
lea ecx, [edi + 0x158]
jmp 0x10079fc1
push eax
call fcn.1005a410
lea ecx, [edi + 0x158]
add esi, 0x18
cmp esi, dword [ebp - 0x100]
jne 0x10079f90
mov ecx, dword [ebp - 0x46c]
mov eax, dword [ebp - 0x470]
mov dword [ebp - 0x18], ecx
mov dword [ebp - 0x100], eax
cmp eax, ecx
je 0x1007a07b
lea esi, [edi + 0x168]
nop
mov eax, dword [eax]
push eax
mov dword [ebp - 0x24], eax
push dword [esi + 4]
push dword [esi]
call fcn.100cecd0
mov ecx, dword [edi + 0x15c]
sub ecx, dword [edi + 0x158]
mov dword [ebp - 0xcc], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], eax
mov eax, 0x2aaaaaab
imul ecx
mov ecx, dword [ebp - 0x24]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
jae 0x1007a04f
cmp eax, dword [esi + 8]
je 0x1007a040
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x1007a04f
lea ecx, [ebp - 0x24]
push ecx
push eax
mov ecx, esi
call fcn.10036960
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0xcc], eax
jne 0x1007a063
mov eax, dword [edi + 0x134]
test eax, eax
je 0x1007a063
call eax
mov eax, dword [ebp - 0x100]
add eax, 4
mov dword [ebp - 0x100], eax
cmp eax, dword [ebp - 0x18]
jne 0x10079ff0
lea ecx, [ebp - 0x470]
call fcn.10033b70
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x1d0]
cmp ecx, 0xf
jbe 0x1007a0c4
mov edx, dword [ebp - 0x1e4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007a0ba
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x1b8]
mov dword [ebp - 0x1d4], 0
mov dword [ebp - 0x1d0], 0xf
mov byte [ebp - 0x1e4], 0
cmp ecx, 0xf
jbe 0x1007a11d
mov edx, dword [ebp - 0x1cc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007a113
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea ecx, [ebp - 0x544]
mov dword [ebp - 0x1bc], 0
mov dword [ebp - 0x1b8], 0xf
mov byte [ebp - 0x1cc], 0
call fcn.10034bf0
push fcn.10034970
push 2
push 0x18
lea eax, [ebp - 0x6d0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100cee52
lea ecx, [edi + 0x128]
mov dword [ebp - 0xb0], 0x10039a70
mov eax, dword [ecx + 4]
cmp eax, dword [ecx + 8]
je 0x1007a183
mov dword [eax], 0x10039a70
add dword [ecx + 4], 4
jmp 0x1007a190
lea edx, [ebp - 0xb0]
push edx
push eax
call fcn.10036960
lea eax, [edi + 0xd0]
mov dword [ebp - 0x2c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0xe8], 0
imul eax, dword [edi + 0xe8], 0xeb
add eax, 0x14
mov dword [edi + 0xd4], eax
mov dword [edi + 0xdc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xec], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007a1df
mov eax, dword [ebp - 0x2c]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007a1e9
lea eax, [ebp - 0x2c]
push eax
push edx
call fcn.10036960
push 9
xorps xmm0, xmm0
mov dword [ebp - 0x18c], 0
push str.box_enemy
lea ecx, [ebp - 0x19c]
mov dword [ebp - 0x188], 0
movups xmmword [ebp - 0x19c], xmm0
call fcn.10035960
mov dword [ebp - 4], 0xc
lea ecx, [ebp - 0x1b4]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x1a4], 0
push str.box_enemy_color
movups xmmword [ebp - 0x1b4], xmm0
mov dword [ebp - 0x1a0], 0
call fcn.10035960
lea ecx, [edi + 0x1ec]
mov byte [ebp - 4], 0xd
lea eax, [ebp - 0x1b4]
mov dword [ebp - 0x11c], 0xffffffff
cmp ecx, eax
je 0x1007a288
cmp dword [ebp - 0x1a0], 0xf
push dword [ebp - 0x1a4]
cmova eax, dword [ebp - 0x1b4]
push eax
call fcn.10034e50
lea ecx, [edi + 0x1b0]
lea eax, [ebp - 0x19c]
cmp ecx, eax
je 0x1007a2b2
cmp dword [ebp - 0x188], 0xf
push dword [ebp - 0x18c]
cmova eax, dword [ebp - 0x19c]
push eax
call fcn.10034e50
mov eax, dword [ebp - 0x11c]
mov dword [edi + 0x204], eax
mov dword [edi + 0x21c], 0
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x1a0]
cmp ecx, 0xf
jbe 0x1007a306
mov edx, dword [ebp - 0x1b4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007a2fc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x188]
mov dword [ebp - 0x1a4], 0
mov dword [ebp - 0x1a0], 0xf
mov byte [ebp - 0x1b4], 0
cmp ecx, 0xf
jbe 0x1007a362
mov edx, dword [ebp - 0x19c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007a358
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea esi, [edi + 0x1d0]
mov dword [ebp - 0x18c], 0
mov dword [ebp - 0x188], 0xf
mov byte [ebp - 0x19c], 0
mov dword [ebp - 0xb4], 0x10039a70
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007a3a1
mov dword [eax], 0x10039a70
add dword [esi + 4], 4
jmp 0x1007a3b0
lea ecx, [ebp - 0xb4]
push ecx
push eax
mov ecx, esi
call fcn.10036960
mov dword [ebp - 0xb8], 0x10039bb0
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007a3ce
mov dword [eax], 0x10039bb0
add dword [esi + 4], 4
jmp 0x1007a3dd
lea ecx, [ebp - 0xb8]
push ecx
push eax
mov ecx, esi
call fcn.10036960
lea eax, [edi + 0x178]
mov dword [ebp - 0x30], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x190], 0
imul eax, dword [edi + 0x190], 0xeb
add eax, 0x14
mov dword [edi + 0x17c], eax
mov dword [edi + 0x184], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x194], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007a42c
mov eax, dword [ebp - 0x30]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007a436
lea eax, [ebp - 0x30]
push eax
push edx
call fcn.10036960
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0x15c], 0
push str.box_friendly
lea ecx, [ebp - 0x16c]
mov dword [ebp - 0x158], 0
movups xmmword [ebp - 0x16c], xmm0
call fcn.10035960
mov dword [ebp - 4], 0xe
lea ecx, [ebp - 0x184]
push 0x12
xorps xmm0, xmm0
mov dword [ebp - 0x174], 0
push str.box_friendly_color
movups xmmword [ebp - 0x184], xmm0
mov dword [ebp - 0x170], 0
call fcn.10035960
lea ecx, [edi + 0x2ac]
mov byte [ebp - 4], 0xf
lea eax, [ebp - 0x184]
mov dword [ebp - 0x104], 0xffffffff
cmp ecx, eax
je 0x1007a4d5
cmp dword [ebp - 0x170], 0xf
push dword [ebp - 0x174]
cmova eax, dword [ebp - 0x184]
push eax
call fcn.10034e50
lea ecx, [edi + 0x270]
lea eax, [ebp - 0x16c]
cmp ecx, eax
je 0x1007a4ff
cmp dword [ebp - 0x158], 0xf
push dword [ebp - 0x15c]
cmova eax, dword [ebp - 0x16c]
push eax
call fcn.10034e50
mov eax, dword [ebp - 0x104]
mov dword [edi + 0x2c4], eax
mov dword [edi + 0x2dc], 0
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x170]
cmp ecx, 0xf
jbe 0x1007a553
mov edx, dword [ebp - 0x184]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007a549
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x158]
mov dword [ebp - 0x174], 0
mov dword [ebp - 0x170], 0xf
mov byte [ebp - 0x184], 0
cmp ecx, 0xf
jbe 0x1007a5af
mov edx, dword [ebp - 0x16c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007a5a5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea esi, [edi + 0x290]
mov dword [ebp - 0x15c], 0
mov dword [ebp - 0x158], 0xf
mov byte [ebp - 0x16c], 0
mov dword [ebp - 0xa4], 0x10039a70
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007a5ee
mov dword [eax], 0x10039a70
add dword [esi + 4], 4
jmp 0x1007a5fd
lea ecx, [ebp - 0xa4]
push ecx
push eax
mov ecx, esi
call fcn.10036960
mov dword [ebp - 0xbc], 0x10039ad0
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007a61b
mov dword [eax], 0x10039ad0
add dword [esi + 4], 4
jmp 0x1007a62a
lea ecx, [ebp - 0xbc]
push ecx
push eax
mov ecx, esi
call fcn.10036960
lea eax, [edi + 0x238]
mov dword [ebp - 0x34], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x250], 0
imul eax, dword [edi + 0x250], 0xeb
add eax, 0x14
mov dword [edi + 0x23c], eax
mov dword [edi + 0x244], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x254], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007a679
mov eax, dword [ebp - 0x34]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007a683
lea eax, [ebp - 0x34]
push eax
push edx
call fcn.10036960
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x3fc], 0
push str.dormant
lea ecx, [ebp - 0x40c]
mov dword [ebp - 0x3f8], 0
lea esi, [edi + 0x2f8]
movups xmmword [ebp - 0x40c], xmm0
call fcn.10035960
mov dword [ebp - 4], 0x10
lea ecx, [ebp - 0x154]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x144], 0
push str.dormant_enemies
movups xmmword [ebp - 0x154], xmm0
mov dword [ebp - 0x140], 0
call fcn.10035960
lea ecx, [edi + 0x330]
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0x40c]
cmp ecx, eax
je 0x1007a71e
cmp dword [ebp - 0x3f8], 0xf
push dword [ebp - 0x3fc]
cmova eax, dword [ebp - 0x40c]
push eax
call fcn.10034e50
lea ecx, [edi + 0x368]
mov byte [edi + 0x361], 1
lea eax, [ebp - 0x154]
cmp ecx, eax
je 0x1007a74f
cmp dword [ebp - 0x140], 0xf
push dword [ebp - 0x144]
cmova eax, dword [ebp - 0x154]
push eax
call fcn.10034e50
mov byte [edi + 0x364], 0
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x140]
cmp ecx, 0xf
jbe 0x1007a794
mov edx, dword [ebp - 0x154]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007a78a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3f8]
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x140], 0xf
mov byte [ebp - 0x154], 0
cmp ecx, 0xf
jbe 0x1007a7f0
mov edx, dword [ebp - 0x40c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007a7e6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea ecx, [edi + 0x350]
mov dword [ebp - 0x3fc], 0
mov dword [ebp - 0x3f8], 0xf
mov byte [ebp - 0x40c], 0
mov dword [ebp - 0xc0], 0x10039a70
mov eax, dword [ecx + 4]
cmp eax, dword [ecx + 8]
je 0x1007a82f
mov dword [eax], 0x10039a70
add dword [ecx + 4], 4
jmp 0x1007a83c
lea edx, [ebp - 0xc0]
push edx
push eax
call fcn.10036960
mov dword [ebp - 0x38], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x310], 0
imul eax, dword [edi + 0x310], 0xeb
add eax, 0x14
mov dword [edi + 0x2fc], eax
mov dword [edi + 0x304], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x314], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007a885
mov eax, dword [ebp - 0x38]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007a88f
lea eax, [ebp - 0x38]
push eax
push edx
call fcn.10036960
push 9
xorps xmm0, xmm0
mov dword [ebp - 0x24c], 0
push str.offscreen
lea ecx, [ebp - 0x25c]
mov dword [ebp - 0x248], 0
lea esi, [edi + 0x380]
movups xmmword [ebp - 0x25c], xmm0
call fcn.10035960
mov dword [ebp - 4], 0x12
lea ecx, [ebp - 0x244]
push 0x13
xorps xmm0, xmm0
mov dword [ebp - 0x234], 0
push str.enemy_offscreen_esp
movups xmmword [ebp - 0x244], xmm0
mov dword [ebp - 0x230], 0
call fcn.10035960
lea ecx, [edi + 0x3b8]
mov byte [ebp - 4], 0x13
lea eax, [ebp - 0x25c]
cmp ecx, eax
je 0x1007a92a
cmp dword [ebp - 0x248], 0xf
push dword [ebp - 0x24c]
cmova eax, dword [ebp - 0x25c]
push eax
call fcn.10034e50
lea ecx, [edi + 0x3f0]
mov byte [edi + 0x3e9], 1
lea eax, [ebp - 0x244]
cmp ecx, eax
je 0x1007a95b
cmp dword [ebp - 0x230], 0xf
push dword [ebp - 0x234]
cmova eax, dword [ebp - 0x244]
push eax
call fcn.10034e50
mov byte [edi + 0x3ec], 0
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x230]
cmp ecx, 0xf
jbe 0x1007a9a0
mov edx, dword [ebp - 0x244]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007a996
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x248]
mov dword [ebp - 0x234], 0
mov dword [ebp - 0x230], 0xf
mov byte [ebp - 0x244], 0
cmp ecx, 0xf
jbe 0x1007a9fc
mov edx, dword [ebp - 0x25c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007a9f2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea ecx, [edi + 0x3d8]
mov dword [ebp - 0x24c], 0
mov dword [ebp - 0x248], 0xf
mov byte [ebp - 0x25c], 0
mov dword [ebp - 0xc4], 0x10039a70
mov eax, dword [ecx + 4]
cmp eax, dword [ecx + 8]
je 0x1007aa3b
mov dword [eax], 0x10039a70
add dword [ecx + 4], 4
jmp 0x1007aa48
lea edx, [ebp - 0xc4]
push edx
push eax
call fcn.10036960
mov dword [ebp - 0x54], esi
lea ecx, [edi + 0x18]
mov dword [edi + 0x398], 0
imul eax, dword [edi + 0x398], 0xeb
add eax, 0x14
mov dword [edi + 0x384], eax
mov dword [edi + 0x38c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x39c], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007aa91
mov eax, dword [ebp - 0x54]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007aa9b
lea eax, [ebp - 0x54]
push eax
push edx
call fcn.10036960
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x6f0], 0
push str.default
lea ecx, [ebp - 0x700]
mov dword [ebp - 0x6ec], 0
movups xmmword [ebp - 0x700], xmm0
call fcn.10035960
mov dword [ebp - 4], 0x14
lea ecx, [ebp - 0x6e8]
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x6d8], 0
push str.arrow
movups xmmword [ebp - 0x6e8], xmm0
mov dword [ebp - 0x6d4], 0
call fcn.10035960
lea ecx, [ebp - 0x700]
mov dword [ebp - 4], 0x15
push ecx
lea eax, [ebp - 0x6d0]
push eax
push ecx
lea ecx, [ebp - 0x55c]
call fcn.1009d0d0
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x28c]
push 0xe
xorps xmm0, xmm0
mov dword [ebp - 0x27c], 0
push str.offscreen_type
movups xmmword [ebp - 0x28c], xmm0
mov dword [ebp - 0x278], 0
call fcn.10035960
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x274]
push 0xe
xorps xmm0, xmm0
mov dword [ebp - 0x264], 0
push 0x100e231c
movups xmmword [ebp - 0x274], xmm0
mov dword [ebp - 0x260], 0
call fcn.10035960
lea ecx, [edi + 0x440]
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x28c]
cmp ecx, eax
je 0x1007abb9
cmp dword [ebp - 0x278], 0xf
push dword [ebp - 0x27c]
cmova eax, dword [ebp - 0x28c]
push eax
call fcn.10034e50
lea ecx, [edi + 0x478]
mov byte [edi + 0x471], 1
lea eax, [ebp - 0x274]
cmp ecx, eax
je 0x1007abea
cmp dword [ebp - 0x260], 0xf
push dword [ebp - 0x264]
cmova eax, dword [ebp - 0x274]
push eax
call fcn.10034e50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x471], al
cmovne eax, ecx
mov dword [edi + 0x4a4], eax
add eax, 0x14
mov dword [edi + 0x418], eax
mov dword [edi + 0x41c], eax
mov eax, dword [ebp - 0x558]
mov esi, dword [ebp - 0x55c]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x1007ac69
lea ecx, [edi + 0x490]
nop dword [eax + eax]
mov eax, dword [edi + 0x494]
push esi
cmp eax, dword [edi + 0x498]
je 0x1007ac55
mov ecx, eax
call fcn.10034a50
add dword [edi + 0x494], 0x18
lea ecx, [edi + 0x490]
jmp 0x1007ac61
push eax
call fcn.1005a410
lea ecx, [edi + 0x490]
add esi, 0x18
cmp esi, dword [ebp - 0x18]
jne 0x1007ac30
mov ecx, dword [edi + 0x494]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x490]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1007ac92
mov dword [edi + 0x4a0], 0
mov byte [ebp - 4], 0x17
mov ecx, dword [ebp - 0x260]
cmp ecx, 0xf
jbe 0x1007acd0
mov edx, dword [ebp - 0x274]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007acc6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov byte [ebp - 4], 0x16
mov ecx, dword [ebp - 0x278]
mov dword [ebp - 0x264], 0
mov dword [ebp - 0x260], 0xf
mov byte [ebp - 0x274], 0
cmp ecx, 0xf
jbe 0x1007ad29
mov edx, dword [ebp - 0x28c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007ad1f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea ecx, [ebp - 0x55c]
mov dword [ebp - 0x27c], 0
mov dword [ebp - 0x278], 0xf
mov byte [ebp - 0x28c], 0
call fcn.10034bf0
push fcn.10034970
push 2
push 0x18
lea eax, [ebp - 0x700]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100cee52
lea esi, [edi + 0x460]
mov dword [ebp - 0x68], 0x10039a70
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007ad8c
mov dword [eax], 0x10039a70
add dword [esi + 4], 4
jmp 0x1007ad98
lea ecx, [ebp - 0x68]
push ecx
push eax
mov ecx, esi
call fcn.10036960
mov dword [ebp - 0x6c], 0x10039af0
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007adb3
mov dword [eax], 0x10039af0
add dword [esi + 4], 4
jmp 0x1007adbf
lea ecx, [ebp - 0x6c]
push ecx
push eax
mov ecx, esi
call fcn.10036960
lea eax, [edi + 0x408]
mov dword [ebp - 0x3c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x420], 0
imul eax, dword [edi + 0x420], 0xeb
add eax, 0x14
mov dword [edi + 0x40c], eax
mov dword [edi + 0x414], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x424], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007ae0e
mov eax, dword [ebp - 0x3c]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007ae18
lea eax, [ebp - 0x3c]
push eax
push edx
call fcn.10036960
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x720], 0
push str.fade
lea ecx, [ebp - 0x730]
mov dword [ebp - 0x71c], 0
movups xmmword [ebp - 0x730], xmm0
call fcn.10035960
mov dword [ebp - 4], 0x19
lea ecx, [ebp - 0x718]
push 7
xorps xmm0, xmm0
mov dword [ebp - 0x708], 0
push str.static
movups xmmword [ebp - 0x718], xmm0
mov dword [ebp - 0x704], 0
call fcn.10035960
lea ecx, [ebp - 0x730]
mov dword [ebp - 4], 0x1a
push ecx
lea eax, [ebp - 0x700]
push eax
push ecx
lea ecx, [ebp - 0x574]
call fcn.1009d0d0
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x2bc]
push 0x14
xorps xmm0, xmm0
mov dword [ebp - 0x2ac], 0
push str.offscreen_color_type
movups xmmword [ebp - 0x2bc], xmm0
mov dword [ebp - 0x2a8], 0
call fcn.10035960
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x2a4]
push 0x14
xorps xmm0, xmm0
mov dword [ebp - 0x294], 0
push 0x100e234c
movups xmmword [ebp - 0x2a4], xmm0
mov dword [ebp - 0x290], 0
call fcn.10035960
lea ecx, [edi + 0x4e0]
mov byte [ebp - 4], 0x1d
lea eax, [ebp - 0x2bc]
cmp ecx, eax
je 0x1007af36
cmp dword [ebp - 0x2a8], 0xf
push dword [ebp - 0x2ac]
cmova eax, dword [ebp - 0x2bc]
push eax
call fcn.10034e50
lea ecx, [edi + 0x518]
mov byte [edi + 0x511], 1
lea eax, [ebp - 0x2a4]
cmp ecx, eax
je 0x1007af67
cmp dword [ebp - 0x290], 0xf
push dword [ebp - 0x294]
cmova eax, dword [ebp - 0x2a4]
push eax
call fcn.10034e50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x511], al
cmovne eax, ecx
mov dword [edi + 0x544], eax
add eax, 0x14
mov dword [edi + 0x4b8], eax
mov dword [edi + 0x4bc], eax
mov eax, dword [ebp - 0x570]
mov esi, dword [ebp - 0x574]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x1007afe9
lea ecx, [edi + 0x530]
nop word [eax + eax]
mov eax, dword [edi + 0x534]
push esi
cmp eax, dword [edi + 0x538]
je 0x1007afd5
mov ecx, eax
call fcn.10034a50
add dword [edi + 0x534], 0x18
lea ecx, [edi + 0x530]
jmp 0x1007afe1
push eax
call fcn.1005a410
lea ecx, [edi + 0x530]
add esi, 0x18
cmp esi, dword [ebp - 0x18]
jne 0x1007afb0
mov ecx, dword [edi + 0x534]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0x530]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1007b012
mov dword [edi + 0x540], 0
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x290]
cmp ecx, 0xf
jbe 0x1007b050
mov edx, dword [ebp - 0x2a4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007b046
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x2a8]
mov dword [ebp - 0x294], 0
mov dword [ebp - 0x290], 0xf
mov byte [ebp - 0x2a4], 0
cmp ecx, 0xf
jbe 0x1007b0a9
mov edx, dword [ebp - 0x2bc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007b09f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea ecx, [ebp - 0x574]
mov dword [ebp - 0x2ac], 0
mov dword [ebp - 0x2a8], 0xf
mov byte [ebp - 0x2bc], 0
call fcn.10034bf0
push fcn.10034970
push 2
push 0x18
lea eax, [ebp - 0x730]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100cee52
lea esi, [edi + 0x500]
mov dword [ebp - 0x70], 0x10039a70
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007b10c
mov dword [eax], 0x10039a70
add dword [esi + 4], 4
jmp 0x1007b118
lea ecx, [ebp - 0x70]
push ecx
push eax
mov ecx, esi
call fcn.10036960
mov dword [ebp - 0x74], 0x10039af0
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007b133
mov dword [eax], 0x10039af0
add dword [esi + 4], 4
jmp 0x1007b13f
lea ecx, [ebp - 0x74]
push ecx
push eax
mov ecx, esi
call fcn.10036960
lea eax, [edi + 0x4a8]
mov dword [ebp - 0x40], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x4c0], 0
imul eax, dword [edi + 0x4c0], 0xeb
add eax, 0x14
mov dword [edi + 0x4ac], eax
mov dword [edi + 0x4b4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x4c4], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007b18e
mov eax, dword [ebp - 0x40]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007b198
lea eax, [ebp - 0x40]
push eax
push edx
call fcn.10036960
mov esi, dword [0x100dfc40]
lea ecx, [ebp - 0x2ec]
push 0xf
xorps xmm0, xmm0
mov dword [ebp - 0x2dc], 0
push str.offscreen_color
movups xmmword [ebp - 0x2ec], xmm0
mov dword [ebp - 0x2d8], 0
call fcn.10035960
mov dword [ebp - 4], 0x1e
lea ecx, [ebp - 0x2d4]
push 0x13
xorps xmm0, xmm0
mov dword [ebp - 0x2c4], 0
push str.offscreen_esp_color
movups xmmword [ebp - 0x2d4], xmm0
mov dword [ebp - 0x2c0], 0
call fcn.10035960
lea ecx, [edi + 0x5bc]
mov byte [ebp - 4], 0x1f
lea eax, [ebp - 0x2d4]
cmp ecx, eax
je 0x1007b233
cmp dword [ebp - 0x2c0], 0xf
push dword [ebp - 0x2c4]
cmova eax, dword [ebp - 0x2d4]
push eax
call fcn.10034e50
lea ecx, [edi + 0x580]
lea eax, [ebp - 0x2ec]
cmp ecx, eax
je 0x1007b25d
cmp dword [ebp - 0x2d8], 0xf
push dword [ebp - 0x2dc]
cmova eax, dword [ebp - 0x2ec]
push eax
call fcn.10034e50
mov dword [edi + 0x5d4], esi
mov dword [edi + 0x5ec], 0
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x2c0]
cmp ecx, 0xf
jbe 0x1007b2ab
mov edx, dword [ebp - 0x2d4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007b2a1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x2d8]
mov dword [ebp - 0x2c4], 0
mov dword [ebp - 0x2c0], 0xf
mov byte [ebp - 0x2d4], 0
cmp ecx, 0xf
jbe 0x1007b307
mov edx, dword [ebp - 0x2ec]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007b2fd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea esi, [edi + 0x5a0]
mov dword [ebp - 0x2dc], 0
mov dword [ebp - 0x2d8], 0xf
mov byte [ebp - 0x2ec], 0
mov dword [ebp - 0x78], 0x10039a70
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007b343
mov dword [eax], 0x10039a70
add dword [esi + 4], 4
jmp 0x1007b34f
lea ecx, [ebp - 0x78]
push ecx
push eax
mov ecx, esi
call fcn.10036960
mov dword [ebp - 0x7c], 0x10039af0
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007b36a
mov dword [eax], 0x10039af0
add dword [esi + 4], 4
jmp 0x1007b376
lea ecx, [ebp - 0x7c]
push ecx
push eax
mov ecx, esi
call fcn.10036960
lea eax, [edi + 0x548]
mov dword [ebp - 0x44], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x560], 0
imul eax, dword [edi + 0x560], 0xeb
add eax, 0x14
mov dword [edi + 0x54c], eax
mov dword [edi + 0x554], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x564], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007b3c5
mov eax, dword [ebp - 0x44]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007b3cf
lea eax, [ebp - 0x44]
push eax
push edx
call fcn.10036960
mov esi, dword [0x100dfc58]
lea ecx, [ebp - 0x31c]
push 0x10
xorps xmm0, xmm0
mov dword [ebp - 0x30c], 0
push str.offscreen_color1
movups xmmword [ebp - 0x31c], xmm0
mov dword [ebp - 0x308], 0
call fcn.10035960
mov dword [ebp - 4], 0x20
lea ecx, [ebp - 0x304]
push 0x1b
xorps xmm0, xmm0
mov dword [ebp - 0x2f4], 0
push str.offscreen_dormant_esp_color
movups xmmword [ebp - 0x304], xmm0
mov dword [ebp - 0x2f0], 0
call fcn.10035960
lea ecx, [edi + 0x67c]
mov byte [ebp - 4], 0x21
lea eax, [ebp - 0x304]
cmp ecx, eax
je 0x1007b46a
cmp dword [ebp - 0x2f0], 0xf
push dword [ebp - 0x2f4]
cmova eax, dword [ebp - 0x304]
push eax
call fcn.10034e50
lea ecx, [edi + 0x640]
lea eax, [ebp - 0x31c]
cmp ecx, eax
je 0x1007b494
cmp dword [ebp - 0x308], 0xf
push dword [ebp - 0x30c]
cmova eax, dword [ebp - 0x31c]
push eax
call fcn.10034e50
mov dword [edi + 0x694], esi
mov dword [edi + 0x6ac], 0
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x2f0]
cmp ecx, 0xf
jbe 0x1007b4e2
mov edx, dword [ebp - 0x304]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007b4d8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x308]
mov dword [ebp - 0x2f4], 0
mov dword [ebp - 0x2f0], 0xf
mov byte [ebp - 0x304], 0
cmp ecx, 0xf
jbe 0x1007b53e
mov edx, dword [ebp - 0x31c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007b534
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea esi, [edi + 0x660]
mov dword [ebp - 0x30c], 0
mov dword [ebp - 0x308], 0xf
mov byte [ebp - 0x31c], 0
mov dword [ebp - 0x80], 0x10039a70
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007b57a
mov dword [eax], 0x10039a70
add dword [esi + 4], 4
jmp 0x1007b586
lea ecx, [ebp - 0x80]
push ecx
push eax
mov ecx, esi
call fcn.10036960
mov dword [ebp - 0x84], 0x10039af0
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007b5a4
mov dword [eax], 0x10039af0
add dword [esi + 4], 4
jmp 0x1007b5b3
lea ecx, [ebp - 0x84]
push ecx
push eax
mov ecx, esi
call fcn.10036960
lea eax, [edi + 0x608]
mov dword [ebp - 0x48], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x620], 0
imul eax, dword [edi + 0x620], 0xeb
add eax, 0x14
mov dword [edi + 0x60c], eax
mov dword [edi + 0x614], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x624], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007b602
mov eax, dword [ebp - 0x48]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007b60c
lea eax, [ebp - 0x48]
push eax
push edx
call fcn.10036960
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x4e0], 0
push 0x100e1104
lea ecx, [ebp - 0x4f0]
mov dword [ebp - 0x4dc], 0
movups xmmword [ebp - 0x4f0], xmm0
call fcn.1005a210
mov dword [ebp - 4], 0x22
lea ecx, [ebp - 0x34c]
push 0x10
xorps xmm0, xmm0
mov dword [ebp - 0x33c], 0
push 0x100e23b0
movups xmmword [ebp - 0x34c], xmm0
mov dword [ebp - 0x338], 0
call fcn.10035960
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x334]
push 0x10
xorps xmm0, xmm0
mov dword [ebp - 0x324], 0
push str.offscreen_radius
movups xmmword [ebp - 0x334], xmm0
mov dword [ebp - 0x320], 0
call fcn.10035960
lea ecx, [edi + 0x700]
mov byte [ebp - 4], 0x24
lea eax, [ebp - 0x34c]
cmp ecx, eax
je 0x1007b6d5
cmp dword [ebp - 0x338], 0xf
push dword [ebp - 0x33c]
cmova eax, dword [ebp - 0x34c]
push eax
call fcn.10034e50
lea ecx, [edi + 0x768]
mov byte [edi + 0x731], 1
lea eax, [ebp - 0x334]
cmp ecx, eax
je 0x1007b706
cmp dword [ebp - 0x320], 0xf
push dword [ebp - 0x324]
cmova eax, dword [ebp - 0x334]
push eax
call fcn.10034e50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x731], al
cmovne eax, ecx
lea ecx, [edi + 0x780]
mov dword [edi + 0x798], eax
add eax, 8
mov dword [edi + 0x6d8], eax
mov dword [edi + 0x6dc], eax
lea eax, [ebp - 0x4f0]
mov dword [edi + 0x754], 0x41c80000
mov dword [edi + 0x758], 0x437a0000
mov dword [edi + 0x750], 0x43480000
mov dword [edi + 0x764], 0
mov dword [edi + 0x75c], 0x3f800000
cmp ecx, eax
je 0x1007b787
cmp dword [ebp - 0x4dc], 7
push dword [ebp - 0x4e0]
cmova eax, dword [ebp - 0x4f0]
push eax
call fcn.10034610
mov byte [edi + 0x74c], 0
mov byte [ebp - 4], 0x23
mov ecx, dword [ebp - 0x320]
cmp ecx, 0xf
jbe 0x1007b7cc
mov edx, dword [ebp - 0x334]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007b7c2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov byte [ebp - 4], 0x22
mov ecx, dword [ebp - 0x338]
mov dword [ebp - 0x324], 0
mov dword [ebp - 0x320], 0xf
mov byte [ebp - 0x334], 0
cmp ecx, 0xf
jbe 0x1007b825
mov edx, dword [ebp - 0x34c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007b81b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea ecx, [ebp - 0x4f0]
mov dword [ebp - 0x33c], 0
mov dword [ebp - 0x338], 0xf
mov byte [ebp - 0x34c], 0
mov dword [ebp - 4], 0xffffffff
call fcn.10034df0
lea esi, [edi + 0x720]
mov dword [ebp - 0x88], 0x10039a70
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007b876
mov dword [eax], 0x10039a70
add dword [esi + 4], 4
jmp 0x1007b885
lea ecx, [ebp - 0x88]
push ecx
push eax
mov ecx, esi
call fcn.10036960
mov dword [ebp - 0x8c], 0x10039af0
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007b8a3
mov dword [eax], 0x10039af0
add dword [esi + 4], 4
jmp 0x1007b8b2
lea ecx, [ebp - 0x8c]
push ecx
push eax
mov ecx, esi
call fcn.10036960
lea eax, [edi + 0x6c8]
mov dword [ebp - 0x4c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x6e0], 0
imul eax, dword [edi + 0x6e0], 0xeb
add eax, 0x14
mov dword [edi + 0x6cc], eax
mov dword [edi + 0x6d4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x6e4], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007b901
mov eax, dword [ebp - 0x4c]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007b90b
lea eax, [ebp - 0x4c]
push eax
push edx
call fcn.10036960
push 0
xorps xmm0, xmm0
mov dword [ebp - 0x498], 0
push 0x100e1104
lea ecx, [ebp - 0x4a8]
mov dword [ebp - 0x494], 0
movups xmmword [ebp - 0x4a8], xmm0
call fcn.1005a210
mov dword [ebp - 4], 0x25
lea ecx, [ebp - 0x37c]
push 0xe
xorps xmm0, xmm0
mov dword [ebp - 0x36c], 0
push str.offscreen_size
movups xmmword [ebp - 0x37c], xmm0
mov dword [ebp - 0x368], 0
call fcn.10035960
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x364]
push 0xe
xorps xmm0, xmm0
mov dword [ebp - 0x354], 0
push 0x100e23ec
movups xmmword [ebp - 0x364], xmm0
mov dword [ebp - 0x350], 0
call fcn.10035960
lea ecx, [edi + 0x7d4]
mov byte [ebp - 4], 0x27
lea eax, [ebp - 0x37c]
cmp ecx, eax
je 0x1007b9d4
cmp dword [ebp - 0x368], 0xf
push dword [ebp - 0x36c]
cmova eax, dword [ebp - 0x37c]
push eax
call fcn.10034e50
lea ecx, [edi + 0x83c]
mov byte [edi + 0x805], 1
lea eax, [ebp - 0x364]
cmp ecx, eax
je 0x1007ba05
cmp dword [ebp - 0x350], 0xf
push dword [ebp - 0x354]
cmova eax, dword [ebp - 0x364]
push eax
call fcn.10034e50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x805], al
cmovne eax, ecx
lea ecx, [edi + 0x854]
mov dword [edi + 0x86c], eax
add eax, 8
mov dword [edi + 0x7ac], eax
mov dword [edi + 0x7b0], eax
lea eax, [ebp - 0x4a8]
mov dword [edi + 0x828], 0x40c00000
mov dword [edi + 0x82c], 0x42000000
mov dword [edi + 0x824], 0x41400000
mov dword [edi + 0x838], 0
mov dword [edi + 0x830], 0x3f800000
cmp ecx, eax
je 0x1007ba86
cmp dword [ebp - 0x494], 7
push dword [ebp - 0x498]
cmova eax, dword [ebp - 0x4a8]
push eax
call fcn.10034610
mov byte [edi + 0x820], 0
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x350]
cmp ecx, 0xf
jbe 0x1007bacb
mov edx, dword [ebp - 0x364]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007bac1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x368]
mov dword [ebp - 0x354], 0
mov dword [ebp - 0x350], 0xf
mov byte [ebp - 0x364], 0
cmp ecx, 0xf
jbe 0x1007bb24
mov edx, dword [ebp - 0x37c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007bb1a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea ecx, [ebp - 0x4a8]
mov dword [ebp - 0x36c], 0
mov dword [ebp - 0x368], 0xf
mov byte [ebp - 0x37c], 0
mov dword [ebp - 4], 0xffffffff
call fcn.10034df0
lea esi, [edi + 0x7f4]
mov dword [ebp - 0x90], 0x10039a70
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007bb75
mov dword [eax], 0x10039a70
add dword [esi + 4], 4
jmp 0x1007bb84
lea ecx, [ebp - 0x90]
push ecx
push eax
mov ecx, esi
call fcn.10036960
mov dword [ebp - 0x94], 0x10039af0
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007bba2
mov dword [eax], 0x10039af0
add dword [esi + 4], 4
jmp 0x1007bbb1
lea ecx, [ebp - 0x94]
push ecx
push eax
mov ecx, esi
call fcn.10036960
lea eax, [edi + 0x79c]
mov dword [ebp - 0x50], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x7b4], 0
imul eax, dword [edi + 0x7b4], 0xeb
add eax, 0x14
mov dword [edi + 0x7a0], eax
mov dword [edi + 0x7a8], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x7b8], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007bc00
mov eax, dword [ebp - 0x50]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007bc0a
lea eax, [ebp - 0x50]
push eax
push edx
call fcn.10036960
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x750], 0
push str.enemy
lea ecx, [ebp - 0x760]
mov dword [ebp - 0x74c], 0
movups xmmword [ebp - 0x760], xmm0
call fcn.10035960
mov dword [ebp - 4], 0x28
lea ecx, [ebp - 0x748]
push 8
xorps xmm0, xmm0
mov dword [ebp - 0x738], 0
push str.friendly
movups xmmword [ebp - 0x748], xmm0
mov dword [ebp - 0x734], 0
call fcn.10035960
lea ecx, [ebp - 0x760]
mov dword [ebp - 4], 0x29
push ecx
lea eax, [ebp - 0x730]
push eax
push ecx
lea ecx, [ebp - 0x550]
call fcn.1009d0d0
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x394]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x384], 0
push str.name
movups xmmword [ebp - 0x394], xmm0
mov dword [ebp - 0x380], 0
call fcn.10035960
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x22c]
push 4
xorps xmm0, xmm0
mov dword [ebp - 0x21c], 0
push str.name
movups xmmword [ebp - 0x22c], xmm0
mov dword [ebp - 0x218], 0
call fcn.10035960
mov dword [ebp - 0x460], 0
mov dword [ebp - 0x45c], 0
mov dword [ebp - 0x458], 0
lea ecx, [edi + 0x8a8]
mov byte [ebp - 4], 0x2d
lea eax, [ebp - 0x394]
cmp ecx, eax
je 0x1007bd46
cmp dword [ebp - 0x380], 0xf
push dword [ebp - 0x384]
cmova eax, dword [ebp - 0x394]
push eax
call fcn.10034e50
lea ecx, [edi + 0x8e0]
mov byte [edi + 0x8d9], 1
lea eax, [ebp - 0x22c]
cmp ecx, eax
je 0x1007bd77
cmp dword [ebp - 0x218], 0xf
push dword [ebp - 0x21c]
cmova eax, dword [ebp - 0x22c]
push eax
call fcn.10034e50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x8d9], al
cmovne eax, ecx
mov dword [edi + 0x914], eax
add eax, 0x14
mov dword [edi + 0x880], eax
mov dword [edi + 0x884], eax
mov eax, dword [ebp - 0x54c]
mov esi, dword [ebp - 0x550]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x1007bdf9
lea ecx, [edi + 0x8f8]
nop word [eax + eax]
mov eax, dword [edi + 0x8fc]
push esi
cmp eax, dword [edi + 0x900]
je 0x1007bde5
mov ecx, eax
call fcn.10034a50
add dword [edi + 0x8fc], 0x18
lea ecx, [edi + 0x8f8]
jmp 0x1007bdf1
push eax
call fcn.1005a410
lea ecx, [edi + 0x8f8]
add esi, 0x18
cmp esi, dword [ebp - 0x18]
jne 0x1007bdc0
mov ecx, dword [ebp - 0x45c]
mov eax, dword [ebp - 0x460]
mov dword [ebp - 0xcc], ecx
mov dword [ebp - 0x100], eax
cmp eax, ecx
je 0x1007bea8
lea esi, [edi + 0x908]
nop
mov eax, dword [eax]
push eax
mov dword [ebp - 0x20], eax
push dword [esi + 4]
push dword [esi]
call fcn.100cecd0
mov ecx, dword [edi + 0x8fc]
sub ecx, dword [edi + 0x8f8]
mov dword [ebp - 0x18], eax
mov eax, dword [esi + 4]
mov dword [ebp - 0x1c], eax
mov eax, 0x2aaaaaab
imul ecx
mov ecx, dword [ebp - 0x20]
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
cmp ecx, eax
mov eax, dword [ebp - 0x1c]
jae 0x1007be7c
cmp eax, dword [esi + 8]
je 0x1007be6d
mov dword [eax], ecx
add dword [esi + 4], 4
jmp 0x1007be7c
lea ecx, [ebp - 0x20]
push ecx
push eax
mov ecx, esi
call fcn.10036960
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x18], eax
jne 0x1007be8d
mov eax, dword [edi + 0x8d4]
test eax, eax
je 0x1007be8d
call eax
mov eax, dword [ebp - 0x100]
add eax, 4
mov dword [ebp - 0x100], eax
cmp eax, dword [ebp - 0xcc]
jne 0x1007be20
lea ecx, [ebp - 0x460]
call fcn.10033b70
mov byte [ebp - 4], 0x2b
mov ecx, dword [ebp - 0x218]
cmp ecx, 0xf
jbe 0x1007bef1
mov edx, dword [ebp - 0x22c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007bee7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov byte [ebp - 4], 0x2a
mov ecx, dword [ebp - 0x380]
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x218], 0xf
mov byte [ebp - 0x22c], 0
cmp ecx, 0xf
jbe 0x1007bf4a
mov edx, dword [ebp - 0x394]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007bf40
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea ecx, [ebp - 0x550]
mov dword [ebp - 0x384], 0
mov dword [ebp - 0x380], 0xf
mov byte [ebp - 0x394], 0
call fcn.10034bf0
push fcn.10034970
push 2
push 0x18
lea eax, [ebp - 0x760]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100cee52
lea ecx, [edi + 0x8c8]
mov dword [ebp - 0x98], 0x10039a70
mov eax, dword [ecx + 4]
cmp eax, dword [ecx + 8]
je 0x1007bfb0
mov dword [eax], 0x10039a70
add dword [ecx + 4], 4
jmp 0x1007bfbd
lea edx, [ebp - 0x98]
push edx
push eax
call fcn.10036960
lea eax, [edi + 0x870]
mov dword [ebp - 0x58], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x888], 0
imul eax, dword [edi + 0x888], 0xeb
add eax, 0x14
mov dword [edi + 0x874], eax
mov dword [edi + 0x87c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x88c], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007c00c
mov eax, dword [ebp - 0x58]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007c016
lea eax, [ebp - 0x58]
push eax
push edx
call fcn.10036960
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0x780], 0
push str.verdana_bold
lea ecx, [ebp - 0x790]
mov dword [ebp - 0x77c], 0
movups xmmword [ebp - 0x790], xmm0
call fcn.10035960
mov dword [ebp - 4], 0x2e
lea ecx, [ebp - 0x778]
push 0xe
xorps xmm0, xmm0
mov dword [ebp - 0x768], 0
push str.verdana_normal
movups xmmword [ebp - 0x778], xmm0
mov dword [ebp - 0x764], 0
call fcn.10035960
lea ecx, [ebp - 0x790]
mov dword [ebp - 4], 0x2f
push ecx
lea eax, [ebp - 0x760]
push eax
push ecx
lea ecx, [ebp - 0x580]
call fcn.1009d0d0
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x3c4]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x3b4], 0
push str.name_style
movups xmmword [ebp - 0x3c4], xmm0
mov dword [ebp - 0x3b0], 0
call fcn.10035960
mov byte [ebp - 4], 0x31
lea ecx, [ebp - 0x3ac]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x39c], 0
push str.font_style
movups xmmword [ebp - 0x3ac], xmm0
mov dword [ebp - 0x398], 0
call fcn.10035960
lea ecx, [edi + 0xa10]
mov byte [ebp - 4], 0x32
lea eax, [ebp - 0x3c4]
cmp ecx, eax
je 0x1007c134
cmp dword [ebp - 0x3b0], 0xf
push dword [ebp - 0x3b4]
cmova eax, dword [ebp - 0x3c4]
push eax
call fcn.10034e50
lea ecx, [edi + 0xa48]
mov byte [edi + 0xa41], 1
lea eax, [ebp - 0x3ac]
cmp ecx, eax
je 0x1007c165
cmp dword [ebp - 0x398], 0xf
push dword [ebp - 0x39c]
cmova eax, dword [ebp - 0x3ac]
push eax
call fcn.10034e50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xa41], al
cmovne eax, ecx
mov dword [edi + 0xa74], eax
add eax, 0x14
mov dword [edi + 0x9e8], eax
mov dword [edi + 0x9ec], eax
mov eax, dword [ebp - 0x57c]
mov esi, dword [ebp - 0x580]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x1007c1dc
lea ecx, [edi + 0xa60]
mov eax, dword [edi + 0xa64]
push esi
cmp eax, dword [edi + 0xa68]
je 0x1007c1c8
mov ecx, eax
call fcn.10034a50
add dword [edi + 0xa64], 0x18
lea ecx, [edi + 0xa60]
jmp 0x1007c1d4
push eax
call fcn.1005a410
lea ecx, [edi + 0xa60]
add esi, 0x18
cmp esi, dword [ebp - 0x18]
jne 0x1007c1a3
mov ecx, dword [edi + 0xa64]
mov eax, 0x2aaaaaab
sub ecx, dword [edi + 0xa60]
imul ecx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
je 0x1007c205
mov dword [edi + 0xa70], 0
mov byte [ebp - 4], 0x31
mov ecx, dword [ebp - 0x398]
cmp ecx, 0xf
jbe 0x1007c243
mov edx, dword [ebp - 0x3ac]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007c239
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov byte [ebp - 4], 0x30
mov ecx, dword [ebp - 0x3b0]
mov dword [ebp - 0x39c], 0
mov dword [ebp - 0x398], 0xf
mov byte [ebp - 0x3ac], 0
cmp ecx, 0xf
jbe 0x1007c29c
mov edx, dword [ebp - 0x3c4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007c292
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
lea ecx, [ebp - 0x580]
mov dword [ebp - 0x3b4], 0
mov dword [ebp - 0x3b0], 0xf
mov byte [ebp - 0x3c4], 0
call fcn.10034bf0
push fcn.10034970
push 2
push 0x18
lea eax, [ebp - 0x790]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100cee52
lea esi, [edi + 0xa30]
mov dword [ebp - 0x9c], 0x10039a90
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007c302
mov dword [eax], 0x10039a90
add dword [esi + 4], 4
jmp 0x1007c311
lea ecx, [ebp - 0x9c]
push ecx
push eax
mov ecx, esi
call fcn.10036960
mov dword [ebp - 0xa0], 0x10039a70
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007c32f
mov dword [eax], 0x10039a70
add dword [esi + 4], 4
jmp 0x1007c33e
lea ecx, [ebp - 0xa0]
push ecx
push eax
mov ecx, esi
call fcn.10036960
lea eax, [edi + 0x9d8]
mov dword [ebp - 0x5c], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x9f0], 0
imul eax, dword [edi + 0x9f0], 0xeb
add eax, 0x14
mov dword [edi + 0x9dc], eax
mov dword [edi + 0x9e4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x9f4], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007c38d
mov eax, dword [ebp - 0x5c]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007c397
lea eax, [ebp - 0x5c]
push eax
push edx
call fcn.10036960
mov esi, dword [0x100dfc40]
lea ecx, [ebp - 0x3f4]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x3e4], 0
push 0x100e2470
movups xmmword [ebp - 0x3f4], xmm0
mov dword [ebp - 0x3e0], 0
call fcn.10035960
mov dword [ebp - 4], 0x33
lea ecx, [ebp - 0x3dc]
push 0xa
xorps xmm0, xmm0
mov dword [ebp - 0x3cc], 0
push str.name_color
movups xmmword [ebp - 0x3dc], xmm0
mov dword [ebp - 0x3c8], 0
call fcn.10035960
lea ecx, [edi + 0x98c]
mov byte [ebp - 4], 0x34
lea eax, [ebp - 0x3dc]
cmp ecx, eax
je 0x1007c432
cmp dword [ebp - 0x3c8], 0xf
push dword [ebp - 0x3cc]
cmova eax, dword [ebp - 0x3dc]
push eax
call fcn.10034e50
lea ecx, [edi + 0x950]
lea eax, [ebp - 0x3f4]
cmp ecx, eax
je 0x1007c45c
cmp dword [ebp - 0x3e0], 0xf
push dword [ebp - 0x3e4]
cmova eax, dword [ebp - 0x3f4]
push eax
call fcn.10034e50
mov dword [edi + 0x9a4], esi
mov dword [edi + 0x9bc], 0
mov byte [ebp - 4], 0x33
mov ecx, dword [ebp - 0x3c8]
cmp ecx, 0xf
jbe 0x1007c4a6
mov edx, dword [ebp - 0x3dc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007c49c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1007c4f4
push ecx
push edx
call fcn.100cf286
add esp, 8
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3e0]
mov dword [ebp - 0x3cc], 0
mov dword [ebp - 0x3c8], 0xf
mov byte [ebp - 0x3dc], 0
cmp ecx, 0xf
jbe 0x1007c504
mov edx, dword [ebp - 0x3f4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1007c4fa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x1007c4fa
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.100cf286
add esp, 8
lea esi, [edi + 0x970]
mov dword [ebp - 0x3e4], 0
mov dword [ebp - 0x3e0], 0xf
mov byte [ebp - 0x3f4], 0
mov dword [ebp - 0xa8], 0x10039a70
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007c543
mov dword [eax], 0x10039a70
add dword [esi + 4], 4
jmp 0x1007c552
lea ecx, [ebp - 0xa8]
push ecx
push eax
mov ecx, esi
call fcn.10036960
mov dword [ebp - 0xac], 0x10039a90
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
je 0x1007c570
mov dword [eax], 0x10039a90
add dword [esi + 4], 4
jmp 0x1007c57f
lea ecx, [ebp - 0xac]
push ecx
push eax
mov ecx, esi
call fcn.10036960
lea eax, [edi + 0x918]
mov dword [ebp - 0x64], eax
lea ecx, [edi + 0x18]
mov dword [edi + 0x930], 0
imul eax, dword [edi + 0x930], 0xeb
add eax, 0x14
mov dword [edi + 0x91c], eax
mov dword [edi + 0x924], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x934], eax
mov edx, dword [ecx + 4]
cmp edx, dword [ecx + 8]
je 0x1007c5ce
mov eax, dword [ebp - 0x64]
mov dword [edx], eax
add dword [ecx + 4], 4
jmp 0x1007c5d8
lea eax, [ebp - 0x64]
push eax
push edx
call fcn.10036960
push 5
xorps xmm0, xmm0
mov dword [ebp - 0x7b0], 0
push str.enemy
lea ecx, [ebp - 0x7c0]
mov dword [ebp - 0x7ac], 0
movups xmmword [ebp - 0x7c0], xmm0
call fcn.10035960
mov dword [ebp - 4], 0x35
lea ecx, [ebp - 0x7a8]
push 8
xorps xmm0, xmm0
mov dword [ebp - 0x798], 0
push str.friendly
movups xmmword [ebp - 0x7a8], xmm0
mov dword [ebp - 0x794], 0
call fcn.10035960
lea ecx, [ebp - 0x7c0]
mov dword [ebp - 4], 0x36
push ecx
lea eax, [ebp - 0x790]
push eax
push ecx
lea ecx, [ebp - 0x58c]
call fcn.1009d0d0
mov byte [ebp - 4], 0x37
lea ecx, [ebp - 0x4d8]
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x4c8], 0
push str.health
movups xmmword [ebp - 0x4d8], xmm0
mov dword [ebp - 0x4c4], 0
call fcn.10035960
mov byte [ebp - 4], 0x38
lea ecx, [ebp - 0x4c0]
push 6
xorps xmm0, xmm0
mov dword [ebp - 0x4b0], 0
push str.health
movups xmmword [ebp - 0x4c0], xmm0
mov dword [ebp - 0x4ac], 0
call fcn.10035960
mov dword [ebp - 0x450], 0
mov dword [ebp - 0x44c], 0
mov dword [ebp - 0x448], 0
lea ecx, [edi + 0xab0]
mov byte [ebp - 4], 0x3a
lea eax, [ebp - 0x4d8]
cmp ecx, eax
je 0x1007c714
cmp dword [ebp - 0x4c4], 0xf
push dword [ebp - 0x4c8]
cmova eax, dword [ebp - 0x4d8]
push eax
call fcn.10034e50
lea ecx, [edi + 0xae8]
mov byte [edi + 0xae1], 1
lea eax, [ebp - 0x4c0]
cmp ecx, eax
je 0x1007c745
cmp dword [ebp - 0x4ac], 0xf
push dword [ebp - 0x4b0]
cmova eax, dword [ebp - 0x4c0]
push eax
call fcn.10034e50
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xae1], al
cmovne eax, ecx
mov dword [edi + 0xb1c], eax
add eax, 0x14
mov dword [edi + 0xa88], eax
mov dword [edi + 0xa8c], eax
mov eax, dword [ebp - 0x588]
mov esi, dword [ebp - 0x58c]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x1007c7bc
lea ecx, [edi + 0xb00]
mov eax, dword [edi + 0xb04]
push esi
cmp eax, dword [edi + 0xb08]
je 0x1007c7a8
mov ecx, eax
call fcn.10034a50
add dword [edi + 0xb04], 0x18
lea ecx, [edi + 0xb00]
jmp 0x1007c7b4
push eax
call fcn.1005a410
lea ecx, [edi + 0xb00]
add esi, 0x18
cmp esi, dword [ebp - 0x18]
jne 0x1007c783
mov ecx, dword [ebp - 0x44c]
mov eax, dword [ebp - 0x450]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 0x100], eax
cmp eax, ecx
je 0x1007c84e
lea ecx, [edi + 0xb10]
nop
mov esi, dword [eax]
push esi
push dword [ecx + 4]
mov dword [ebp - 0x18], esi
push dword [ecx]
call fcn.100cecd0
mov dword [ebp - 0x1c], eax
lea ecx, [edi + 0xb00]
mov eax, dword [edi + 0xb14]
mov dword [ebp - 0xcc], eax
call fcn.1003b540
cmp esi, eax
jae 0x1007c81d
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0xb10]
call fcn.1004b980
mov eax, dword [ebp - 0xcc]
cmp dword [ebp - 0x1c], eax
jne 0x1007c834
mov eax, dword [edi + 0xadc]
test eax, eax
je 0x1007c834
call eax
mov eax, dword [ebp - 0x100]
lea ecx, [edi + 0xb10]
add eax, 4
mov dword [ebp - 0x100], eax
cmp eax, dword [ebp - 0x28]
jne 0x1007c7e0
lea ecx, [ebp - 0x450]
call fcn.10033b70
lea ecx, [ebp - 0x4c0]
call fcn.10034970
lea ecx, [ebp - 0x4d8]
call fcn.10034970
lea ecx, [ebp - 0x58c]
call fcn.10034bf0
push fcn.10034970
push 2
push 0x18
lea eax, [ebp - 0x7c0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100cee52
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
lea ecx, [edi + 0xad0]
push eax
call fcn.1004b980
mov dword [edi + 0xa90], 0
lea eax, [edi + 0xa78]
mov dword [edi + 0xa7c], 0x14
lea ecx, [edi + 0x18]
mov dword [ebp - 0x28], eax
mov dword [edi + 0xa84], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xa94], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1004b980
push str.money
lea ecx, [ebp - 0xb08]
call fcn.10034a10
push str.armor
lea ecx, [ebp - 0xaf0]
mov dword [ebp - 4], 0x3b
call fcn.10034a10
push str.scoped
lea ecx, [ebp - 0xad8]
mov byte [ebp - 4], 0x3c
call fcn.10034a10
push str.flashed
lea ecx, [ebp - 0xac0]
mov byte [ebp - 4], 0x3d
call fcn.10034a10
push str.reloading
lea ecx, [ebp - 0xaa8]
mov byte [ebp - 4], 0x3e
call fcn.10034a10
push str.bomb
lea ecx, [ebp - 0xa90]
mov byte [ebp - 4], 0x3f
call fcn.10034a10
push str.confidence
lea ecx, [ebp - 0xa78]
mov byte [ebp - 4], 0x40
call fcn.10034a10
push str.latency
lea ecx, [ebp - 0xa60]
mov byte [ebp - 4], 0x41
call fcn.10034a10
push str.lethal
lea ecx, [ebp - 0xa48]
mov byte [ebp - 4], 0x42
call fcn.10034a10
lea ecx, [ebp - 0xb08]
mov dword [ebp - 4], 0x43
push ecx
lea eax, [ebp - 0xa30]
push eax
push ecx
lea ecx, [ebp - 0x598]
call fcn.1009d0d0
push 0x100e24ac
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x44
call fcn.10034a10
push str.flags_enemy
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 0x45
call fcn.10034a10
mov dword [ebp - 0x490], 0
mov dword [ebp - 0x48c], 0
mov dword [ebp - 0x488], 0
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 0x47
push eax
lea ecx, [edi + 0xb58]
call fcn.10034940
lea eax, [ebp - 0xfc]
mov byte [edi + 0xb89], 1
push eax
lea ecx, [edi + 0xb90]
call fcn.10034940
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xb89], al
cmovne eax, ecx
mov dword [edi + 0xbc4], eax
add eax, 0x14
mov dword [edi + 0xb30], eax
mov dword [edi + 0xb34], eax
mov eax, dword [ebp - 0x594]
mov esi, dword [ebp - 0x598]
mov dword [ebp - 0x28], eax
cmp esi, eax
je 0x1007ca8d
lea eax, [edi + 0xba8]
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x18], eax
push esi
mov ecx, eax
call fcn.10059d90
mov eax, dword [ebp - 0x18]
add esi, 0x18
cmp esi, edi
jne 0x1007ca75
mov edi, dword [ebp - 0xc8]
mov eax, dword [ebp - 0x48c]
mov esi, dword [ebp - 0x490]
mov dword [ebp - 0xcc], eax
cmp esi, eax
je 0x1007cb1d
lea ecx, [edi + 0xbb8]
nop dword [eax]
push dword [ecx + 4]
mov eax, dword [esi]
lea edx, [ebp - 0x1c]
push dword [ecx]
lea ecx, [ebp - 0x5d8]
mov dword [ebp - 0x1c], eax
call fcn.100355c0
mov ecx, dword [edi + 0xbbc]
add esp, 8
mov dword [ebp - 0x18], ecx
lea ecx, [edi + 0xba8]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
call fcn.1003b540
cmp dword [ebp - 0x1c], eax
jae 0x1007caf8
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0xbb8]
call fcn.1004b980
mov eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x18]
jne 0x1007cb0c
mov eax, dword [edi + 0xb84]
test eax, eax
je 0x1007cb0c
call eax
add esi, 4
lea ecx, [edi + 0xbb8]
cmp esi, dword [ebp - 0xcc]
jne 0x1007cab0
lea ecx, [ebp - 0x490]
call fcn.10033b70
lea ecx, [ebp - 0xfc]
call fcn.10034970
lea ecx, [ebp - 0xe4]
call fcn.10034970
lea ecx, [ebp - 0x598]
call fcn.10034bf0
push fcn.10034970
push 9
push 0x18
lea eax, [ebp - 0xb08]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100cee52
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
lea ecx, [edi + 0xb78]
push eax
call fcn.1004b980
mov dword [edi + 0xb38], 1
lea eax, [edi + 0xb20]
mov dword [edi + 0xb24], 0xff
lea ecx, [edi + 0x18]
mov dword [ebp - 0x28], eax
mov dword [edi + 0xb2c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xb3c], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1004b980
push str.enemy
lea ecx, [ebp - 0x7f0]
call fcn.10034a10
push str.friendly
lea ecx, [ebp - 0x7d8]
mov dword [ebp - 4], 0x48
call fcn.10034a10
lea ecx, [ebp - 0x7f0]
mov dword [ebp - 4], 0x49
push ecx
lea eax, [ebp - 0x7c0]
push eax
push ecx
lea ecx, [ebp - 0x5a4]
call fcn.1009d0d0
push str.weapon
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 0x4a
call fcn.10034a10
push str.weapon
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x4b
call fcn.10034a10
mov dword [ebp - 0x430], 0
mov dword [ebp - 0x42c], 0
mov dword [ebp - 0x428], 0
lea eax, [ebp - 0xfc]
mov byte [ebp - 4], 0x4d
push eax
lea ecx, [edi + 0xca8]
call fcn.10034940
lea eax, [ebp - 0xe4]
mov byte [edi + 0xcd9], 1
push eax
lea ecx, [edi + 0xce0]
call fcn.10034940
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0xcd9], al
cmovne eax, ecx
mov dword [edi + 0xd14], eax
add eax, 0x14
mov dword [edi + 0xc80], eax
mov dword [edi + 0xc84], eax
mov eax, dword [ebp - 0x5a0]
mov esi, dword [ebp - 0x5a4]
mov dword [ebp - 0x28], eax
cmp esi, eax
je 0x1007ccd0
lea eax, [edi + 0xcf8]
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x18], eax
push esi
mov ecx, eax
call fcn.10059d90
mov eax, dword [ebp - 0x18]
add esi, 0x18
cmp esi, edi
jne 0x1007ccb8
mov edi, dword [ebp - 0xc8]
mov eax, dword [ebp - 0x42c]
mov esi, dword [ebp - 0x430]
mov dword [ebp - 0xcc], eax
cmp esi, eax
je 0x1007cd5d
lea ecx, [edi + 0xd08]
push dword [ecx + 4]
mov eax, dword [esi]
lea edx, [ebp - 0x1c]
push dword [ecx]
lea ecx, [ebp - 0x670]
mov dword [ebp - 0x1c], eax
call fcn.100355c0
mov ecx, dword [edi + 0xd0c]
add esp, 8
mov dword [ebp - 0x18], ecx
lea ecx, [edi + 0xcf8]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
call fcn.1003b540
cmp dword [ebp - 0x1c], eax
jae 0x1007cd38
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0xd08]
call fcn.1004b980
mov eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x18]
jne 0x1007cd4c
mov eax, dword [edi + 0xcd4]
test eax, eax
je 0x1007cd4c
call eax
add esi, 4
lea ecx, [edi + 0xd08]
cmp esi, dword [ebp - 0xcc]
jne 0x1007ccf0
lea ecx, [ebp - 0x430]
call fcn.10033b70
lea ecx, [ebp - 0xe4]
call fcn.10034970
lea ecx, [ebp - 0xfc]
call fcn.10034970
lea ecx, [ebp - 0x5a4]
call fcn.10034bf0
push fcn.10034970
push 2
push 0x18
lea eax, [ebp - 0x7f0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100cee52
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
lea ecx, [edi + 0xcc8]
push eax
call fcn.1004b980
mov dword [edi + 0xc88], 1
lea eax, [edi + 0xc70]
mov dword [edi + 0xc74], 0xff
lea ecx, [edi + 0x18]
mov dword [ebp - 0x28], eax
mov dword [edi + 0xc7c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xc8c], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1004b980
push str.text
lea ecx, [ebp - 0x820]
call fcn.10034a10
push str.icon
lea ecx, [ebp - 0x808]
mov dword [ebp - 4], 0x4e
call fcn.10034a10
lea ecx, [ebp - 0x820]
mov dword [ebp - 4], 0x4f
push ecx
lea eax, [ebp - 0x7f0]
push eax
push ecx
lea ecx, [ebp - 0x5bc]
call fcn.1009d0d0
push str.weapon_mode
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x50
call fcn.10034a10
push 0x100de451
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 0x51
call fcn.10034a10
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 0x52
push eax
lea ecx, [edi + 0xd50]
call fcn.10034940
mov byte [edi + 0xd81], 0
mov dword [edi + 0xdb4], 0
mov dword [edi + 0xd28], 0x14
mov dword [edi + 0xd2c], 0x14
mov eax, dword [ebp - 0x5b8]
mov esi, dword [ebp - 0x5bc]
mov dword [ebp - 0x28], eax
cmp esi, eax
je 0x1007ced9
lea eax, [edi + 0xda0]
mov edi, dword [ebp - 0x28]
mov dword [ebp - 0x18], eax
push esi
mov ecx, eax
call fcn.10059d90
mov eax, dword [ebp - 0x18]
add esi, 0x18
cmp esi, edi
jne 0x1007cec1
mov edi, dword [ebp - 0xc8]
lea ecx, [edi + 0xda0]
call fcn.1003b540
test eax, eax
je 0x1007cef2
mov dword [edi + 0xdb0], 0
lea ecx, [ebp - 0xfc]
call fcn.10034970
lea ecx, [ebp - 0xe4]
call fcn.10034970
lea ecx, [ebp - 0x5bc]
call fcn.10034bf0
push fcn.10034970
push 2
push 0x18
lea eax, [ebp - 0x820]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100cee52
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
lea ecx, [edi + 0xd70]
push eax
call fcn.1004b980
mov dword [edi + 0xd30], 1
lea eax, [edi + 0xd18]
mov dword [edi + 0xd1c], 0xff
lea ecx, [edi + 0x18]
mov dword [ebp - 0x28], eax
mov dword [edi + 0xd24], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xd34], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1004b980
push str.iconco1lor
lea ecx, [ebp - 0xfc]
add edi, 0xdb8
call fcn.10034a10
push str.weapon_color
lea ecx, [ebp - 0xe4]
mov dword [ebp - 4], 0x53
call fcn.10034a10
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 4], 0x54
mov dword [ebp - 0x108], 0xffffffff
lea ecx, [esi + 0xe2c]
call fcn.10034940
lea eax, [ebp - 0xfc]
push eax
lea ecx, [esi + 0xdf0]
call fcn.10034940
mov eax, dword [ebp - 0x108]
lea ecx, [ebp - 0xe4]
mov dword [esi + 0xe44], eax
mov dword [esi + 0xe5c], 0
call fcn.10034970
lea ecx, [ebp - 0xfc]
mov dword [ebp - 4], 0xffffffff
call fcn.10034970
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039b00
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
mov dword [ebp - 0x28], edi
mov edi, esi
mov dword [edi + 0xdd0], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0xdbc], 0xff
mov dword [edi + 0xdc4], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xdd4], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1004b980
lea esi, [edi + 0xe78]
push str.ammo
lea ecx, [ebp - 0xfc]
call fcn.10034a10
push str.ammo
lea ecx, [ebp - 0xe4]
mov dword [ebp - 4], 0x55
call fcn.10034a10
lea eax, [ebp - 0xfc]
mov byte [ebp - 4], 0x56
push eax
lea ecx, [edi + 0xeb0]
call fcn.10034940
lea eax, [ebp - 0xe4]
mov byte [edi + 0xee1], 1
push eax
lea ecx, [edi + 0xee8]
call fcn.10034940
lea ecx, [ebp - 0xe4]
mov byte [edi + 0xee4], 0
call fcn.10034970
lea ecx, [ebp - 0xfc]
mov dword [ebp - 4], 0xffffffff
call fcn.10034970
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
lea ecx, [esi + 0x58]
push eax
call fcn.1004b980
mov dword [edi + 0xe90], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0xe7c], 0xff
mov dword [edi + 0xe84], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xe94], eax
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 0x28], esi
call fcn.1004b980
push str.ammo_color
lea ecx, [ebp - 0xfc]
add edi, 0xf00
call fcn.10034a10
push str.color
lea ecx, [ebp - 0xe4]
mov dword [ebp - 4], 0x57
call fcn.10034a10
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 4], 0x58
mov dword [ebp - 0x10c], 0xffb0783c
lea ecx, [esi + 0xf74]
call fcn.10034940
lea eax, [ebp - 0xfc]
push eax
lea ecx, [esi + 0xf38]
call fcn.10034940
mov eax, dword [ebp - 0x10c]
lea ecx, [ebp - 0xe4]
mov dword [esi + 0xf8c], eax
mov dword [esi + 0xfa4], 0
call fcn.10034970
lea ecx, [ebp - 0xfc]
mov dword [ebp - 4], 0xffffffff
call fcn.10034970
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039c90
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
mov dword [ebp - 0x28], edi
mov edi, esi
mov dword [edi + 0xf18], 1
mov dword [edi + 0xf04], 0xff
lea ecx, [edi + 0x18]
mov dword [edi + 0xf0c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xf1c], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1004b980
push 0x100e250c
lea ecx, [ebp - 0xfc]
lea esi, [edi + 0xfc0]
call fcn.10034a10
push str.lby_update
lea ecx, [ebp - 0xe4]
mov dword [ebp - 4], 0x59
call fcn.10034a10
lea eax, [ebp - 0xfc]
mov byte [ebp - 4], 0x5a
push eax
lea ecx, [edi + 0xff8]
call fcn.10034940
lea eax, [ebp - 0xe4]
mov byte [edi + 0x1029], 1
push eax
lea ecx, [edi + 0x1030]
call fcn.10034940
lea ecx, [ebp - 0xe4]
mov byte [edi + 0x102c], 0
call fcn.10034970
lea ecx, [ebp - 0xfc]
mov dword [ebp - 4], 0xffffffff
call fcn.10034970
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
lea ecx, [esi + 0x58]
push eax
call fcn.1004b980
mov dword [edi + 0xfd8], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0xfc4], 0xff
mov dword [edi + 0xfcc], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0xfdc], eax
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 0x28], esi
call fcn.1004b980
push str.lby_update_color
lea ecx, [ebp - 0xfc]
add edi, 0x1048
call fcn.10034a10
push str.color
lea ecx, [ebp - 0xe4]
mov dword [ebp - 4], 0x5b
call fcn.10034a10
mov esi, dword [ebp - 0xc8]
lea eax, [ebp - 0xe4]
push eax
mov byte [ebp - 4], 0x5c
mov dword [ebp - 0x110], 0xff703cb4
lea ecx, [esi + 0x10bc]
call fcn.10034940
lea eax, [ebp - 0xfc]
push eax
lea ecx, [esi + 0x1080]
call fcn.10034940
mov eax, dword [ebp - 0x110]
lea ecx, [ebp - 0xe4]
mov dword [esi + 0x10d4], eax
mov dword [esi + 0x10ec], 0
call fcn.10034970
lea ecx, [ebp - 0xfc]
mov dword [ebp - 4], 0xffffffff
call fcn.10034970
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039e10
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
mov dword [esi + 0x1060], 1
lea ecx, [esi + 0x18]
mov dword [esi + 0x104c], 0xff
mov dword [esi + 0x1054], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1064], eax
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 0x28], edi
call fcn.1004b980
push str.enemy
lea ecx, [ebp - 0x8c8]
call fcn.10034a10
push str.friendly
lea ecx, [ebp - 0x8b0]
mov dword [ebp - 4], 0x5d
call fcn.10034a10
push str.local
lea ecx, [ebp - 0x898]
mov byte [ebp - 4], 0x5e
call fcn.10034a10
lea ecx, [ebp - 0x8c8]
mov dword [ebp - 4], 0x5f
push ecx
lea eax, [ebp - 0x880]
push eax
push ecx
lea ecx, [ebp - 0x5b0]
call fcn.1009d0d0
push str.skeleton
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 0x60
call fcn.10034a10
push str.skeleton
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x61
call fcn.10034a10
mov dword [ebp - 0x480], 0
mov dword [ebp - 0x47c], 0
mov dword [ebp - 0x478], 0
lea eax, [ebp - 0xfc]
mov byte [ebp - 4], 0x63
push eax
lea ecx, [esi + 0x1140]
call fcn.10034940
lea eax, [ebp - 0xe4]
mov byte [esi + 0x1171], 1
push eax
lea ecx, [esi + 0x1178]
call fcn.10034940
xor eax, eax
mov ecx, 0xf
cmp byte [esi + 0x1171], al
cmovne eax, ecx
mov dword [esi + 0x11ac], eax
add eax, 0x14
mov dword [esi + 0x1118], eax
mov dword [esi + 0x111c], eax
mov eax, dword [ebp - 0x5ac]
mov edi, dword [ebp - 0x5b0]
mov dword [ebp - 0x18], eax
cmp edi, eax
je 0x1007d51a
lea eax, [esi + 0x1190]
mov esi, eax
push edi
mov ecx, esi
call fcn.10059d90
add edi, 0x18
cmp edi, dword [ebp - 0x18]
jne 0x1007d504
mov esi, dword [ebp - 0xc8]
mov eax, dword [ebp - 0x47c]
mov edi, dword [ebp - 0x480]
mov dword [ebp - 0xcc], eax
cmp edi, eax
je 0x1007d5ad
lea ecx, [esi + 0x11a0]
nop word [eax + eax]
push dword [ecx + 4]
mov eax, dword [edi]
lea edx, [ebp - 0x1c]
push dword [ecx]
lea ecx, [ebp - 0x66c]
mov dword [ebp - 0x1c], eax
call fcn.100355c0
mov ecx, dword [esi + 0x11a4]
add esp, 8
mov dword [ebp - 0x18], ecx
lea ecx, [esi + 0x1190]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
call fcn.1003b540
cmp dword [ebp - 0x1c], eax
jae 0x1007d588
lea eax, [ebp - 0x1c]
push eax
lea ecx, [esi + 0x11a0]
call fcn.1004b980
mov eax, dword [ebp - 0x28]
cmp eax, dword [ebp - 0x18]
jne 0x1007d59c
mov eax, dword [esi + 0x116c]
test eax, eax
je 0x1007d59c
add edi, 4
lea ecx, [esi + 0x11a0]
cmp edi, dword [ebp - 0xcc]
jne 0x1007d540
lea ecx, [ebp - 0x480]
call fcn.10033b70
lea ecx, [ebp - 0xe4]
call fcn.10034970
lea ecx, [ebp - 0xfc]
call fcn.10034970
lea ecx, [ebp - 0x5b0]
call fcn.10034bf0
push fcn.10034970
push 3
push 0x18
lea eax, [ebp - 0x8c8]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100cee52
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
lea ecx, [esi + 0x1160]
push eax
call fcn.1004b980
mov dword [esi + 0x1120], 1
lea eax, [esi + 0x1108]
mov dword [esi + 0x110c], 0xff
lea ecx, [esi + 0x18]
mov dword [ebp - 0x28], eax
mov dword [esi + 0x1114], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x1124], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1004b980
push str.skeleton_enemy
lea ecx, [ebp - 0xfc]
lea edi, [esi + 0x11b0]
call fcn.10034a10
push str.enemy_color
lea ecx, [ebp - 0xe4]
mov dword [ebp - 4], 0x64
call fcn.10034a10
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 0x65
push eax
lea ecx, [esi + 0x1224]
mov dword [ebp - 0x114], 0xffffffff
call fcn.10034940
lea eax, [ebp - 0xfc]
push eax
lea ecx, [esi + 0x11e8]
call fcn.10034940
mov eax, dword [ebp - 0x114]
lea ecx, [ebp - 0xe4]
mov dword [esi + 0x123c], eax
mov dword [esi + 0x1254], 0
call fcn.10034970
lea ecx, [ebp - 0xfc]
mov dword [ebp - 4], 0xffffffff
call fcn.10034970
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039bd0
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
mov esi, dword [ebp - 0xc8]
mov dword [ebp - 0x28], edi
mov dword [esi + 0x11c8], 1
lea ecx, [esi + 0x18]
mov dword [esi + 0x11b4], 0xff
mov dword [esi + 0x11bc], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x11cc], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1004b980
lea edi, [esi + 0x1270]
push str.skeleton_friendly
lea ecx, [ebp - 0xfc]
call fcn.10034a10
push str.friendly_color
lea ecx, [ebp - 0xe4]
mov dword [ebp - 4], 0x66
call fcn.10034a10
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 0x67
push eax
lea ecx, [esi + 0x12e4]
mov dword [ebp - 0x118], 0xffffffff
call fcn.10034940
lea eax, [ebp - 0xfc]
push eax
lea ecx, [esi + 0x12a8]
call fcn.10034940
mov eax, dword [ebp - 0x118]
lea ecx, [ebp - 0xe4]
mov dword [esi + 0x12fc], eax
mov dword [esi + 0x1314], 0
call fcn.10034970
lea ecx, [ebp - 0xfc]
mov dword [ebp - 4], 0xffffffff
call fcn.10034970
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039c10
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
mov dword [esi + 0x1288], 1
lea ecx, [esi + 0x18]
mov dword [esi + 0x1274], 0xff
mov dword [esi + 0x127c], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x128c], eax
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 0x28], edi
call fcn.1004b980
push str.skeleton_local
lea ecx, [ebp - 0xfc]
lea edi, [esi + 0x1330]
call fcn.10034a10
push str.local_color
lea ecx, [ebp - 0xe4]
mov dword [ebp - 4], 0x68
call fcn.10034a10
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 0x69
push eax
lea ecx, [esi + 0x13a4]
mov dword [ebp - 0x138], 0xffffffff
call fcn.10034940
lea eax, [ebp - 0xfc]
push eax
lea ecx, [esi + 0x1368]
call fcn.10034940
mov eax, dword [ebp - 0x138]
lea ecx, [ebp - 0xe4]
mov dword [esi + 0x13bc], eax
mov dword [esi + 0x13d4], 0
call fcn.10034970
lea ecx, [ebp - 0xfc]
mov dword [ebp - 4], 0xffffffff
call fcn.10034970
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a70
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
mov dword [ebp - 0x28], 0x10039bf0
lea eax, [ebp - 0x28]
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
mov dword [esi + 0x1348], 1
lea ecx, [esi + 0x18]
mov dword [esi + 0x1334], 0xff
mov dword [esi + 0x133c], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x134c], eax
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 0x28], edi
call fcn.1004b980
push 0x100e15ec
lea ecx, [ebp - 0xa30]
call fcn.10034a10
push str.filled_blur
lea ecx, [ebp - 0xa18]
mov dword [ebp - 4], 0x6a
call fcn.10034a10
push str.blur_outline
lea ecx, [ebp - 0xa00]
mov byte [ebp - 4], 0x6b
call fcn.10034a10
push str.model
lea ecx, [ebp - 0x9e8]
mov byte [ebp - 4], 0x6c
call fcn.10034a10
push str.edge
lea ecx, [ebp - 0x9d0]
mov byte [ebp - 4], 0x6d
call fcn.10034a10
push str.edge_pulse
lea ecx, [ebp - 0x9b8]
mov byte [ebp - 4], 0x6e
call fcn.10034a10
lea ecx, [ebp - 0xa30]
mov dword [ebp - 4], 0x6f
push ecx
lea eax, [ebp - 0x9a0]
push eax
push ecx
lea ecx, [ebp - 0x568]
call fcn.1009d0d0
push str.glow
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 0x70
call fcn.10034a10
push str.glow
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x71
call fcn.10034a10
lea eax, [ebp - 0xfc]
mov byte [ebp - 4], 0x72
push eax
lea ecx, [esi + 0x1428]
call fcn.10034940
lea eax, [ebp - 0xe4]
mov byte [esi + 0x1459], 1
push eax
lea ecx, [esi + 0x1460]
call fcn.10034940
xor eax, eax
mov ecx, 0xf
cmp byte [esi + 0x1459], al
cmovne eax, ecx
mov dword [esi + 0x148c], eax
add eax, 0x14
mov dword [esi + 0x1400], eax
mov dword [esi + 0x1404], eax
mov eax, dword [ebp - 0x564]
mov edi, dword [ebp - 0x568]
mov dword [ebp - 0x18], eax
cmp edi, eax
je 0x1007da5c
lea eax, [esi + 0x1478]
mov esi, eax
push edi
mov ecx, esi
call fcn.10059d90
add edi, 0x18
cmp edi, dword [ebp - 0x18]
jne 0x1007da46
mov esi, dword [ebp - 0xc8]
lea ecx, [esi + 0x1478]
call fcn.1003b540
test eax, eax
je 0x1007da75
mov dword [esi + 0x1488], 0
lea ecx, [ebp - 0xe4]
call fcn.10034970
lea ecx, [ebp - 0xfc]
call fcn.10034970
lea ecx, [ebp - 0x568]
call fcn.10034bf0
push fcn.10034970
push 6
push 0x18
lea eax, [ebp - 0xa30]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100cee52
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a80
lea ecx, [esi + 0x1448]
push eax
call fcn.1004b980
mov dword [esi + 0x1408], 1
lea eax, [esi + 0x13f0]
mov dword [esi + 0x13f4], 0xff
lea ecx, [esi + 0x18]
mov dword [ebp - 0x28], eax
mov dword [esi + 0x13fc], 0xaf
mov eax, dword [esi + 0x2c]
mov dword [esi + 0x140c], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1004b980
push str.glow_enemy
lea ecx, [ebp - 0xfc]
lea edi, [esi + 0x1490]
call fcn.10034a10
push str.glow_color
lea ecx, [ebp - 0xe4]
mov dword [ebp - 4], 0x73
call fcn.10034a10
lea eax, [ebp - 0xe4]
mov byte [ebp - 4], 0x74
push eax
lea ecx, [esi + 0x1504]
mov dword [ebp - 0x120], 0x7d703cb4
call fcn.10034940
lea eax, [ebp - 0xfc]
push eax
lea ecx, [esi + 0x14c8]
call fcn.10034940
mov eax, dword [ebp - 0x120]
lea ecx, [ebp - 0xe4]
mov dword [esi + 0x151c], eax
mov dword [esi + 0x1534], 0
call fcn.10034970
lea ecx, [ebp - 0xfc]
mov dword [ebp - 4], 0xffffffff
call fcn.10034970
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039a80
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
lea eax, [ebp - 0x28]
mov dword [ebp - 0x28], 0x10039d30
push eax
lea ecx, [edi + 0x58]
call fcn.1004b980
mov dword [ebp - 0x28], edi
mov edi, dword [ebp - 0xc8]
mov dword [edi + 0x14a8], 1
lea ecx, [edi + 0x18]
mov dword [edi + 0x1494], 0xff
mov dword [edi + 0x149c], 0xaf
mov eax, dword [edi + 0x2c]
mov dword [edi + 0x14ac], eax
lea eax, [ebp - 0x28]
push eax
call fcn.1004b980
push str.visible
lea ecx, [ebp - 0x850]
call fcn.10034a10
push str.invisible
lea ecx, [ebp - 0x838]
mov dword [ebp - 4], 0x75
call fcn.10034a10
lea ecx, [ebp - 0x850]
mov dword [ebp - 4], 0x76
push ecx
lea eax, [ebp - 0x820]
push eax
push ecx
lea ecx, [ebp - 0x5c8]
call fcn.1009d0d0
push 0x100e2610
lea ecx, [ebp - 0xfc]
mov byte [ebp - 4], 0x77
call fcn.10034a10
push str.chams_enemy
lea ecx, [ebp - 0xe4]
mov byte [ebp - 4], 0x78
call fcn.10034a10
mov dword [ebp - 0x440], 0
mov dword [ebp - 0x43c], 0
mov dword [ebp - 0x438], 0
lea eax, [ebp - 0xfc]
mov byte [ebp - 4], 0x7a
push eax
lea ecx, [edi + 0x1708]
call fcn.10034940
lea eax, [ebp - 0xe4]
mov byte [edi + 0x1739], 1
push eax
lea ecx, [edi + 0x1740]
call fcn.10034940
xor eax, eax
mov ecx, 0xf
cmp byte [edi + 0x1739], al
cmovne eax, ecx
mov dword [edi + 0x1774], eax
add eax, 0x14
mov dword [edi + 0x16e0], eax
mov dword [edi + 0x16e4], eax
mov eax, dword [ebp - 0x5c4]
mov esi, dword [ebp - 0x5c8]
mov dword [ebp - 0x28], eax
cmp esi, eax
je 0x1007dd18