Function at 0x1006b2e0
Capabilities:
Access peb ldr_data
Check for peb ntglobalflag flag
Contain obfuscated stackstrings
Get number of processors
Get process heap flags
Get process heap force flags
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 0x100cb6bd
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x248
mov eax, dword [0x100e7008]
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 - 0x2c], edi
push str.visuals
lea ecx, [ebp - 0x44]
call fcn.1002d340
lea eax, [ebp - 0x44]
mov dword [ebp - 4], 0
push eax
mov ecx, edi
call fcn.10052440
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 1
call fcn.1002d2f0
push str.enemy_radar
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xffffffff
call fcn.1002d340
push str.radar
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 2
call fcn.1002d340
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 3
push eax
lea ecx, [edi + 0x1310]
call fcn.10052440
lea eax, [ebp - 0x44]
mov byte [edi + 0x1341], 1
push eax
lea ecx, [edi + 0x1348]
call fcn.10052440
mov byte [edi + 0x1344], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 4
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 5
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0x12d8]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.items
lea ecx, [ebp - 0x60]
call fcn.1002d340
push str.dropped_weapons_text
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 6
call fcn.1002d340
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 7
push eax
lea ecx, [edi + 0x68]
call fcn.10052440
lea eax, [ebp - 0x44]
mov byte [edi + 0x99], 1
push eax
lea ecx, [edi + 0xa0]
call fcn.10052440
mov byte [edi + 0x9c], 0
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x44]
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 9
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0x30]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.itemsglow
lea ecx, [ebp - 0x60]
call fcn.1002d340
push str.dropped_weapons_glow
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0xa
call fcn.1002d340
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [edi + 0xf0]
call fcn.10052440
lea eax, [ebp - 0x44]
mov byte [edi + 0x121], 1
push eax
lea ecx, [edi + 0x128]
call fcn.10052440
mov byte [edi + 0x124], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0xc
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0xd
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0xb8]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push 0x100d5af8
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x3c8]
call fcn.1008e3d0
push str.glow_color_alpha
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0xe
call fcn.1002d340
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x94]
push 0x100d37e4
call fcn.1002d340
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [edi + 0x400]
call fcn.10052440
lea eax, [ebp - 0x60]
mov byte [edi + 0x431], 0
push eax
lea ecx, [edi + 0x468]
mov dword [edi + 0x480], 0
mov dword [edi + 0x3d8], 8
mov dword [edi + 0x3dc], 8
mov dword [edi + 0x43c], 0
mov dword [edi + 0x440], 0x42c80000
mov dword [edi + 0x438], 0x42aa0000
mov dword [edi + 0x44c], 0
mov dword [edi + 0x444], 0x3f800000
call fcn.1008e3a0
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x11
call fcn.1002d2f0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x12
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x13
call fcn.100591a0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
lea ecx, [esi + 0x58]
mov dword [ebp - 0x20], 0x10037670
push eax
call fcn.10049580
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.items_distance
lea ecx, [ebp - 0x60]
call fcn.1002d340
push str.dropped_weapons_distance
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x14
call fcn.1002d340
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [edi + 0x178]
call fcn.10052440
lea eax, [ebp - 0x44]
mov byte [edi + 0x1a9], 1
push eax
lea ecx, [edi + 0x1b0]
call fcn.10052440
mov byte [edi + 0x1ac], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x16
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x17
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0x140]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
mov esi, dword [0x100d3c40]
lea ecx, [ebp - 0x60]
push str.item_color
add edi, 0x250
call fcn.1002d340
push str.dropped_weapons_color
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x18
call fcn.1002d340
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x44]
push eax
add ecx, 0x2c0
mov byte [ebp - 4], 0x19
call fcn.10052440
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x60]
push eax
lea ecx, [ecx + 0x288]
call fcn.10052440
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0x2d8], esi
mov dword [eax + 0x2f0], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x1a
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x1b
call fcn.1002d2f0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
lea ecx, [edi + 0x58]
mov dword [ebp - 0x20], 0x10037640
push eax
call fcn.10049580
mov dword [ebp - 0x1c], edi
mov dword [edi + 0x18], 0
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x2c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push 0x100d5af8
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x30c]
call fcn.1008e3d0
push str.item_color_alpha
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x1c
call fcn.1002d340
push 0x100d37e4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x1d
call fcn.1002d340
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x1e
push eax
lea ecx, [edi + 0x344]
call fcn.10052440
lea eax, [ebp - 0x60]
mov byte [edi + 0x375], 0
push eax
lea ecx, [edi + 0x3ac]
mov dword [edi + 0x3c4], 0
mov dword [edi + 0x31c], 8
mov dword [edi + 0x320], 8
mov dword [edi + 0x380], 0
mov dword [edi + 0x384], 0x437f0000
mov dword [edi + 0x37c], 0x43340000
mov dword [edi + 0x390], 0
mov dword [edi + 0x388], 0x3f800000
call fcn.1008e3a0
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x1f
call fcn.1002d2f0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x20
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x21
call fcn.100591a0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
lea ecx, [esi + 0x58]
mov dword [ebp - 0x20], 0x10037640
push eax
call fcn.10049580
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.ammo
lea ecx, [ebp - 0x60]
call fcn.1002d340
push str.dropped_weapons_ammo
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x22
call fcn.1002d340
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x23
push eax
lea ecx, [edi + 0x200]
call fcn.10052440
lea eax, [ebp - 0x44]
mov byte [edi + 0x231], 1
push eax
lea ecx, [edi + 0x238]
call fcn.10052440
mov byte [edi + 0x234], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x24
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x25
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0x1c8]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
mov esi, dword [0x100d3c40]
lea ecx, [ebp - 0x60]
push 0x100d651c
add edi, 0x484
call fcn.1002d340
push str.weapon_ammo_color
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x26
call fcn.1002d340
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x44]
push eax
mov byte [ebp - 4], 0x27
lea ecx, [ecx + 0x4f4]
call fcn.10052440
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x60]
push eax
lea ecx, [ecx + 0x4bc]
call fcn.10052440
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0x50c], esi
mov dword [eax + 0x524], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x28
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x29
call fcn.1002d2f0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
lea ecx, [edi + 0x58]
mov dword [ebp - 0x20], 0x10037680
push eax
call fcn.10049580
mov dword [ebp - 0x1c], edi
mov dword [edi + 0x18], 0
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x2c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push 0x100d5af8
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x540]
call fcn.1008e3d0
push str.ammo_color_alpha
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x2a
call fcn.1002d340
push 0x100d37e4
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x2b
call fcn.1002d340
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x2c
push eax
lea ecx, [edi + 0x578]
call fcn.10052440
lea eax, [ebp - 0x60]
mov byte [edi + 0x5a9], 0
push eax
lea ecx, [edi + 0x5e0]
mov dword [edi + 0x5f8], 0
mov dword [edi + 0x550], 8
mov dword [edi + 0x554], 8
mov dword [edi + 0x5b4], 0
mov dword [edi + 0x5b8], 0x437f0000
mov dword [edi + 0x5b0], 0x43340000
mov dword [edi + 0x5c4], 0
mov dword [edi + 0x5bc], 0x3f800000
call fcn.1008e3a0
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0x2d
call fcn.1002d2f0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x2e
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x2f
call fcn.100591a0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
lea ecx, [esi + 0x58]
mov dword [ebp - 0x20], 0x10037680
push eax
call fcn.10049580
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.proj
lea ecx, [ebp - 0x60]
call fcn.1002d340
push str.projectiles
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x30
call fcn.1002d340
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x31
push eax
lea ecx, [edi + 0x634]
call fcn.10052440
lea eax, [ebp - 0x44]
mov byte [edi + 0x665], 1
push eax
lea ecx, [edi + 0x66c]
call fcn.10052440
mov byte [edi + 0x668], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x32
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x33
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0x5fc]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
mov esi, dword [0x100d3c40]
lea ecx, [ebp - 0x60]
push str.proj_color
add edi, 0x684
call fcn.1002d340
push str.color
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x34
call fcn.1002d340
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x44]
push eax
mov byte [ebp - 4], 0x35
lea ecx, [ecx + 0x6f4]
call fcn.10052440
mov ecx, dword [ebp - 0x2c]
lea eax, [ebp - 0x60]
push eax
lea ecx, [ecx + 0x6bc]
call fcn.10052440
mov eax, dword [ebp - 0x2c]
mov dword [eax + 0x70c], esi
mov dword [eax + 0x724], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x36
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x37
call fcn.1002d2f0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
lea ecx, [edi + 0x58]
mov dword [ebp - 0x20], 0x100376c0
push eax
call fcn.10049580
mov dword [ebp - 0x1c], edi
mov dword [edi + 0x18], 0
mov ecx, dword [ebp - 0x1c]
mov edi, dword [ebp - 0x2c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
lea esi, [edi + 0x740]
push str.grenade_path
lea ecx, [ebp - 0x60]
call fcn.1002d340
push 0x100d6ea4
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x38
call fcn.1002d340
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x39
push eax
lea ecx, [edi + 0x778]
call fcn.10052440
lea eax, [ebp - 0x44]
mov byte [edi + 0x7a9], 1
push eax
lea ecx, [edi + 0x7b0]
call fcn.10052440
mov byte [edi + 0x7ac], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x3a
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x3b
call fcn.1002d2f0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
lea ecx, [esi + 0x58]
mov dword [ebp - 0x20], 0x100376c0
push eax
call fcn.10049580
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.grenade_path_col
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x7c8]
call fcn.1002d340
push str.grenade_path_color
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x3c
call fcn.1002d340
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x3d
push eax
lea ecx, [edi + 0x838]
mov dword [ebp - 0x1c], 0xffff8297
call fcn.10052440
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x800]
call fcn.10052440
mov eax, dword [ebp - 0x1c]
mov dword [edi + 0x850], eax
mov dword [edi + 0x868], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x3e
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x3f
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0x100376c0
lea ecx, [esi + 0x58]
push eax
call fcn.10049580
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.force_xhair
lea ecx, [ebp - 0x60]
call fcn.1002d340
push str.crosshair
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x40
call fcn.1002d340
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x41
push eax
lea ecx, [edi + 0x14c8]
call fcn.10052440
lea eax, [ebp - 0x44]
mov byte [edi + 0x14f9], 1
push eax
lea ecx, [edi + 0x1500]
call fcn.10052440
mov byte [edi + 0x14fc], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x42
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x43
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0x1490]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.planted_c4
lea ecx, [ebp - 0x60]
call fcn.1002d340
push str.bomb
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x44
call fcn.1002d340
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x45
push eax
lea ecx, [edi + 0x8bc]
call fcn.10052440
mov byte [edi + 0x8ed], 1
lea eax, [ebp - 0x44]
push eax
lea ecx, [edi + 0x8f4]
call fcn.10052440
mov byte [edi + 0x8f0], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x46
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x47
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0x884]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.bomb_col
lea ecx, [ebp - 0x60]
lea esi, [edi + 0x90c]
call fcn.1002d340
push str.bomb_color
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x48
call fcn.1002d340
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x49
push eax
lea ecx, [edi + 0x97c]
mov dword [ebp - 0x1c], 0xff3cc897
call fcn.10052440
lea eax, [ebp - 0x60]
push eax
lea ecx, [edi + 0x944]
call fcn.10052440
mov eax, dword [ebp - 0x1c]
mov dword [edi + 0x994], eax
mov dword [edi + 0x9ac], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x4a
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x4b
call fcn.1002d2f0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
lea ecx, [esi + 0x58]
mov dword [ebp - 0x20], 0x100376d0
push eax
call fcn.10049580
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push 0x100d5af8
lea ecx, [ebp - 0xc8]
lea esi, [edi + 0xa84]
call fcn.1008e3d0
push str.bomb_col_glow_slider
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x4c
call fcn.1002d340
push str.bomb_glow_color
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x4d
call fcn.1002d340
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x4e
push eax
lea ecx, [edi + 0xabc]
call fcn.10052440
lea eax, [ebp - 0x44]
mov byte [edi + 0xaed], 1
push eax
lea ecx, [edi + 0xb0c]
call fcn.10052440
xor ecx, ecx
mov dword [edi + 0xaf8], 0
cmp byte [esi + 0x69], cl
mov edx, 0xf
mov dword [edi + 0xafc], 0x42c80000
cmovne ecx, edx
mov dword [edi + 0xaf4], 0x42a00000
mov dword [edi + 0xb3c], ecx
mov dword [edi + 0xb08], 0
mov dword [edi + 0xb00], 0x3f800000
lea eax, [ecx + 8]
mov dword [edi + 0xa94], eax
lea ecx, [edi + 0xb24]
mov dword [edi + 0xa98], eax
lea eax, [ebp - 0xc8]
push eax
call fcn.1008e3a0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x4f
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x50
call fcn.1002d2f0
lea ecx, [ebp - 0xc8]
mov dword [ebp - 4], 0x51
call fcn.100591a0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
lea ecx, [esi + 0x58]
mov dword [ebp - 0x20], 0x100376d0
push eax
call fcn.10049580
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push 0x100d5af8
lea ecx, [ebp - 0xc8]
lea esi, [edi + 0x9c8]
call fcn.1008e3d0
mov dword [ebp - 4], 0x52
push str.bomb_col_slider
lea ecx, [ebp - 0x60]
call fcn.1002d340
push str.bomb_text_color
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x53
call fcn.1002d340
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x54
push eax
lea ecx, [edi + 0xa00]
call fcn.10052440
lea eax, [ebp - 0x44]
mov byte [edi + 0xa31], 1
push eax
lea ecx, [edi + 0xa50]
call fcn.10052440
xor eax, eax
mov dword [edi + 0xa3c], 0
cmp byte [edi + 0xa31], al
mov ecx, 0xf
mov dword [edi + 0xa40], 0x437f0000
cmovne eax, ecx
mov dword [edi + 0xa38], 0x43340000
mov dword [edi + 0xa80], eax
lea ecx, [edi + 0xa68]
add eax, 8
mov dword [edi + 0xa4c], 0
mov dword [edi + 0x9d8], eax
mov dword [edi + 0x9dc], eax
lea eax, [ebp - 0xc8]
push eax
mov dword [edi + 0xa44], 0x3f800000
call fcn.1008e3a0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x55
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x56
call fcn.1002d2f0
lea ecx, [ebp - 0xc8]
mov dword [ebp - 4], 0x57
call fcn.100591a0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
lea ecx, [esi + 0x58]
mov dword [ebp - 0x20], 0x100376d0
push eax
call fcn.10049580
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.tracers
lea ecx, [ebp - 0x60]
call fcn.1002d340
push str.grenade_trajectory
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x58
call fcn.1002d340
lea eax, [ebp - 0x60]
mov byte [ebp - 4], 0x59
push eax
lea ecx, [edi + 0x1708]
call fcn.10052440
lea eax, [ebp - 0x44]
mov byte [edi + 0x1739], 1
push eax
lea ecx, [edi + 0x1740]
call fcn.10052440
mov byte [edi + 0x173c], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x5a
call fcn.1002d2f0
lea ecx, [ebp - 0x60]
mov dword [ebp - 4], 0x5b
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0x16d0]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.tracers_color
lea ecx, [ebp - 0x120]
lea esi, [edi + 0xbfc]
call fcn.1002d340
push str.grenade_trajectory_color
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0x5c
call fcn.1002d340
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x5d
push eax
lea ecx, [edi + 0xc6c]
mov dword [ebp - 0x1c], 0xffff9532
call fcn.10052440
lea eax, [ebp - 0x120]
push eax
lea ecx, [edi + 0xc34]
call fcn.10052440
mov eax, dword [ebp - 0x1c]
mov dword [edi + 0xc84], eax
mov dword [edi + 0xc9c], 0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x5e
call fcn.1002d2f0
lea ecx, [ebp - 0x120]
mov dword [ebp - 4], 0x5f
call fcn.1002d2f0
lea eax, [ebp - 0x20]
mov dword [ebp - 4], 0xffffffff
lea ecx, [esi + 0x58]
mov dword [ebp - 0x20], 0x10037840
push eax
call fcn.10049580
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.spectators
lea ecx, [ebp - 0x150]
call fcn.1002d340
push str.spectators
lea ecx, [ebp - 0x120]
mov dword [ebp - 4], 0x60
call fcn.1002d340
lea eax, [ebp - 0x150]
mov byte [ebp - 4], 0x61
push eax
lea ecx, [edi + 0x1440]
call fcn.10052440
lea eax, [ebp - 0x120]
mov byte [edi + 0x1471], 1
push eax
lea ecx, [edi + 0x1478]
call fcn.10052440
mov byte [edi + 0x1474], 0
lea ecx, [ebp - 0x120]
mov byte [ebp - 4], 0x62
call fcn.1002d2f0
lea ecx, [ebp - 0x150]
mov dword [ebp - 4], 0x63
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0x1408]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.pen_xhair
lea ecx, [ebp - 0x108]
call fcn.1002d340
push str.penetration_reticle
lea ecx, [ebp - 0x150]
mov dword [ebp - 4], 0x64
call fcn.1002d340
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0x65
push eax
lea ecx, [edi + 0x15d8]
call fcn.10052440
lea eax, [ebp - 0x150]
mov byte [edi + 0x1609], 1
push eax
lea ecx, [edi + 0x1610]
call fcn.10052440
mov byte [edi + 0x160c], 0
lea ecx, [ebp - 0x150]
mov byte [ebp - 4], 0x66
call fcn.1002d2f0
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0x67
call fcn.1002d2f0
lea eax, [edi + 0x15a0]
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 0
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.manual_antiaim
lea ecx, [ebp - 0xb0]
call fcn.1002d340
push str.manual_anti_aim_indicators
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0x68
call fcn.1002d340
lea eax, [ebp - 0xb0]
mov byte [ebp - 4], 0x69
push eax
lea ecx, [edi + 0x1e24]
call fcn.10052440
lea eax, [ebp - 0x108]
mov byte [edi + 0x1e55], 1
push eax
lea ecx, [edi + 0x1e5c]
call fcn.10052440
mov byte [edi + 0x1e58], 0
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 0x6a
call fcn.1002d2f0
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0x6b
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0x1dec]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
mov esi, dword [0x100d3c64]
lea ecx, [ebp - 0x7c]
push str.manual_anti_aim_col
call fcn.1002d340
push str.manual_anti_aim_color
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0x6c
call fcn.1002d340
lea eax, [ebp - 0xb0]
mov byte [ebp - 4], 0x6d
push eax
lea ecx, [edi + 0x1ee4]
call fcn.10052440
lea eax, [ebp - 0x7c]
push eax
lea ecx, [edi + 0x1eac]
call fcn.10052440
mov dword [edi + 0x1efc], esi
mov dword [edi + 0x1f14], 0
mov byte [ebp - 4], 0x6e
lea ecx, [ebp - 0xb0]
call fcn.1002d2f0
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], 0x6f
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0x1e74]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.visual_recoil
lea ecx, [ebp - 0x258]
call fcn.1002d340
push str.smoke
lea ecx, [ebp - 0x240]
mov dword [ebp - 4], 0x70
call fcn.1002d340
push 0x100d7020
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x71
call fcn.1002d340
push str.flashbang
lea ecx, [ebp - 0x210]
mov byte [ebp - 4], 0x72
call fcn.1002d340
push str.scope
lea ecx, [ebp - 0x1f8]
mov byte [ebp - 4], 0x73
call fcn.1002d340
lea eax, [ebp - 0x25]
mov dword [ebp - 4], 0x74
push eax
lea ecx, [ebp - 0x1e0]
push ecx
lea edx, [ebp - 0x258]
push edx
lea ecx, [ebp - 0x54]
call fcn.1008e270
push str.removals
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x75
call fcn.1002d340
push str.removals
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x76
call fcn.1002d340
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xb8], 0
lea eax, [ebp - 0xb0]
mov byte [ebp - 4], 0x78
push eax
lea ecx, [edi + 0x1398]
call fcn.10052440
lea eax, [ebp - 0x7c]
mov byte [edi + 0x13c9], 1
push eax
lea ecx, [edi + 0x13d0]
call fcn.10052440
mov esi, dword [ebp - 0x54]
xor ecx, ecx
cmp byte [edi + 0x13c9], cl
mov eax, 0xf
cmovne ecx, eax
mov dword [edi + 0x1404], ecx
lea eax, [ecx + 0x14]
mov dword [edi + 0x1370], eax
mov dword [edi + 0x1374], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x18], eax
cmp esi, eax
je 0x1006c9d6
lea eax, [edi + 0x13e8]
mov edi, eax
push esi
mov ecx, edi
call fcn.10058e90
add esi, 0x18
cmp esi, dword [ebp - 0x18]
jne 0x1006c9c3
mov edi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0xc0]
xor esi, esi
mov ecx, dword [ebp - 0xbc]
sub ecx, edx
mov dword [ebp - 0x20], 0
add ecx, 3
mov dword [ebp - 0x1c], edx
shr ecx, 2
cmp edx, dword [ebp - 0xbc]
cmova ecx, esi
mov dword [ebp - 0x24], ecx
test ecx, ecx
je 0x1006cab3
lea ecx, [edi + 0x13f8]
mov eax, dword [edx]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0xcc]
push eax
call fcn.1002cc60
lea ecx, [edi + 0x13f8]
mov esi, dword [eax]
lea eax, [ebp - 0xd0]
push eax
call fcn.1002cc70
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0xd4]
push dword [eax]
call fcn.1002e600
add esp, 8
lea ecx, [edi + 0x13f8]
mov esi, eax
lea eax, [ebp - 0xd8]
push eax
call fcn.1002cc60
mov esi, dword [esi]
lea ecx, [edi + 0x13e8]
mov eax, dword [eax]
mov dword [ebp - 0x64], eax
call fcn.1002cd60
cmp dword [ebp - 0x18], eax
jae 0x1006ca83
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x13f8]
call fcn.10049580
cmp esi, dword [ebp - 0x64]
jne 0x1006ca94
mov eax, dword [edi + 0x13c4]
test eax, eax
je 0x1006ca94
call eax
mov eax, dword [ebp - 0x20]
lea ecx, [edi + 0x13f8]
mov edx, dword [ebp - 0x1c]
inc eax
add edx, 4
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], edx
cmp eax, dword [ebp - 0x24]
jne 0x1006ca10
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x79
call fcn.1002ce80
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x7a
call fcn.1002d2f0
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x7b
call fcn.1002d2f0
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x7c
call fcn.1002dc10
push fcn.1002d2f0
push 5
push 0x18
lea eax, [ebp - 0x258]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c5072
lea eax, [edi + 0x1360]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push 0x100d5af8
lea ecx, [ebp - 0x108]
call fcn.1008e3d0
push str.walls_amount
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0x7d
call fcn.1002d340
push str.transparent_walls
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x7e
call fcn.1002d340
lea eax, [ebp - 0xb0]
mov byte [ebp - 4], 0x7f
push eax
lea ecx, [edi + 0x1254]
call fcn.10052440
lea eax, [ebp - 0x7c]
mov byte [edi + 0x1285], 1
push eax
lea ecx, [edi + 0x12a4]
call fcn.10052440
xor ecx, ecx
mov dword [edi + 0x1290], 0
cmp byte [edi + 0x1285], cl
mov eax, 0xf
mov dword [edi + 0x1294], 0x42c80000
cmovne ecx, eax
mov dword [edi + 0x128c], 0x42c80000
mov dword [edi + 0x12d4], ecx
mov dword [edi + 0x12a0], 0
mov dword [edi + 0x1298], 0x3f800000
lea eax, [ecx + 8]
mov dword [edi + 0x122c], eax
lea ecx, [edi + 0x12bc]
mov dword [edi + 0x1230], eax
lea eax, [ebp - 0x108]
push eax
call fcn.1008e3a0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x80
call fcn.1002d2f0
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x81
call fcn.1002d2f0
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0x82
call fcn.100591a0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0x121c]
mov dword [eax + 0x64], fcn.100b8710
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push 0x100d5af8
lea ecx, [ebp - 0x150]
call fcn.1008e3d0
push str.transparent_props_amount
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0x83
call fcn.1002d340
push str.transparent_props
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x84
call fcn.1002d340
lea eax, [ebp - 0xb0]
mov byte [ebp - 4], 0x85
push eax
lea ecx, [edi + 0xf64]
call fcn.10052440
lea eax, [ebp - 0x7c]
mov byte [edi + 0xf95], 1
push eax
lea ecx, [edi + 0xfb4]
call fcn.10052440
xor eax, eax
mov dword [edi + 0xfa0], 0
cmp byte [edi + 0xf95], al
mov ecx, 0xf
mov dword [edi + 0xfa4], 0x42c80000
cmovne eax, ecx
mov dword [edi + 0xf9c], 0x42960000
mov dword [edi + 0xfe4], eax
lea ecx, [edi + 0xfcc]
add eax, 8
mov dword [edi + 0xfb0], 0
mov dword [edi + 0xf3c], eax
mov dword [edi + 0xf40], eax
lea eax, [ebp - 0x150]
push eax
mov dword [edi + 0xfa8], 0x3f800000
call fcn.1008e3a0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x86
call fcn.1002d2f0
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x87
call fcn.1002d2f0
mov dword [ebp - 4], 0x88
lea ecx, [ebp - 0x150]
call fcn.100591a0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0xf2c]
mov dword [eax + 0x64], fcn.100b8710
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.night
lea ecx, [ebp - 0x1e0]
call fcn.1002d340
push str.fullbright
lea ecx, [ebp - 0x1c8]
mov dword [ebp - 4], 0x89
call fcn.1002d340
push str.ambient
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 4], 0x8a
call fcn.1002d340
lea eax, [ebp - 0x25]
mov dword [ebp - 4], 0x8b
push eax
lea ecx, [ebp - 0x198]
push ecx
lea edx, [ebp - 0x1e0]
push edx
lea ecx, [ebp - 0x54]
call fcn.1008e270
push str.world
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x8c
call fcn.1002d340
push str.brightness_adjustment
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x8d
call fcn.1002d340
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 0
mov dword [ebp - 0xb8], 0
lea eax, [ebp - 0xb0]
mov byte [ebp - 4], 0x8f
push eax
lea ecx, [edi + 0xd78]
call fcn.10052440
lea eax, [ebp - 0x7c]
mov byte [edi + 0xda9], 1
push eax
lea ecx, [edi + 0xdb0]
call fcn.10052440
mov esi, dword [ebp - 0x54]
xor eax, eax
cmp byte [edi + 0xda9], al
mov ecx, 0xf
cmovne eax, ecx
mov dword [edi + 0xde4], eax
add eax, 0x14
mov dword [edi + 0xd50], eax
mov dword [edi + 0xd54], eax
mov eax, dword [ebp - 0x50]
mov dword [ebp - 0x24], eax
cmp esi, eax
je 0x1006cef5
lea eax, [edi + 0xdc8]
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x64], eax
nop dword [eax + eax]
push esi
mov ecx, eax
call fcn.10058e90
mov eax, dword [ebp - 0x64]
add esi, 0x18
cmp esi, edi
jne 0x1006cee0
mov edi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0xc0]
xor esi, esi
mov ecx, dword [ebp - 0xbc]
sub ecx, edx
mov dword [ebp - 0x1c], 0
add ecx, 3
mov dword [ebp - 0x20], edx
shr ecx, 2
cmp edx, dword [ebp - 0xbc]
cmova ecx, esi
mov dword [ebp - 0x64], ecx
test ecx, ecx
je 0x1006cfd3
lea ecx, [edi + 0xdd8]
nop
mov eax, dword [edx]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0xd8]
push eax
call fcn.1002cc60
lea ecx, [edi + 0xdd8]
mov esi, dword [eax]
lea eax, [ebp - 0xd4]
push eax
call fcn.1002cc70
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0xd0]
push dword [eax]
call fcn.1002e600
add esp, 8
lea ecx, [edi + 0xdd8]
mov esi, eax
lea eax, [ebp - 0xcc]
push eax
call fcn.1002cc60
mov esi, dword [esi]
lea ecx, [edi + 0xdc8]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
call fcn.1002cd60
cmp dword [ebp - 0x18], eax
jae 0x1006cfa3
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0xdd8]
call fcn.10049580
cmp esi, dword [ebp - 0x24]
jne 0x1006cfb4
mov eax, dword [edi + 0xda4]
test eax, eax
je 0x1006cfb4
call eax
mov eax, dword [ebp - 0x1c]
lea ecx, [edi + 0xdd8]
mov edx, dword [ebp - 0x20]
inc eax
add edx, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], edx
cmp eax, dword [ebp - 0x64]
jne 0x1006cf30
lea ecx, [ebp - 0xc0]
mov byte [ebp - 4], 0x90
call fcn.1002ce80
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x91
call fcn.1002d2f0
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0x92
call fcn.1002d2f0
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x93
call fcn.1002dc10
push fcn.1002d2f0
push 3
push 0x18
lea eax, [ebp - 0x1e0]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c5072
mov dword [edi + 0xda4], 0x100b8710
lea eax, [edi + 0xd40]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.nightcolor
lea ecx, [ebp - 0x108]
call fcn.1002d340
push str.world_color
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], 0x94
call fcn.1002d340
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x95
push eax
lea ecx, [edi + 0xe58]
mov dword [ebp - 0x1c], 0xff2e292b
call fcn.10052440
lea eax, [ebp - 0x108]
push eax
lea ecx, [edi + 0xe20]
call fcn.10052440
mov eax, dword [ebp - 0x1c]
mov dword [edi + 0xe70], eax
mov dword [edi + 0xe88], 0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x96
call fcn.1002d2f0
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0x97
call fcn.1002d2f0
lea esi, [edi + 0xde8]
mov dword [ebp - 4], 0xffffffff
lea eax, [ebp - 0x24]
mov dword [esi + 0x64], fcn.100b8710
lea ecx, [esi + 0x58]
mov dword [ebp - 0x24], 0x10037870
push eax
call fcn.10049580
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.propscolor
lea ecx, [ebp - 0x150]
call fcn.1002d340
push str.props_color
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], 0x98
call fcn.1002d340
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x99
push eax
lea ecx, [edi + 0x1058]
mov dword [ebp - 0x1c], 0xff808080
call fcn.10052440
lea eax, [ebp - 0x150]
push eax
lea ecx, [edi + 0x1020]
call fcn.10052440
mov eax, dword [ebp - 0x1c]
mov dword [edi + 0x1070], eax
mov dword [edi + 0x1088], 0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x9a
call fcn.1002d2f0
lea ecx, [ebp - 0x150]
mov dword [ebp - 4], 0x9b
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea eax, [edi + 0xfe8]
mov dword [eax + 0x64], fcn.100b8710
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.ambient_color
lea ecx, [ebp - 0x120]
lea esi, [edi + 0x10a4]
call fcn.1002d340
push 0x100d70f0
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], 0x9c
call fcn.1002d340
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0x9d
push eax
lea ecx, [edi + 0x1114]
mov dword [ebp - 0x1c], 0xff191919
call fcn.10052440
lea eax, [ebp - 0x120]
push eax
lea ecx, [edi + 0x10dc]
call fcn.10052440
mov eax, dword [ebp - 0x1c]
mov dword [edi + 0x112c], eax
mov dword [edi + 0x1144], 0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x9e
call fcn.1002d2f0
lea ecx, [ebp - 0x120]
mov dword [ebp - 4], 0x9f
call fcn.1002d2f0
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0xffffffff
lea ecx, [esi + 0x58]
mov dword [ebp - 0x24], 0x100378a0
push eax
call fcn.10049580
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push 0x100d5af8
lea ecx, [ebp - 0x44]
lea esi, [edi + 0x1160]
call fcn.1008e3d0
push str.ambient_alpha
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], 0xa0
call fcn.1002d340
push 0x100d37e4
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0xa1
call fcn.1002d340
lea eax, [ebp - 0x7c]
mov byte [ebp - 4], 0xa2
push eax
lea ecx, [edi + 0x1198]
call fcn.10052440
lea eax, [ebp - 0x44]
mov byte [edi + 0x11c9], 0
push eax
lea ecx, [edi + 0x1200]
mov dword [edi + 0x1218], 0
mov dword [edi + 0x1170], 8
mov dword [edi + 0x1174], 8
mov dword [edi + 0x11d4], 0
mov dword [edi + 0x11d8], 0x437f0000
mov dword [edi + 0x11d0], 0x437f0000
mov dword [edi + 0x11e4], 0
mov dword [edi + 0x11dc], 0x3f800000
call fcn.1008e3a0
lea ecx, [ebp - 0xb0]
mov byte [ebp - 4], 0xa3
call fcn.1002d2f0
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0xa4
call fcn.1002d2f0
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0xa5
call fcn.100591a0
lea eax, [ebp - 0x24]
mov dword [ebp - 4], 0xffffffff
mov dword [ebp - 0x24], 0x100378a0
lea ecx, [esi + 0x58]
push eax
call fcn.10049580
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049580
push str.postprocess
lea ecx, [ebp - 0x138]
call fcn.1002d340
push str.disable_post_processing
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], 0xa6
call fcn.1002d340
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0xa7
push eax
lea ecx, [edi + 0x1550]
call fcn.10052440
lea eax, [ebp - 0x7c]
mov byte [edi + 0x1581], 1
push eax
lea ecx, [edi + 0x1588]
call fcn.10052440
lea ecx, [ebp - 0x7c]
mov byte [edi + 0x1584], 0
call fcn.1002d2f0
lea ecx, [ebp - 0x138]
mov dword [ebp - 4], 0xffffffff
call fcn.1002d2f0
lea eax, [edi + 0x1518]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049550
push str.thirdperson
lea ecx, [ebp - 0x180]
call fcn.1002d340
push str.force_thirdperson
lea ecx, [ebp - 0x138]
mov dword [ebp - 4], 0xa8
call fcn.1002d340
lea eax, [ebp - 0x138]
mov byte [ebp - 4], 0xa9
push eax
lea ecx, [edi + 0x1bcc]
call fcn.10052440
lea eax, [ebp - 0x180]
push eax
lea ecx, [edi + 0x1b94]
call fcn.10052440
lea ecx, [ebp - 0x138]
mov dword [edi + 0x1bc8], 0xffffffff
call fcn.1002d2f0
lea ecx, [ebp - 0x180]
mov dword [ebp - 4], 0xffffffff
call fcn.1002d2f0
mov dword [edi + 0x1be8], 0x100378d0
lea eax, [edi + 0x1b5c]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049550
push str.disableteam
lea ecx, [ebp - 0xf0]
call fcn.1002d340
push str.disable_rendering_of_teammates
lea ecx, [ebp - 0x180]
mov dword [ebp - 4], 0xaa
call fcn.1002d340
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0xab
push eax
lea ecx, [edi + 0xcf0]
call fcn.10052440
lea eax, [ebp - 0x180]
mov byte [edi + 0xd21], 1
push eax
lea ecx, [edi + 0xd28]
call fcn.10052440
lea ecx, [ebp - 0x180]
mov byte [edi + 0xd24], 0
call fcn.1002d2f0
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xffffffff
call fcn.1002d2f0
lea eax, [edi + 0xcb8]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049550
push str.impact_beams
lea ecx, [ebp - 0x94]
call fcn.1002d340
push str.bullet_tracers
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xac
call fcn.1002d340
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0xad
push eax
lea ecx, [edi + 0x1790]
call fcn.10052440
lea eax, [ebp - 0xf0]
mov byte [edi + 0x17c1], 1
push eax
lea ecx, [edi + 0x17c8]
call fcn.10052440
lea ecx, [ebp - 0xf0]
mov byte [edi + 0x17c4], 0
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call fcn.1002d2f0
lea eax, [edi + 0x1758]
mov dword [ebp - 0x1c], eax
mov dword [eax + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049550
lea ecx, [ebp - 0x95]
call fcn.100282b0
push str.enemy
lea ecx, [ebp - 0x198]
mov esi, eax
call fcn.1002d340
push str.local
lea ecx, [ebp - 0x180]
mov dword [ebp - 4], 0xae
call fcn.1002d340
lea eax, [ebp - 0x168]
mov dword [ebp - 4], 0xaf
push eax
lea eax, [ebp - 0x198]
push eax
lea ecx, [ebp - 0xb8]
call fcn.1008e250
push esi
lea ecx, [ebp - 0x38]
push dword [eax + 4]
push dword [eax]
call fcn.1008e270
push str.impact_beams_entities
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0xb0
call fcn.1002d340
push str.entity_selection
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0xb1
call fcn.1002d340
lea ecx, [ebp - 0x58]
call fcn.10028290
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0xb3
push eax
lea ecx, [edi + 0x1818]
call fcn.10052440
lea eax, [ebp - 0x94]
mov byte [edi + 0x1849], 1
push eax
lea ecx, [edi + 0x1850]
call fcn.10052440
xor ecx, ecx
mov eax, 0xf
cmp byte [edi + 0x1849], cl
cmovne ecx, eax
mov dword [edi + 0x1884], ecx
lea eax, [ecx + 0x14]
lea ecx, [ebp - 0x38]
mov dword [edi + 0x17f0], eax
mov dword [edi + 0x17f4], eax
call fcn.10041910
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.10054510
mov dword [ebp - 0x24], eax
cmp esi, eax
je 0x1006d829
lea eax, [edi + 0x1868]
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x64], eax
push esi
mov ecx, eax
call fcn.10058e60
mov eax, dword [ebp - 0x64]
add esi, 0x18
cmp esi, edi
jne 0x1006d814
mov edi, dword [ebp - 0x2c]
lea ecx, [ebp - 0x58]
call fcn.10041910
mov esi, eax
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x20], esi
call fcn.10054510
mov ecx, eax
mov dword [ebp - 0x1c], 0
sub ecx, esi
xor edx, edx
add ecx, 3
shr ecx, 2
cmp esi, eax
cmova ecx, edx
mov dword [ebp - 0x24], ecx
test ecx, ecx
je 0x1006d918
lea ecx, [edi + 0x1878]
nop word [eax + eax]
mov eax, dword [esi]
mov dword [ebp - 0x18], eax
lea eax, [ebp - 0xd8]
push eax
call fcn.1002cc60
lea ecx, [edi + 0x1878]
mov esi, dword [eax]
lea eax, [ebp - 0xd4]
push eax
call fcn.1002cc70
push esi
lea edx, [ebp - 0x18]
lea ecx, [ebp - 0xd0]
push dword [eax]
call fcn.1002e600
add esp, 8
lea ecx, [edi + 0x1878]
mov esi, eax
lea eax, [ebp - 0xcc]
push eax
call fcn.1002cc60
push eax
mov ecx, esi
call fcn.1002d2d0
lea ecx, [edi + 0x1868]
mov byte [ebp - 0x25], al
call fcn.1002cd60
cmp dword [ebp - 0x18], eax
jae 0x1006d8e7
lea eax, [ebp - 0x18]
push eax
lea ecx, [edi + 0x1878]
call fcn.10049550
cmp byte [ebp - 0x25], 0
je 0x1006d8f9
mov eax, dword [edi + 0x1844]
test eax, eax
je 0x1006d8f9
call eax
mov eax, dword [ebp - 0x1c]
lea ecx, [edi + 0x1878]
mov esi, dword [ebp - 0x20]
inc eax
add esi, 4
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x20], esi
cmp eax, dword [ebp - 0x24]
jne 0x1006d870
lea ecx, [ebp - 0x58]
call fcn.1002cc80
lea ecx, [ebp - 0x94]
call fcn.1002d2f0
lea ecx, [ebp - 0xf0]
call fcn.1002d2f0
lea ecx, [ebp - 0x38]
call fcn.1002cd80
push fcn.1002d2f0
push 2
push 0x18
lea eax, [ebp - 0x198]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c5072
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10037690
lea esi, [edi + 0x17e0]
lea ecx, [esi + 0x58]
push eax
call fcn.10049550
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049550
lea ecx, [ebp - 0x25]
call fcn.100282b0
push str.kaaba
lea ecx, [ebp - 0x168]
mov esi, eax
call fcn.1002d340
push str.laser
lea ecx, [ebp - 0x150]
mov dword [ebp - 4], 0xb4
call fcn.1002d340
lea eax, [ebp - 0x138]
mov dword [ebp - 4], 0xb5
push eax
lea eax, [ebp - 0x168]
push eax
lea ecx, [ebp - 0xb8]
call fcn.1008e250
push esi
lea ecx, [ebp - 0x38]
push dword [eax + 4]
push dword [eax]
call fcn.1008e270
push str.beam_type
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0xb6
call fcn.1002d340
push str.beam_style
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0xb7
call fcn.1002d340
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0xb8
push eax
lea ecx, [edi + 0x18c0]
call fcn.10052440
lea eax, [ebp - 0x94]
mov byte [edi + 0x18f1], 1
push eax
lea ecx, [edi + 0x18f8]
call fcn.10052440
xor ecx, ecx
mov eax, 0xf
cmp byte [edi + 0x18f1], cl
cmovne ecx, eax
mov dword [edi + 0x1924], ecx
lea eax, [ecx + 0x14]
lea ecx, [ebp - 0x38]
mov dword [edi + 0x1898], eax
mov dword [edi + 0x189c], eax
call fcn.10041910
lea ecx, [ebp - 0x38]
mov esi, eax
call fcn.10054510
mov dword [ebp - 0x64], eax
lea ecx, [edi + 0x1910]
cmp esi, eax
je 0x1006dac9
mov dword [ebp - 0x24], ecx
mov edi, ecx
nop dword [eax + eax]
push esi
mov ecx, edi
call fcn.10058e60
add esi, 0x18
cmp esi, dword [ebp - 0x64]
jne 0x1006dab0
mov edi, dword [ebp - 0x2c]
lea ecx, [edi + 0x1910]
call fcn.1002cd60
test eax, eax
je 0x1006dadc
mov dword [edi + 0x1920], 0
lea ecx, [ebp - 0x94]
call fcn.1002d2f0
lea ecx, [ebp - 0xf0]
call fcn.1002d2f0
lea ecx, [ebp - 0x38]
call fcn.1002cd80
push fcn.1002d2f0
push 2
push 0x18
lea eax, [ebp - 0x168]
mov dword [ebp - 4], 0xffffffff
push eax
call fcn.100c5072
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10037690
lea esi, [edi + 0x1888]
lea ecx, [esi + 0x58]
push eax
call fcn.10049550
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049550
push 0x100d5f28
lea ecx, [ebp - 0x180]
lea esi, [edi + 0x1bec]
call fcn.1008e3d0
push str.speed_beam
lea ecx, [ebp - 0xf0]
mov dword [ebp - 4], 0xb9
call fcn.1002d340
push str.speed
lea ecx, [ebp - 0x94]
mov byte [ebp - 4], 0xba
call fcn.1002d340
lea eax, [ebp - 0xf0]
mov byte [ebp - 4], 0xbb
push eax
lea ecx, [edi + 0x1c24]
call fcn.10052440
lea eax, [ebp - 0x94]
mov byte [edi + 0x1c55], 1
push eax
lea ecx, [edi + 0x1c74]
call fcn.10052440
xor ecx, ecx
mov dword [edi + 0x1c60], 0
cmp byte [esi + 0x69], cl
mov eax, 0xf
mov dword [edi + 0x1c64], 0x3fc00000
cmovne ecx, eax
mov dword [edi + 0x1c5c], 0x3f666666
mov dword [edi + 0x1ca4], ecx
mov dword [edi + 0x1c70], 1
mov dword [edi + 0x1c68], 0x3dcccccd
lea eax, [ecx + 8]
mov dword [edi + 0x1bfc], eax
lea ecx, [edi + 0x1c8c]
mov dword [edi + 0x1c00], eax
lea eax, [ebp - 0x180]
push eax
call fcn.1008e3a0
lea ecx, [ebp - 0x94]
call fcn.1002d2f0
lea ecx, [ebp - 0xf0]
call fcn.1002d2f0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x180]
call fcn.100590d0
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x100376a0
lea ecx, [esi + 0x58]
push eax
call fcn.10049550
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049550
push str.impact_beams_color
lea ecx, [ebp - 0x138]
lea esi, [edi + 0x1928]
call fcn.1002d340
push str.bullet_tracer_enemy_color
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xbc
call fcn.1002d340
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0xbd
push eax
lea ecx, [edi + 0x1998]
mov dword [ebp - 0x1c], 0xffff8297
call fcn.10052440
lea eax, [ebp - 0x138]
push eax
lea ecx, [edi + 0x1960]
call fcn.10052440
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x94]
mov dword [edi + 0x19b0], eax
mov dword [edi + 0x19c8], 0
call fcn.1002d2f0
lea ecx, [ebp - 0x138]
mov dword [ebp - 4], 0xffffffff
call fcn.1002d2f0
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10037690
lea ecx, [esi + 0x58]
push eax
call fcn.10049550
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049550
push str.impact_beams_local_color
lea ecx, [ebp - 0x7c]
lea esi, [edi + 0x19e4]
call fcn.1002d340
push str.bullet_tracer_local_color
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xbe
call fcn.1002d340
mov byte [ebp - 4], 0xbf
lea eax, [ebp - 0x94]
mov dword [ebp - 0x1c], 0xffff8297
push eax
lea ecx, [edi + 0x1a54]
call fcn.10052440
lea eax, [ebp - 0x7c]
push eax
lea ecx, [edi + 0x1a1c]
call fcn.10052440
mov eax, dword [ebp - 0x1c]
lea ecx, [ebp - 0x94]
mov dword [edi + 0x1a6c], eax
mov dword [edi + 0x1a84], 0
call fcn.1002d2f0
lea ecx, [ebp - 0x7c]
mov dword [ebp - 4], 0xffffffff
call fcn.1002d2f0
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10037690
lea ecx, [esi + 0x58]
push eax
call fcn.10049550
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049550
push 0x100d5af8
lea ecx, [ebp - 0xb0]
lea esi, [edi + 0x1ca8]
call fcn.1008e3d0
push str.alpha2
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xc0
call fcn.1002d340
push 0x100d37e4
lea ecx, [ebp - 0xf0]
mov byte [ebp - 4], 0xc1
call fcn.1002d340
lea eax, [ebp - 0x94]
mov byte [ebp - 4], 0xc2
push eax
lea ecx, [edi + 0x1ce0]
call fcn.10052440
lea eax, [ebp - 0xb0]
mov byte [edi + 0x1d11], 0
push eax
lea ecx, [edi + 0x1d48]
mov dword [edi + 0x1d60], 0
mov dword [edi + 0x1cb8], 8
mov dword [edi + 0x1cbc], 8
mov dword [edi + 0x1d1c], 0
mov dword [edi + 0x1d20], 0x437f0000
mov dword [edi + 0x1d18], 0x437f0000
mov dword [edi + 0x1d2c], 0
mov dword [edi + 0x1d24], 0x3f800000
call fcn.1008e3a0
lea ecx, [ebp - 0xf0]
call fcn.1002d2f0
lea ecx, [ebp - 0x94]
call fcn.1002d2f0
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
call fcn.100590d0
lea eax, [ebp - 0x24]
mov dword [ebp - 0x24], 0x10037690
lea ecx, [esi + 0x58]
push eax
call fcn.10049550
mov dword [ebp - 0x1c], esi
mov dword [esi + 0x18], 1
mov ecx, dword [ebp - 0x1c]
imul eax, dword [ecx + 0x18], 0xeb
add eax, 0x14
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0x1c]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x1c]
mov ecx, dword [edi + 0x2c]
mov dword [eax + 0x1c], ecx
lea eax, [ebp - 0x1c]
push eax
lea ecx, [edi + 0x18]
call fcn.10049550
push str.bullet_impacts
lea ecx, [ebp - 0x108]
call fcn.1002d340
push 0x100d727c
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xc3
call fcn.1002d340
lea eax, [ebp - 0x108]
mov byte [ebp - 4], 0xc4
push eax
lea ecx, [edi + 0x1d9c]
call fcn.10052440
lea eax, [ebp - 0x94]
mov byte [edi + 0x1dcd], 1
push eax
lea ecx, [edi + 0x1dd4]
call fcn.10052440
lea ecx, [ebp - 0x94]
mov byte [edi + 0x1dd0], 0
call fcn.1002d2f0
lea ecx, [ebp - 0x108]
mov dword [ebp - 4], 0xffffffff
call fcn.1002d2f0
lea eax, [edi + 0x1d64]
mov dword [ebp - 0x18], eax
lea ecx, [edi + 0x18]
mov dword [eax + 0x18], 1
mov edx, dword [ebp - 0x18]
imul eax, dword [edx + 0x18], 0xeb
add eax, 0x14
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x18]
mov dword [eax + 0xc], 0xaf
mov eax, dword [ebp - 0x18]
mov edx, dword [edi + 0x2c]
mov dword [eax + 0x1c], edx
lea eax, [ebp - 0x18]
push eax
call fcn.10049550
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.100c4f7f
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret