Function at 0x100349f0
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x44
mov eax, dword [0x1008800c]
xor eax, esp
mov dword [esp + 0x40], eax
mov ecx, dword [0x10088d30]
push ebx
push esi
push edi
mov eax, dword [ecx + 0x199c]
mov dword [esp + 0x10], 0x42700000
mov dword [esp + 0x14], 0x41980000
mov dword [esp + 0x3c], 0x3f3a2111
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
mov word [esp + 0x40], 0x202a
mov byte [esp + 0x42], 0
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x1008551c]
addss xmm2, dword [0x10085534]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
nop
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x3c], al
inc ecx
cmp ecx, 6
jb 0x10034aa0
push ecx
lea edx, [esp + 0x14]
mov byte [esp + 0x46], 0
lea ecx, [esp + 0x40]
call fcn.100214a0
mov ecx, dword [0x10088dc0]
xor edx, edx
add esp, 4
mov dword [esp + 0x10], 0x42700000
test al, al
mov dword [esp + 0x14], 0x41980000
mov dword [esp + 0x44], 0x242106
cmovne ecx, edx
mov dword [0x10088dc0], ecx
mov ecx, dword [0x10088d30]
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x1008551c]
addss xmm2, dword [0x10085560]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x44], al
inc ecx
cmp ecx, 3
jb 0x10034b63
mov byte [esp + 0x47], dl
lea edx, [esp + 0x10]
push ecx
lea ecx, [esp + 0x48]
call fcn.100214a0
mov ecx, dword [0x10088dc0]
add esp, 4
test al, al
mov dword [esp + 0x10], 0x42700000
mov edx, 1
mov dword [esp + 0x14], 0x41980000
cmovne ecx, edx
mov dword [esp + 0x3c], 0x293a210a
mov dword [0x10088dc0], ecx
mov ecx, dword [0x10088d30]
mov byte [esp + 0x40], 0
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], dl
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x1008551c]
addss xmm2, dword [0x1008558c]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
nop dword [eax]
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x3c], al
inc ecx
cmp ecx, 4
jb 0x10034c30
push ecx
lea edx, [esp + 0x14]
mov byte [esp + 0x44], 0
lea ecx, [esp + 0x40]
call fcn.100214a0
mov ecx, dword [0x10088dc0]
add esp, 4
test al, al
mov dword [esp + 0x10], 0x42700000
mov esi, 2
mov dword [esp + 0x14], 0x41980000
cmovne ecx, esi
mov dword [esp + 0x30], 0x2f2e2915
mov dword [0x10088dc0], ecx
mov ecx, dword [0x10088d30]
mov dword [esp + 0x34], 0x3d24016b
mov word [esp + 0x38], 0x2c
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085518]
addss xmm2, dword [0x100855b8]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x30], al
inc ecx
cmp ecx, 9
jb 0x10034d05
push ecx
lea edx, [esp + 0x14]
mov byte [esp + 0x3d], 0
lea ecx, [esp + 0x34]
call fcn.100214a0
mov ecx, dword [0x10088dc0]
add esp, 4
test al, al
mov dword [esp + 0x10], 0x42700000
mov edx, 3
mov dword [esp + 0x14], 0x41980000
cmovne ecx, edx
mov dword [0x10088dc0], ecx
mov ecx, dword [0x10088d30]
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
mov dword [esp + 0x30], 0x3e3d2d14
mov dword [esp + 0x34], 0x3d2a2222
mov byte [esp + 0x38], 0
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085518]
addss xmm2, dword [0x100855d0]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x30], al
inc ecx
cmp ecx, 8
jb 0x10034dd8
push ecx
lea edx, [esp + 0x14]
mov byte [esp + 0x3c], 0
lea ecx, [esp + 0x34]
call fcn.100214a0
movss xmm1, dword [0x1008559c]
add esp, 4
movss xmm3, dword [0x10085530]
test al, al
je 0x10034e1f
mov dword [0x10088dc0], 4
jmp 0x10036cb9
mov eax, dword [0x10088dc0]
test eax, eax
jne 0x10035c1f
mov ecx, dword [0x10088d30]
mov edx, esi
push 0
push ecx
mov dword [esp + 0x18], 0x43c88000
mov eax, dword [ecx + 0x199c]
mov dword [esp + 0x1c], 0x438a0000
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, xmm1
addss xmm2, xmm3
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
lea eax, [esp + 0x18]
push eax
call fcn.10007440
mov ecx, dword [0x10088d30]
add esp, 0xc
mov dword [esp + 0x3c], 0x6a393b02
mov dword [esp + 0x40], 0x352309
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100854f8]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
nop dword [eax]
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x3c], al
inc ecx
cmp ecx, 7
jb 0x10034f40
mov edx, 0x10089253
mov byte [esp + 0x43], 0
lea ecx, [esp + 0x3c]
call fcn.100223c0
mov ecx, dword [0x10088d30]
push 0x10084d14
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085540]
addss xmm2, dword [0x10085538]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c4d0
mov esi, eax
xor eax, eax
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xb
jb 0x10034fe5
push 0x20
mov edx, 0x100884a0
mov byte [esi + 0xb], 0
mov ecx, esi
call fcn.10029be0
mov ecx, dword [0x10088d30]
add esp, 4
mov dword [esp + 0x10], 0x6a393b02
mov dword [esp + 0x14], 0x2b232507
mov byte [esp + 0x18], 0
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x1008555c]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 8
jb 0x10035091
mov edx, 0x1008923e
mov byte [esp + 0x18], 0
lea ecx, [esp + 0x10]
call fcn.100223c0
mov ecx, dword [0x10088d30]
push 0x10084d20
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085540]
addss xmm2, dword [0x1008557c]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c450
mov esi, eax
xor eax, eax
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xc
jb 0x10035136
push 0x20
mov edx, 0x1008843c
mov byte [esi + 0xc], 0
mov ecx, esi
call fcn.10029be0
mov ecx, dword [0x10088d30]
add esp, 4
mov eax, dword [ecx + 0x199c]
push str.Esp_Skeleton
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100855a0]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c450
mov esi, eax
xor eax, eax
nop dword [eax]
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xc
jb 0x100351e0
mov edx, 0x100891e7
mov byte [esi + 0xc], 0
mov ecx, esi
call fcn.100223c0
mov ecx, dword [0x10088d30]
push 0x10084d40
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085540]
addss xmm2, dword [0x100855c4]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c3c0
mov esi, eax
xor eax, eax
lea edx, [esi + eax]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xd
jb 0x10035282
push 0x20
mov edx, str.333_
mov byte [esi + 0xd], 0
mov ecx, esi
call fcn.10029be0
mov ecx, dword [0x10088d30]
add esp, 4
mov dword [esp + 0x10], 0x6a393b02
mov dword [esp + 0x14], 0x2f292d19
mov word [esp + 0x18], 0x3d
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100855d0]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 9
jb 0x10035330
mov edx, 0x10089252
mov byte [esp + 0x19], 0
lea ecx, [esp + 0x10]
call fcn.100223c0
mov ecx, dword [0x10088d30]
mov dword [esp + 0x1c], 0x272c2602
mov dword [esp + 0x20], 0x210e6c32
mov dword [esp + 0x24], 0x72233f23
mov eax, dword [ecx + 0x199c]
mov word [esp + 0x28], 0x7473
mov byte [esp + 0x2a], 0
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085540]
addss xmm2, dword [0x100855e4]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
nop dword [eax]
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x1c], al
inc ecx
cmp ecx, 0xe
jb 0x100353f0
push 0x20
mov edx, 0x100884b0
mov byte [esp + 0x2e], 0
lea ecx, [esp + 0x20]
call fcn.10029be0
mov ecx, dword [0x10088d30]
add esp, 4
mov eax, dword [ecx + 0x199c]
push str.Esp_WallHack
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100855f4]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c450
mov esi, eax
xor eax, eax
nop word [eax + eax]
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xc
jb 0x100354a0
mov edx, 0x1008923d
mov byte [esi + 0xc], 0
mov ecx, esi
call fcn.100223c0
mov ecx, dword [0x10088d30]
push str.Esp_LookDirection
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x100855dc]
addss xmm2, dword [0x100854f8]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c260
mov esi, eax
xor eax, eax
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0x11
jb 0x10035542
mov edx, 0x10089264
mov byte [esi + 0x11], 0
mov ecx, esi
call fcn.100223c0
mov ecx, dword [0x10088d30]
mov dword [esp + 0x10], 0x6a393b02
mov dword [esp + 0x14], 0x2b202d05
mov byte [esp + 0x18], 0
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x100855dc]
addss xmm2, dword [0x1008554c]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
nop dword [eax]
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 8
jb 0x100355f0
mov edx, 0x10089265
mov byte [esp + 0x18], 0
lea ecx, [esp + 0x10]
call fcn.100223c0
mov ecx, dword [0x10088d30]
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
mov dword [esp + 0x10], 0x6a393b02
mov dword [esp + 0x14], 0x2c202309
mov byte [esp + 0x18], 0
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x100855dc]
addss xmm2, dword [0x1008556c]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
nop word [eax + eax]
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 8
jb 0x100356a0
mov edx, 0x100891e6
mov byte [esp + 0x18], 0
lea ecx, [esp + 0x10]
call fcn.100223c0
mov ecx, dword [0x10088d30]
push str.Esp_NoSmoke
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x100855dc]
addss xmm2, dword [0x10085590]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c4d0
mov esi, eax
xor eax, eax
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xb
jb 0x10035745
mov edx, 0x1008926a
mov byte [esi + 0xb], 0
mov ecx, esi
call fcn.100223c0
mov ecx, dword [0x10088d30]
push str.Esp_Distance
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x100855dc]
addss xmm2, dword [0x100855b0]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c450
mov esi, eax
xor eax, eax
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xc
jb 0x100357e7
mov edx, 0x10089269
mov byte [esi + 0xc], 0
mov ecx, esi
call fcn.100223c0
mov ecx, dword [0x10088d30]
push 0x10084d90
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x100855e8]
addss xmm2, dword [0x100855cc]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c1a0
mov esi, eax
xor eax, eax
nop dword [eax]
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xf
jb 0x10035890
push 0x20
mov edx, 0x100884d8
mov byte [esi + 0xf], 0
mov ecx, esi
call fcn.10029be0
mov ecx, dword [0x10088d30]
add esp, 4
mov edx, 0x42740000
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085580]
addss xmm2, dword [0x100854f8]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov ebx, dword [ecx + 0x199c]
lea esi, [ebx + 0x17c]
mov dword [ebx + 0x168], 0x42740000
mov ecx, dword [esi]
mov edi, dword [esi + 4]
cmp ecx, edi
jne 0x1003597d
inc ecx
test edi, edi
je 0x10035963
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x10035968
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.10011e60
mov ecx, dword [esi]
mov edx, dword [ebx + 0x168]
mov eax, dword [esi + 8]
push ecx
push 3
push 0x100882ec
mov dword [eax + ecx*4], edx
mov edx, 0x10088f60
inc dword [esi]
push ecx
mov ecx, str.
call fcn.10023a50
mov edx, dword [0x10088d30]
add esp, 0x10
mov eax, dword [edx + 0x199c]
mov byte [eax + 0x78], 1
mov ecx, dword [edx + 0x199c]
mov esi, dword [ecx + 0x17c]
sub esi, 1
mov dword [ecx + 0x17c], esi
jne 0x100359d1
movss xmm0, dword [ecx + 0x21c]
jmp 0x100359dd
mov eax, dword [ecx + 0x184]
movss xmm0, dword [eax + esi*4 - 4]
movss dword [ecx + 0x168], xmm0
xor ecx, ecx
mov eax, dword [edx + 0x199c]
mov dword [esp + 0x10], 0x6a393b02
mov dword [esp + 0x14], 0x2a2c2903
mov byte [esp + 0x18], 0
mov byte [eax + 0x78], 1
mov eax, dword [edx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x100855dc]
addss xmm2, dword [0x100855e0]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 8
jb 0x10035a68
mov edx, 0x10089266
mov byte [esp + 0x18], 0
lea ecx, [esp + 0x10]
call fcn.100223c0
mov ecx, dword [0x10088d30]
push str.Enemy_Color
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x100855e8]
addss xmm2, dword [0x100855f0]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c260
mov esi, eax
xor eax, eax
nop dword [eax]
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0x11
jb 0x10035b10
push 0x20
mov edx, 0x10088484
mov byte [esi + 0x11], 0
mov ecx, esi
call fcn.10029be0
mov ecx, dword [0x10088d30]
add esp, 4
mov edx, 0x42c80000
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x100855dc]
addss xmm2, dword [0x100855fc]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov ebx, dword [ecx + 0x199c]
lea esi, [ebx + 0x17c]
mov dword [ebx + 0x168], 0x42c80000
mov ecx, dword [esi]
mov edi, dword [esi + 4]
cmp ecx, edi
jne 0x10035bfd
inc ecx
test edi, edi
je 0x10035be3
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x10035be8
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.10011e60
mov ecx, dword [esi]
mov edx, dword [ebx + 0x168]
mov eax, dword [esi + 8]
mov dword [eax + ecx*4], edx
inc dword [esi]
call fcn.100076d0
mov eax, dword [0x10088dc0]
movss xmm1, dword [0x1008559c]
movss xmm3, dword [0x10085530]
cmp eax, 1
jne 0x100363db
mov ecx, dword [0x10088d30]
mov edx, 0x1d
push 0
push ecx
mov dword [esp + 0x18], 0x43c88000
mov eax, dword [ecx + 0x199c]
mov dword [esp + 0x1c], 0x438a0000
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, xmm1
addss xmm2, xmm3
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
lea eax, [esp + 0x18]
push eax
call fcn.10007440
mov ecx, dword [0x10088d30]
add esp, 0xc
mov dword [esp + 0x3c], 0x28242106
mov word [esp + 0x40], 0x3824
mov byte [esp + 0x42], 0
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100854f4]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
nop
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x3c], al
inc ecx
cmp ecx, 6
jb 0x10035d40
mov edx, 0x10089255
mov byte [esp + 0x42], 0
lea ecx, [esp + 0x3c]
call fcn.100223c0
cmp byte [0x1008923c], 0
jne 0x10035ece
mov ecx, dword [0x10088d30]
mov edx, 0x42c80000
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085544]
addss xmm2, dword [0x10085554]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov ebx, dword [ecx + 0x199c]
lea esi, [ebx + 0x17c]
mov dword [ebx + 0x168], 0x42c80000
mov ecx, dword [esi]
mov edi, dword [esi + 4]
cmp ecx, edi
jne 0x10035e38
inc ecx
test edi, edi
je 0x10035e1e
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x10035e23
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.10011e60
mov ecx, dword [esi]
mov edx, dword [ebx + 0x168]
mov eax, dword [esi + 8]
mov dword [esp + 0x44], 0x6a242106
mov dword [esp + 0x48], 0x342900
mov dword [eax + ecx*4], edx
inc dword [esi]
xor ecx, ecx
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x44], al
inc ecx
cmp ecx, 7
jb 0x10035e52
push ecx
push 6
push 0x10088424
push ecx
mov edx, 0x10088f7c
mov byte [esp + 0x5b], 0
lea ecx, [esp + 0x54]
call fcn.10023a50
mov edx, dword [0x10088d30]
add esp, 0x10
mov eax, dword [edx + 0x199c]
mov byte [eax + 0x78], 1
mov ecx, dword [edx + 0x199c]
mov esi, dword [ecx + 0x17c]
sub esi, 1
mov dword [ecx + 0x17c], esi
jne 0x10035eb8
movss xmm0, dword [ecx + 0x21c]
movss dword [ecx + 0x168], xmm0
jmp 0x10035ed4
mov eax, dword [ecx + 0x184]
movss xmm0, dword [eax + esi*4 - 4]
movss dword [ecx + 0x168], xmm0
jmp 0x10035ed4
mov edx, dword [0x10088d30]
mov eax, dword [edx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [edx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085544]
addss xmm2, dword [0x10085574]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov eax, dword [edx + 0x199c]
mov byte [eax + 0x78], 1
mov ebx, dword [edx + 0x199c]
mov edx, 0x42c80000
lea esi, [ebx + 0x17c]
mov dword [ebx + 0x168], 0x42c80000
mov ecx, dword [esi]
mov edi, dword [esi + 4]
cmp ecx, edi
jne 0x10035f98
inc ecx
test edi, edi
je 0x10035f7e
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x10035f83
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.10011e60
mov ecx, dword [esi]
mov edx, dword [ebx + 0x168]
mov eax, dword [esi + 8]
mov dword [esp + 0x10], 0x6a242106
mov dword [esp + 0x14], 0x293f2d1f
mov word [esp + 0x18], 0x242a
mov dword [eax + ecx*4], edx
inc dword [esi]
xor ecx, ecx
mov byte [esp + 0x1a], 0
nop
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 0xa
jb 0x10035fc0
push ecx
push 3
push 0x1008844c
push ecx
mov edx, 0x100891d8
mov byte [esp + 0x2a], 0
lea ecx, [esp + 0x20]
call fcn.10023a50
mov edx, dword [0x10088d30]
add esp, 0x10
mov eax, dword [edx + 0x199c]
mov byte [eax + 0x78], 1
mov ecx, dword [edx + 0x199c]
mov esi, dword [ecx + 0x17c]
sub esi, 1
mov dword [ecx + 0x17c], esi
jne 0x1003601e
movss xmm0, dword [ecx + 0x21c]
jmp 0x1003602a
mov eax, dword [ecx + 0x184]
movss xmm0, dword [eax + esi*4 - 4]
movss dword [ecx + 0x168], xmm0
xor ecx, ecx
mov eax, dword [edx + 0x199c]
mov dword [esp + 0x1c], 0x293b2104
mov dword [esp + 0x20], 0x86d2927
mov word [esp + 0x24], 0x2620
mov byte [eax + 0x78], 1
mov eax, dword [edx + 0x199c]
mov byte [esp + 0x26], 0
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085568]
addss xmm2, dword [0x100855c0]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
nop dword [eax]
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x1c], al
inc ecx
cmp ecx, 0xa
jb 0x100360c0
mov edx, 0x10089250
mov byte [esp + 0x26], 0
lea ecx, [esp + 0x1c]
call fcn.100223c0
cmp byte [0x1008923c], 0
jne 0x10036271
mov ecx, dword [0x10088d30]
mov edx, 0x43480000
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085544]
addss xmm2, dword [0x10085598]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov ebx, dword [ecx + 0x199c]
lea esi, [ebx + 0x17c]
mov dword [ebx + 0x168], 0x43480000
mov ecx, dword [esi]
mov edi, dword [esi + 4]
cmp ecx, edi
jne 0x100361b8
inc ecx
test edi, edi
je 0x1003619e
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100361a3
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.10011e60
mov ecx, dword [esi]
mov edx, dword [ebx + 0x168]
mov eax, dword [esi + 8]
mov dword [esp + 0x10], 0x6a242106
mov dword [esp + 0x14], 0x1b230d
mov dword [eax + ecx*4], edx
inc dword [esi]
xor ecx, ecx
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 7
jb 0x100361d2
push ecx
mov dword [esp], 0x3f800000
lea eax, [esp + 0x48]
push str._.3f
push eax
lea eax, [esp + 0x48]
mov byte [esp + 0x23], 0
push eax
push 0x100880a4
mov edx, 4
mov dword [esp + 0x50], 0x41200000
lea ecx, [esp + 0x24]
mov dword [esp + 0x58], 0x43b40000
call fcn.10024950
mov edx, dword [0x10088d30]
add esp, 0x14
mov eax, dword [edx + 0x199c]
mov byte [eax + 0x78], 1
mov ecx, dword [edx + 0x199c]
mov esi, dword [ecx + 0x17c]
sub esi, 1
mov dword [ecx + 0x17c], esi
jne 0x1003625b
movss xmm0, dword [ecx + 0x21c]
movss dword [ecx + 0x168], xmm0
jmp 0x10036277
mov eax, dword [ecx + 0x184]
movss xmm0, dword [eax + esi*4 - 4]
movss dword [ecx + 0x168], xmm0
jmp 0x10036277
mov edx, dword [0x10088d30]
mov eax, dword [edx + 0x199c]
xor ecx, ecx
mov byte [eax + 0x78], 1
mov eax, dword [edx + 0x199c]
mov dword [esp + 0x10], 0x253d3d06
mov dword [esp + 0x14], 0x2d22006b
mov word [esp + 0x18], 0x24
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100855f8]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
nop dword [eax]
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 9
jb 0x10036300
mov edx, 0x1008923c
mov byte [esp + 0x19], 0
lea ecx, [esp + 0x10]
call fcn.100223c0
mov ecx, dword [0x10088d30]
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
mov dword [esp + 0x10], 0x253d3d06
mov dword [esp + 0x14], 0x3c240a6b
mov word [esp + 0x18], 0x2a
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x10085600]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
nop dword [eax]
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 9
jb 0x100363b0
mov edx, 0x10088d2d
mov byte [esp + 0x19], 0
lea ecx, [esp + 0x10]
call fcn.100223c0
call fcn.100076d0
mov eax, dword [0x10088dc0]
cmp eax, 2
jne 0x10036b3d
mov ecx, dword [0x10088d30]
mov edx, 0x25
push 0
push ecx
mov dword [esp + 0x18], 0x43c88000
mov eax, dword [ecx + 0x199c]
mov dword [esp + 0x1c], 0x438a0000
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x1008559c]
addss xmm2, dword [0x10085530]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
lea eax, [esp + 0x18]
push eax
call fcn.10007440
mov ecx, dword [0x10088d30]
add esp, 0xc
mov dword [esp + 0x10], 0x18692709
mov dword [esp + 0x14], 0x27222f2e
mov word [esp + 0x18], 0x23
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100854f4]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 9
jb 0x10036506
mov edx, 0x1008926c
mov byte [esp + 0x19], 0
lea ecx, [esp + 0x10]
call fcn.100223c0
mov ecx, dword [0x10088d30]
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
mov dword [esp + 0x10], 0x19692709
mov dword [esp + 0x14], 0x2f283e3b
mov word [esp + 0x18], 0x2b
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x10085548]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 9
jb 0x100365b2
mov edx, 0x10089267
mov byte [esp + 0x19], 0
lea ecx, [esp + 0x10]
call fcn.100223c0
mov ecx, dword [0x10088d30]
mov dword [esp + 0x2c], 0x2b3d3c
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x10085564]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
movaps xmm0, xmmword [0x10085710]
movups xmmword [esp + 0x1c], xmm0
nop dword [eax + eax]
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x1c], al
inc ecx
cmp ecx, 0x13
jb 0x10036660
mov edx, 0x1008923f
mov byte [esp + 0x2f], 0
lea ecx, [esp + 0x1c]
call fcn.100223c0
mov ecx, dword [0x10088d30]
push str.Fov_Changer
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x10085584]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c4d0
mov esi, eax
xor eax, eax
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xb
jb 0x10036705
mov edx, 0x10089257
mov byte [esi + 0xb], 0
mov ecx, esi
call fcn.100223c0
mov ecx, dword [0x10088d30]
mov edx, 0x43480000
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085544]
addss xmm2, dword [0x100855a8]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov ebx, dword [ecx + 0x199c]
lea esi, [ebx + 0x17c]
mov dword [ebx + 0x168], 0x43480000
mov ecx, dword [esi]
mov edi, dword [esi + 4]
cmp ecx, edi
jne 0x100367ed
inc ecx
test edi, edi
je 0x100367d3
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x100367d8
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.10011e60
mov ecx, dword [esi]
mov edx, dword [ebx + 0x168]
mov eax, dword [esi + 8]
mov dword [esp + 0x10], 0x6a3f2701
mov dword [esp + 0x14], 0x3b212d1d
mov word [esp + 0x18], 0x2a
mov dword [eax + ecx*4], edx
inc dword [esi]
xor ecx, ecx
nop
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 9
jb 0x10036810
push ecx
mov dword [esp], 0x3f800000
lea eax, [esp + 0x40]
push 0x10084878
push eax
lea eax, [esp + 0x50]
mov byte [esp + 0x25], 0
push eax
push 0x10088098
xor edx, edx
mov dword [esp + 0x50], 0xca
lea ecx, [esp + 0x24]
mov dword [esp + 0x58], 0xc8
call fcn.10024950
mov edx, dword [0x10088d30]
add esp, 0x14
mov eax, dword [edx + 0x199c]
mov byte [eax + 0x78], 1
mov ecx, dword [edx + 0x199c]
mov esi, dword [ecx + 0x17c]
sub esi, 1
mov dword [ecx + 0x17c], esi
jne 0x1003688e
movss xmm0, dword [ecx + 0x21c]
jmp 0x1003689a
mov eax, dword [ecx + 0x184]
movss xmm0, dword [eax + esi*4 - 4]
movss dword [ecx + 0x168], xmm0
lea ecx, [esp + 0x1c]
mov eax, dword [edx + 0x199c]
push str.Rapid_Sniper
mov byte [eax + 0x78], 1
mov eax, dword [edx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100855c8]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c450
mov esi, eax
xor eax, eax
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xc
jb 0x10036920
mov edx, 0x10089256
mov byte [esi + 0xc], 0
mov ecx, esi
call fcn.100223c0
mov ecx, dword [0x10088d30]
push str.Rapid_Pistol
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100855d8]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c450
mov esi, eax
xor eax, eax
lea edx, [esi + eax]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xc
jb 0x100369c2
mov edx, 0x10089251
mov byte [esi + 0xc], 0
mov ecx, esi
call fcn.100223c0
mov ecx, dword [0x10088d30]
mov dword [esp + 0x10], 0x2f3a290b
mov dword [esp + 0x14], 0x21096c39
mov word [esp + 0x18], 0x3b
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100855ec]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
nop dword [eax + eax]
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x10], al
inc ecx
cmp ecx, 9
jb 0x10036a70
mov edx, 0x1008926b
mov byte [esp + 0x19], 0
lea ecx, [esp + 0x10]
call fcn.100223c0
mov ecx, dword [0x10088d30]
push str.Fast_Reload
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
lea ecx, [esp + 0x20]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100855fc]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
call fcn.1005c4d0
mov esi, eax
xor eax, eax
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xb
jb 0x10036b15
mov edx, 0x10089268
mov byte [esi + 0xb], 0
mov ecx, esi
call fcn.100223c0
call fcn.100076d0
mov eax, dword [0x10088dc0]
cmp eax, 3
jne 0x10036ca0
mov ecx, dword [0x10088d30]
mov edx, 0x25
push 0
push ecx
mov dword [esp + 0x18], 0x43c88000
mov eax, dword [ecx + 0x199c]
mov dword [esp + 0x1c], 0x437e0000
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x1008559c]
addss xmm2, dword [0x10085530]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
lea eax, [esp + 0x18]
push eax
call fcn.10007440
mov ecx, dword [0x10088d30]
add esp, 0xc
mov dword [esp + 0x1c], 0x1d692709
mov dword [esp + 0x20], 0x213d2d2e
mov dword [esp + 0x24], 0x25027021
mov eax, dword [ecx + 0x199c]
mov word [esp + 0x28], 0x2432
mov byte [esp + 0x2a], 0
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
xor ecx, ecx
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100854f4]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov al, cl
add al, 0x47
xor byte [esp + ecx + 0x1c], al
inc ecx
cmp ecx, 0xe
jb 0x10036c75
mov edx, 0x10089254
mov byte [esp + 0x2a], 0
lea ecx, [esp + 0x1c]
call fcn.100223c0
call fcn.100076d0
mov eax, dword [0x10088dc0]
cmp eax, 4
jne 0x10036fb3
movss xmm1, dword [0x1008559c]
movss xmm3, dword [0x10085530]
mov ecx, dword [0x10088d30]
mov edx, 0x25
push 0
push ecx
mov dword [esp + 0x18], 0x43c88000
mov eax, dword [ecx + 0x199c]
mov dword [esp + 0x1c], 0x437e0000
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, xmm1
addss xmm2, xmm3
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
lea eax, [esp + 0x18]
push eax
call fcn.10007440
mov ecx, dword [0x10088d30]
add esp, 0xc
mov edx, 0x43480000
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x100854f4]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov ebx, dword [ecx + 0x199c]
lea esi, [ebx + 0x17c]
mov dword [ebx + 0x168], 0x43480000
mov ecx, dword [esi]
mov edi, dword [esi + 4]
cmp ecx, edi
jne 0x10036e12
inc ecx
test edi, edi
je 0x10036df8
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x10036dfd
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.10011e60
mov ecx, dword [esi]
mov edx, dword [ebx + 0x168]
mov eax, dword [esi + 8]
push str.Skeleton_Thickness
mov dword [eax + ecx*4], edx
lea ecx, [esp + 0x20]
inc dword [esi]
call fcn.1005c040
mov esi, eax
xor eax, eax
nop dword [eax]
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0x12
jb 0x10036e30
push ecx
mov dword [esp], 0x3f800000
lea eax, [esp + 0x40]
push str.__.3f
push eax
lea eax, [esp + 0x50]
mov byte [esi + 0x12], 0
push eax
push 0x1008809c
mov edx, 4
mov dword [esp + 0x58], 0x3dcccccd
mov ecx, esi
mov dword [esp + 0x50], 0x40400000
call fcn.10024950
mov ecx, dword [0x10088d30]
add esp, 0x14
mov edx, 0x43480000
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov eax, dword [ecx + 0x199c]
movss xmm0, dword [eax + 0xc]
subss xmm0, dword [eax + 0x54]
movss xmm2, dword [eax + 0x10]
subss xmm2, dword [eax + 0x58]
addss xmm0, dword [0x10085504]
addss xmm2, dword [0x10085538]
movss dword [eax + 0xc4], xmm0
movss dword [eax + 0xc8], xmm2
movss xmm1, dword [eax + 0xdc]
maxss xmm1, xmm0
movss xmm0, dword [eax + 0xe0]
maxss xmm0, xmm2
movss dword [eax + 0xdc], xmm1
movss dword [eax + 0xe0], xmm0
mov eax, dword [ecx + 0x199c]
mov byte [eax + 0x78], 1
mov ebx, dword [ecx + 0x199c]
lea esi, [ebx + 0x17c]
mov dword [ebx + 0x168], 0x43480000
mov ecx, dword [esi]
mov edi, dword [esi + 4]
cmp ecx, edi
jne 0x10036f47
inc ecx
test edi, edi
je 0x10036f2d
mov eax, edi
cdq
sub eax, edx
sar eax, 1
add eax, edi
jmp 0x10036f32
mov eax, 8
cmp eax, ecx
cmovg ecx, eax
push ecx
mov ecx, esi
call fcn.10011e60
mov ecx, dword [esi]
mov edx, dword [ebx + 0x168]
mov eax, dword [esi + 8]
push str.Esp_Thickness
mov dword [eax + ecx*4], edx
lea ecx, [esp + 0x20]
inc dword [esi]
call fcn.1005c3c0
mov esi, eax
xor eax, eax
lea edx, [eax + esi]
lea ecx, [eax + 0x47]
inc eax
xor byte [edx], cl
cmp eax, 0xd
jb 0x10036f61
push ecx
mov dword [esp], 0x3f800000
lea eax, [esp + 0x40]
push str.__.3f
push eax
lea eax, [esp + 0x50]
mov byte [esi + 0xd], 0
push eax
push 0x100880a0
mov edx, 4
mov dword [esp + 0x58], 0x3dcccccd
mov ecx, esi
mov dword [esp + 0x50], 0x40400000
call fcn.10024950
add esp, 0x14
call fcn.100076d0
mov ecx, dword [esp + 0x4c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1005cdd4
mov esp, ebp
pop ebp
ret