Function at 0x10a4a790
Capabilities:
Inspect section memory permissions

Disassembly:
push 0xffffffffffffffff
push 0x10e19b54
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 8
mov eax, dword [0x110b8f84]
push ebx
push ebp
push edi
xor ebp, ebp
cmp eax, ebp
mov edi, ecx
mov dword [esp + 0xc], edi
jne 0x10a4a7d3
push 0x10e44b40
call fcn.10a458d0
add esp, 4
mov dword [0x110b8f84], eax
call fcn.10a3aba0
mov eax, dword [0x110b8f84]
mov ecx, dword [eax + 0x49c]
test ch, 8
je 0x10a4c365
mov eax, dword [edi + 0x70]
test ah, 1
je 0x10a4a810
test byte [edi + 0x350], 1
jne 0x10a4a810
mov eax, dword [esp + 0x2c]
pop edi
pop ebp
pop ebx
mov ecx, dword [esp + 8]
mov dword fs:[0], ecx
add esp, 0x14
ret 0x14
cmp byte [edi + 0x76], 4
jne 0x10a4c365
or ebx, 0xffffffff
test al, al
push esi
mov esi, dword [esp + 0x28]
jns 0x10a4b034
mov ecx, dword [edi + 0x350]
and ecx, 1
jne 0x10a4a842
cmp byte [edi + 0x74], 0xd
jne 0x10a4a842
mov edx, 1
jmp 0x10a4a844
xor edx, edx
cmp byte [edi + 0x75], 3
mov dword [esp + 0x14], edx
je 0x10a4afba
cmp edx, ebp
jne 0x10a4ade1
test ah, 0x40
jne 0x10a4a8b4
cmp dword [edi + 0x48], ebp
jne 0x10a4a8b4
cmp dword [esi + 0x48], ebp
je 0x10a4a8b4
test byte [0x110b925c], 1
jne 0x10a4a89a
or dword [0x110b925c], 1
push ebp
push 0x10e4626c
mov dword [esp + 0x28], ebp
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9258], eax
mov dword [esp + 0x20], ebx
mov ecx, dword [0x110b9258]
movzx edx, word [ecx + 0x4a]
mov ebx, dword [esp + 0x30]
mov dword [ebx], edx
add ebx, 4
mov ebp, 1
jmp 0x10a4a8b8
mov ebx, dword [esp + 0x30]
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
mov edi, dword [edx + 0x48]
push eax
mov eax, dword [esp + 0x14]
mov esi, dword [eax + 0x48]
call fcn.10a39700
add esp, 4
test eax, eax
je 0x10a4a924
test byte [0x110b925c], 2
jne 0x10a4a915
or dword [0x110b925c], 2
push 0
push 0x10e887d8
mov dword [esp + 0x28], 1
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9254], eax
mov dword [esp + 0x20], 0xffffffff
mov ecx, dword [0x110b9254]
movzx edx, word [ecx + 0x4a]
mov dword [ebx], edx
add ebx, 4
mov eax, dword [esp + 0x28]
mov esi, dword [esp + 0x10]
mov ecx, dword [eax + 0x6c]
xor ecx, dword [esi + 0x6c]
test ecx, 0x80000
je 0x10a4a994
test byte [0x110b925c], 4
jne 0x10a4a980
or dword [0x110b925c], 4
push 0
push str.bOnlyDrawIfAttached
mov dword [esp + 0x28], 2
call fcn.10905f80
push eax
call fcn.10a39b30
mov edx, eax
mov dword [0x110b9250], eax
movzx eax, word [edx + 0x4a]
or edi, 0xffffffff
add esp, 0xc
mov dword [ebx], eax
mov dword [esp + 0x20], edi
add ebx, 4
jmp 0x10a4a997
mov edx, dword [0x110b9250]
movzx eax, word [edx + 0x4a]
or edi, 0xffffffff
mov dword [ebx], eax
add ebx, 4
jmp 0x10a4a997
or edi, 0xffffffff
mov eax, dword [esi + 0x48]
test eax, eax
je 0x10a4ab2c
test byte [eax + 0x6f], 1
jne 0x10a4ab2c
mov ebp, dword [esp + 0x28]
lea eax, [ebp + 0x1e0]
lea ecx, [esi + 0x1e0]
call fcn.10a396c0
test eax, eax
je 0x10a4aa0a
test byte [0x110b925c], 8
jne 0x10a4a9fb
or dword [0x110b925c], 8
push 0
push str.RelativeLocation
mov dword [esp + 0x28], 3
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b924c], eax
mov dword [esp + 0x20], edi
mov ecx, dword [0x110b924c]
movzx edx, word [ecx + 0x4a]
mov dword [ebx], edx
add ebx, 4
lea eax, [ebp + 0x1ec]
lea ecx, [esi + 0x1ec]
call fcn.10a396e0
test eax, eax
je 0x10a4aa63
test byte [0x110b925c], 0x10
jne 0x10a4aa55
or dword [0x110b925c], 0x10
push 0
push str.RelativeRotation
mov dword [esp + 0x28], 4
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9248], eax
mov dword [esp + 0x20], edi
mov eax, dword [0x110b9248]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov edx, dword [esi + 0x90]
cmp edx, dword [ebp + 0x90]
je 0x10a4aab5
test byte [0x110b925c], 0x20
jne 0x10a4aaa7
or dword [0x110b925c], 0x20
push 0
push str.AttachmentBone
mov dword [esp + 0x28], 5
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9244], eax
mov dword [esp + 0x20], edi
mov eax, dword [0x110b9244]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov eax, dword [esi + 0x70]
test ah, 0x40
jne 0x10a4ac3b
mov eax, dword [ebp + 0x48]
test eax, eax
jne 0x10a4ac3b
lea eax, [ebp + 0x148]
lea ecx, [esi + 0x148]
call fcn.10a396c0
test eax, eax
je 0x10a4ac3b
test byte [0x110b925c], 0x40
jne 0x10a4ab1b
or dword [0x110b925c], 0x40
push 0
push 0x10e4626c
mov dword [esp + 0x28], 6
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9240], eax
mov dword [esp + 0x20], edi
mov edx, dword [0x110b9240]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
jmp 0x10a4ac38
mov eax, dword [esi + 0x70]
test ah, 0x40
jne 0x10a4ac3b
cmp byte [esi + 0x75], 2
jb 0x10a4ab50
test byte [esi + 0x350], 1
jne 0x10a4ab50
test ah, 2
je 0x10a4ac3b
test byte [esi + 0x350], 1
jne 0x10a4abbc
test ebp, ebp
jne 0x10a4abbc
mov eax, dword [esp + 0x28]
add eax, 0x148
lea ecx, [esi + 0x148]
call fcn.10a396c0
test eax, eax
je 0x10a4abbc
mov al, byte [0x110b925c]
test al, al
js 0x10a4abad
or dword [0x110b925c], 0x80
push ebp
push 0x10e4626c
mov dword [esp + 0x28], 7
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b923c], eax
mov dword [esp + 0x20], edi
mov ecx, dword [0x110b923c]
movzx edx, word [ecx + 0x4a]
mov dword [ebx], edx
add ebx, 4
mov al, byte [esi + 0x3b]
cmp al, 2
je 0x10a4abc7
cmp al, 8
jne 0x10a4ac3b
test byte [esi + 0x350], 1
je 0x10a4abd8
mov eax, dword [esi + 0x70]
test ah, 0x20
jne 0x10a4ac3b
mov eax, dword [esp + 0x28]
add eax, 0x154
lea ecx, [esi + 0x154]
call fcn.10a396e0
test eax, eax
je 0x10a4ac3b
mov ecx, dword [0x110b925c]
mov eax, 0x100
test eax, ecx
jne 0x10a4ac2d
or ecx, eax
mov dword [0x110b925c], ecx
push 0
push str.Rotation
mov dword [esp + 0x28], 8
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9238], eax
mov dword [esp + 0x20], edi
mov eax, dword [0x110b9238]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
cmp byte [esi + 0x74], 5
jne 0x10a4ade5
mov edi, dword [esp + 0x10]
mov esi, dword [esp + 0x28]
mov edx, dword [edi + 0x2d4]
xor edx, dword [esi + 0x2d4]
test edx, 0x80000
je 0x10a4acb0
mov ecx, dword [0x110b925c]
mov eax, 0x200
test eax, ecx
jne 0x10a4aca2
or ecx, eax
mov dword [0x110b925c], ecx
push 0
push str.bFixedRotationDir
mov dword [esp + 0x28], 9
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9234], eax
mov dword [esp + 0x20], 0xffffffff
mov eax, dword [0x110b9234]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov edx, dword [edi + 0x2d4]
xor edx, dword [esi + 0x2d4]
test edx, 0x100000
je 0x10a4ad13
mov ecx, dword [0x110b925c]
mov eax, 0x400
test eax, ecx
jne 0x10a4ad05
or ecx, eax
mov dword [0x110b925c], ecx
push 0
push str.bRotateToDesired
mov dword [esp + 0x28], 0xa
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9230], eax
mov dword [esp + 0x20], 0xffffffff
mov eax, dword [0x110b9230]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
lea eax, [esi + 0x2e0]
lea ecx, [edi + 0x2e0]
call fcn.10a396e0
test eax, eax
je 0x10a4ad78
mov ecx, dword [0x110b925c]
mov eax, 0x800
test eax, ecx
jne 0x10a4ad69
or ecx, eax
mov dword [0x110b925c], ecx
push 0
push str.RotationRate
mov dword [esp + 0x28], 0xb
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b922c], eax
mov dword [esp + 0x20], 0xffffffff
mov edx, dword [0x110b922c]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
lea eax, [esi + 0x2ec]
lea ecx, [edi + 0x2ec]
call fcn.10a396e0
test eax, eax
je 0x10a4ade5
mov ecx, dword [0x110b925c]
mov eax, 0x1000
test eax, ecx
jne 0x10a4add0
mov ebp, ecx
or ebp, eax
mov dword [0x110b925c], ebp
push 0
push str.DesiredRotation
mov dword [esp + 0x28], 0xc
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9228], eax
mov dword [esp + 0x20], 0xffffffff
mov ecx, dword [0x110b9228]
movzx edx, word [ecx + 0x4a]
mov dword [ebx], edx
add ebx, 4
jmp 0x10a4ade5
mov ebx, dword [esp + 0x30]
mov edi, dword [esp + 0x10]
cmp byte [edi + 0x75], 2
jne 0x10a4aeea
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x10a4ae78
mov eax, dword [edi + 0x70]
test ah, 0x40
jne 0x10a4ae78
test byte [edi + 0x350], 1
jne 0x10a4ae11
test ah, 2
je 0x10a4ae78
mov eax, dword [esp + 0x28]
add eax, 0x160
lea ecx, [edi + 0x160]
call fcn.10a396c0
test eax, eax
je 0x10a4ae78
mov ecx, dword [0x110b925c]
mov eax, 0x2000
test eax, ecx
jne 0x10a4ae6a
or ecx, eax
mov dword [0x110b925c], ecx
push 0
push str.Velocity
mov dword [esp + 0x28], 0xd
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9224], eax
mov dword [esp + 0x20], 0xffffffff
mov eax, dword [0x110b9224]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
test byte [edi + 0x350], 1
je 0x10a4b038
mov eax, dword [esp + 0x28]
mov dl, byte [edi + 0x74]
cmp dl, byte [eax + 0x74]
je 0x10a4b038
mov ecx, dword [0x110b925c]
mov eax, 0x4000
test eax, ecx
jne 0x10a4aed6
or ecx, eax
mov dword [0x110b925c], ecx
push 0
push str.Physics
mov dword [esp + 0x28], 0xe
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9220], eax
mov dword [esp + 0x20], 0xffffffff
mov ecx, dword [0x110b9220]
movzx edx, word [ecx + 0x4a]
mov dword [ebx], edx
add ebx, 4
jmp 0x10a4b038
mov esi, dword [esp + 0x28]
mov al, byte [edi + 0x74]
cmp al, byte [esi + 0x74]
je 0x10a4af46
mov ecx, dword [0x110b925c]
mov eax, 0x8000
test eax, ecx
jne 0x10a4af37
or ecx, eax
mov dword [0x110b925c], ecx
push 0
push str.Physics
mov dword [esp + 0x28], 0xf
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b921c], eax
mov dword [esp + 0x20], 0xffffffff
mov ecx, dword [0x110b921c]
movzx edx, word [ecx + 0x4a]
mov dword [ebx], edx
add ebx, 4
cmp byte [edi + 0x74], 2
jne 0x10a4b038
lea eax, [esi + 0x160]
lea ecx, [edi + 0x160]
call fcn.10a396c0
test eax, eax
je 0x10a4b038
mov ecx, dword [0x110b925c]
mov eax, 0x10000
test eax, ecx
jne 0x10a4afaa
or ecx, eax
mov dword [0x110b925c], ecx
push 0
push str.Velocity
mov dword [esp + 0x28], 0x10
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9218], eax
mov dword [esp + 0x20], 0xffffffff
mov eax, dword [0x110b9218]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
jmp 0x10a4b038
cmp ecx, ebp
je 0x10a4b034
test ah, 0x20
jne 0x10a4b034
mov al, byte [edi + 0x3b]
cmp al, 2
je 0x10a4afce
cmp al, 8
jne 0x10a4b034
lea eax, [esi + 0x154]
lea ecx, [edi + 0x154]
call fcn.10a396e0
test eax, eax
je 0x10a4b034
mov ecx, dword [0x110b925c]
mov eax, 0x20000
test eax, ecx
jne 0x10a4b01f
or ecx, eax
mov dword [0x110b925c], ecx
push ebp
push str.Rotation
mov dword [esp + 0x28], 0x11
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9214], eax
mov dword [esp + 0x20], ebx
mov edx, dword [0x110b9214]
movzx eax, word [edx + 0x4a]
mov ebx, dword [esp + 0x30]
mov dword [ebx], eax
add ebx, 4
jmp 0x10a4b038
mov ebx, dword [esp + 0x30]
mov eax, dword [edi + 0x350]
test al, 2
mov ebp, 0x40000
je 0x10a4b058
test byte [edi + 0x2ae], 1
je 0x10a4b058
test al, 8
je 0x10a4b27c
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x10]
mov esi, dword [ecx + 0x8c]
mov edi, dword [edx + 0x8c]
mov ecx, dword [esp + 0x34]
mov eax, dword [ecx]
push edi
call dword [eax + 0x70]
test eax, eax
je 0x10a4b080
xor eax, eax
cmp edi, esi
jmp 0x10a4b092
mov ecx, dword [esp + 0x38]
xor eax, eax
mov dword [ecx + 0x94], 1
test esi, esi
setne al
test eax, eax
je 0x10a4b0f3
mov eax, dword [0x110b925c]
test ebp, eax
jne 0x10a4b0df
or eax, ebp
mov dword [0x110b925c], eax
push 0
push str.AmbientSound
mov dword [esp + 0x28], 0x12
call fcn.10905f80
push eax
call fcn.10a39b30
mov edx, eax
mov dword [0x110b9210], eax
movzx eax, word [edx + 0x4a]
or ebp, 0xffffffff
add esp, 0xc
mov dword [ebx], eax
mov dword [esp + 0x20], ebp
add ebx, 4
jmp 0x10a4b0f6
mov edx, dword [0x110b9210]
movzx eax, word [edx + 0x4a]
or ebp, 0xffffffff
mov dword [ebx], eax
add ebx, 4
jmp 0x10a4b0f6
or ebp, 0xffffffff
mov esi, dword [esp + 0x10]
mov eax, dword [esi + 0x8c]
test eax, eax
mov edi, dword [esp + 0x28]
je 0x10a4b283
mov ecx, dword [esi + 0x2bc]
cmp ecx, dword [edi + 0x2bc]
je 0x10a4b168
mov ecx, dword [0x110b925c]
mov eax, 0x80000
test eax, ecx
jne 0x10a4b159
mov edx, ecx
or edx, eax
mov dword [0x110b925c], edx
push 0
push str.SoundRadius
mov dword [esp + 0x28], 0x13
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b920c], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b920c]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov cl, byte [esi + 0x2b8]
cmp cl, byte [edi + 0x2b8]
je 0x10a4b1c4
mov ecx, dword [0x110b925c]
mov eax, 0x100000
test eax, ecx
jne 0x10a4b1b5
mov edx, ecx
or edx, eax
mov dword [0x110b925c], edx
push 0
push str.SoundVolume
mov dword [esp + 0x28], 0x14
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9208], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b9208]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov cl, byte [esi + 0x2b9]
cmp cl, byte [edi + 0x2b9]
je 0x10a4b220
mov ecx, dword [0x110b925c]
mov eax, 0x200000
test eax, ecx
jne 0x10a4b211
mov edx, ecx
or edx, eax
mov dword [0x110b925c], edx
push 0
push str.SoundPitch
mov dword [esp + 0x28], 0x15
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9204], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b9204]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov cl, byte [esi + 0x2ba]
cmp cl, byte [edi + 0x2ba]
je 0x10a4b27f
mov ecx, dword [0x110b925c]
mov eax, 0x400000
test eax, ecx
jne 0x10a4b26b
or ecx, eax
mov dword [0x110b925c], ecx
push 0
push str.SoundOcclusion
mov dword [esp + 0x28], 0x16
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9200], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b9200]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
jmp 0x10a4b27f
or ebp, 0xffffffff
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x10]
test byte [esi + 0x70], 0x10
je 0x10a4c181
mov ecx, dword [esi + 0x25c]
cmp ecx, dword [edi + 0x25c]
mov eax, 0x800000
je 0x10a4b2ed
mov ecx, dword [0x110b925c]
test eax, ecx
jne 0x10a4b2de
mov edx, ecx
or edx, eax
mov dword [0x110b925c], edx
push 0
push str.DrawScale
mov dword [esp + 0x28], 0x17
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91fc], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91fc]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov cl, byte [esi + 0x3b]
cmp cl, byte [edi + 0x3b]
mov eax, 0x1000000
je 0x10a4b343
mov ecx, dword [0x110b925c]
test eax, ecx
jne 0x10a4b334
mov edx, ecx
or edx, eax
mov dword [0x110b925c], edx
push 0
push str.DrawType
mov dword [esp + 0x28], 0x18
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91f8], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91f8]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov eax, dword [edi + 0x2d4]
mov ecx, dword [esi + 0x2d4]
xor ecx, eax
test cl, 1
mov eax, 0x2000000
je 0x10a4b3a4
mov ecx, dword [0x110b925c]
test eax, ecx
jne 0x10a4b395
mov edx, ecx
or edx, eax
mov dword [0x110b925c], edx
push 0
push str.bCollideActors
mov dword [esp + 0x28], 0x19
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91f4], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91f4]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov eax, dword [edi + 0x2d4]
mov ecx, dword [esi + 0x2d4]
xor ecx, eax
test cl, 2
mov eax, 0x4000000
je 0x10a4b405
mov ecx, dword [0x110b925c]
test eax, ecx
jne 0x10a4b3f6
mov edx, ecx
or edx, eax
mov dword [0x110b925c], edx
push 0
push str.bCollideWorld
mov dword [esp + 0x28], 0x1a
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91f0], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91f0]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov cl, byte [esi + 0x6e]
xor cl, byte [edi + 0x6e]
test cl, 1
je 0x10a4b45b
mov eax, dword [0x110b925c]
test eax, 0x8000000
jne 0x10a4b44c
or eax, 0x8000000
mov dword [0x110b925c], eax
push 0
push str.bOnlyOwnerSee
mov dword [esp + 0x28], 0x1b
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91ec], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91ec]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x10]
mov esi, dword [ecx + 0x250]
mov edi, dword [edx + 0x250]
mov ecx, dword [esp + 0x34]
mov eax, dword [ecx]
push edi
call dword [eax + 0x70]
test eax, eax
je 0x10a4b483
xor eax, eax
cmp edi, esi
jmp 0x10a4b495
mov ecx, dword [esp + 0x38]
xor eax, eax
mov dword [ecx + 0x94], 1
test esi, esi
setne al
test eax, eax
je 0x10a4b4e7
mov eax, dword [0x110b925c]
test eax, 0x10000000
jne 0x10a4b4d8
or eax, 0x10000000
mov dword [0x110b925c], eax
push 0
push 0x10e4d03c
mov dword [esp + 0x28], 0x1c
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91e8], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91e8]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x10]
mov esi, dword [ecx + 0x294]
mov edi, dword [edx + 0x294]
mov ecx, dword [esp + 0x34]
mov eax, dword [ecx]
push edi
call dword [eax + 0x70]
test eax, eax
je 0x10a4b50f
xor eax, eax
cmp edi, esi
jmp 0x10a4b521
mov ecx, dword [esp + 0x38]
xor eax, eax
mov dword [ecx + 0x94], 1
test esi, esi
setne al
test eax, eax
je 0x10a4b573
mov eax, dword [0x110b925c]
test eax, 0x20000000
jne 0x10a4b564
or eax, 0x20000000
mov dword [0x110b925c], eax
push 0
push str.RepSkin
mov dword [esp + 0x28], 0x1d
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91e4], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91e4]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x28]
mov ecx, dword [esi + 0x2d4]
xor ecx, dword [edi + 0x2d4]
test ch, 0x40
je 0x10a4b5d7
mov eax, dword [0x110b925c]
test eax, 0x40000000
jne 0x10a4b5c8
or eax, 0x40000000
mov dword [0x110b925c], eax
push 0
push str.bClientTrigger
mov dword [esp + 0x28], 0x1e
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91e0], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91e0]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov cl, byte [esi + 0x2a9]
cmp cl, byte [edi + 0x2a9]
je 0x10a4b635
mov eax, dword [0x110b925c]
test eax, eax
js 0x10a4b626
or eax, 0x80000000
mov dword [0x110b925c], eax
push 0
push str.Style
mov dword [esp + 0x28], 0x1f
call fcn.10905f80
push eax
call fcn.10a39b30
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x34]
add esp, 0xc
mov dword [0x110b91dc], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91dc]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov al, byte [esi + 0x3b]
cmp al, 2
je 0x10a4b640
cmp al, 8
jne 0x10a4b6b7
mov ecx, dword [esi + 0x27c]
cmp ecx, dword [edi + 0x27c]
jne 0x10a4b66a
mov edx, dword [esi + 0x280]
cmp edx, dword [edi + 0x280]
jne 0x10a4b66a
mov eax, dword [esi + 0x284]
cmp eax, dword [edi + 0x284]
je 0x10a4b6b7
test byte [0x110b91d8], 1
jne 0x10a4b6a8
or dword [0x110b91d8], 1
push 0
push str.PrePivot
mov dword [esp + 0x28], 0x20
call fcn.10905f80
push eax
call fcn.10a39b30
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x34]
add esp, 0xc
mov dword [0x110b91d4], eax
mov dword [esp + 0x20], ebp
mov ecx, dword [0x110b91d4]
movzx edx, word [ecx + 0x4a]
mov dword [ebx], edx
add ebx, 4
mov eax, dword [esi + 0x2d4]
test al, 3
je 0x10a4b89c
mov ecx, dword [edi + 0x2d4]
xor ecx, eax
test cl, 0x20
je 0x10a4b71f
test byte [0x110b91d8], 2
jne 0x10a4b710
or dword [0x110b91d8], 2
push 0
push str.bProjTarget
mov dword [esp + 0x28], 0x21
call fcn.10905f80
push eax
call fcn.10a39b30
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x34]
add esp, 0xc
mov dword [0x110b91d0], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91d0]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov ecx, dword [esi + 0x2d4]
xor ecx, dword [edi + 0x2d4]
test cl, 4
je 0x10a4b77d
test byte [0x110b91d8], 4
jne 0x10a4b76e
or dword [0x110b91d8], 4
push 0
push str.bBlockActors
mov dword [esp + 0x28], 0x22
call fcn.10905f80
push eax
call fcn.10a39b30
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x34]
add esp, 0xc
mov dword [0x110b91cc], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91cc]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
test byte [esi + 0x350], 2
je 0x10a4b793
test byte [esi + 0x2c8], 1
je 0x10a4b849
mov ecx, dword [esi + 0x2cc]
cmp ecx, dword [edi + 0x2cc]
je 0x10a4b7ee
test byte [0x110b91d8], 8
jne 0x10a4b7df
or dword [0x110b91d8], 8
push 0
push str.CollisionRadius
mov dword [esp + 0x28], 0x23
call fcn.10905f80
push eax
call fcn.10a39b30
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x34]
add esp, 0xc
mov dword [0x110b91c8], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91c8]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov ecx, dword [esi + 0x2d0]
cmp ecx, dword [edi + 0x2d0]
je 0x10a4b849
test byte [0x110b91d8], 0x10
jne 0x10a4b83a
or dword [0x110b91d8], 0x10
push 0
push str.CollisionHeight
mov dword [esp + 0x28], 0x24
call fcn.10905f80
push eax
call fcn.10a39b30
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x34]
add esp, 0xc
mov dword [0x110b91c4], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91c4]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov ecx, dword [esi + 0x6c]
xor ecx, dword [edi + 0x6c]
test ecx, 0x20000000
je 0x10a4b89c
test byte [0x110b91d8], 0x20
jne 0x10a4b88d
or dword [0x110b91d8], 0x20
push 0
push str.bIgnoreEncroachers
mov dword [esp + 0x28], 0x25
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91c0], eax
mov dword [esp + 0x20], ebp
mov edx, dword [0x110b91c0]
movzx eax, word [edx + 0x4a]
mov dword [ebx], eax
add ebx, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x70]
mov ebp, 0x100
test ebp, eax
jne 0x10a4bab4
mov eax, ecx
test byte [eax + 0x350], 2
je 0x10a4b99b
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
mov edi, dword [eax + 0x44]
push edx
mov edx, dword [esp + 0x14]
mov esi, dword [edx + 0x44]
call fcn.10a39700
add esp, 4
test eax, eax
je 0x10a4b92a
test byte [0x110b91d8], 0x40
jne 0x10a4b91c
or dword [0x110b91d8], 0x40
push 0
push 0x10e4c3fc
mov dword [esp + 0x28], 0x26
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91bc], eax
mov dword [esp + 0x20], 0xffffffff
mov eax, dword [0x110b91bc]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
mov edi, dword [eax + 0xd0]
push edx
mov edx, dword [esp + 0x14]
mov esi, dword [edx + 0xd0]
call fcn.10a39700
add esp, 4
test eax, eax
je 0x10a4ba0c
mov al, byte [0x110b91d8]
test al, al
js 0x10a4b994
or dword [0x110b91d8], 0x80
push 0
push str.Inventory
mov dword [esp + 0x28], 0x27
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91b8], eax
mov dword [esp + 0x20], 0xffffffff
mov eax, dword [0x110b91b8]
jmp 0x10a4ba03
cmp byte [eax + 0x74], 0xa
jne 0x10a4ba0c
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
mov edi, dword [eax + 0x44]
push edx
mov edx, dword [esp + 0x14]
mov esi, dword [edx + 0x44]
call fcn.10a39700
add esp, 4
test eax, eax
je 0x10a4ba0c
mov eax, dword [0x110b91d8]
test ebp, eax
jne 0x10a4b9fe
or eax, ebp
mov dword [0x110b91d8], eax
push 0
push 0x10e4c3fc
mov dword [esp + 0x28], 0x28
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91b4], eax
mov dword [esp + 0x20], 0xffffffff
mov eax, dword [0x110b91b4]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x70]
test al, 0x40
je 0x10a4bab4
test al, 4
je 0x10a4ba3b
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x10a4bab4
mov ecx, dword [esp + 0x34]
mov edx, dword [ecx]
push eax
call dword [edx + 0x70]
test eax, eax
je 0x10a4bab4
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
mov edi, dword [edx + 0x88]
push eax
mov eax, dword [esp + 0x14]
mov esi, dword [eax + 0x88]
call fcn.10a39700
add esp, 4
test eax, eax
je 0x10a4bab4
mov ecx, dword [0x110b91d8]
mov eax, 0x200
test eax, ecx
jne 0x10a4baa5
or ecx, eax
mov dword [0x110b91d8], ecx
push 0
push str.Instigator
mov dword [esp + 0x28], 0x29
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91b0], eax
mov dword [esp + 0x20], 0xffffffff
mov ecx, dword [0x110b91b0]
movzx edx, word [ecx + 0x4a]
mov dword [ebx], edx
add ebx, 4
mov edi, dword [esp + 0x10]
mov al, byte [edi + 0x3b]
cmp al, 2
jne 0x10a4bd01
mov esi, dword [esp + 0x28]
mov al, byte [edi + 0x298]
cmp al, byte [esi + 0x298]
je 0x10a4bb27
mov ecx, dword [0x110b91d8]
mov eax, 0x400
test eax, ecx
jne 0x10a4bb18
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.AmbientGlow
mov dword [esp + 0x28], 0x2a
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91ac], eax
mov dword [esp + 0x20], 0xffffffff
mov ecx, dword [0x110b91ac]
movzx edx, word [ecx + 0x4a]
mov dword [ebx], edx
add ebx, 4
mov eax, dword [edi + 0x2a4]
cmp eax, dword [esi + 0x2a4]
je 0x10a4bb87
mov ecx, dword [0x110b91d8]
mov eax, 0x800
test eax, ecx
jne 0x10a4bb78
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.ScaleGlow
mov dword [esp + 0x28], 0x2b
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91a8], eax
mov dword [esp + 0x20], 0xffffffff
mov ecx, dword [0x110b91a8]
movzx edx, word [ecx + 0x4a]
mov dword [ebx], edx
add ebx, 4
mov eax, dword [esi + 0x2ac]
xor eax, dword [edi + 0x2ac]
test al, 1
je 0x10a4bbe7
mov ecx, dword [0x110b91d8]
mov eax, 0x1000
test eax, ecx
jne 0x10a4bbd8
or ecx, eax
mov dword [0x110b91d8], ecx
push 0
push str.bUnlit
mov dword [esp + 0x28], 0x2c
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b91a4], eax
mov dword [esp + 0x20], 0xffffffff
mov ecx, dword [0x110b91a4]
movzx edx, word [ecx + 0x4a]
mov dword [ebx], edx
add ebx, 4
test dword [edi + 0x350], ebp
jne 0x10a4bc7f
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
mov edi, dword [edx + 0xb4]
push eax
mov eax, dword [esp + 0x14]
mov esi, dword [eax + 0xb4]
call fcn.10a39700
add esp, 4
test eax, eax
je 0x10a4bc7f
mov ecx, dword [0x110b91d8]
mov eax, 0x2000
test eax, ecx
jne 0x10a4bc6b
mov ebp, ecx
or ebp, eax
mov dword [0x110b91d8], ebp
push 0
push str.Mesh
mov dword [esp + 0x28], 0x2d
call fcn.10905f80
push eax
call fcn.10a39b30
mov ecx, eax
movzx edx, word [ecx + 0x4a]
or ebp, 0xffffffff
add esp, 0xc
mov dword [ebx], edx
mov dword [0x110b91a0], eax
mov dword [esp + 0x20], ebp
add ebx, 4
jmp 0x10a4bc82
mov ecx, dword [0x110b91a0]
movzx edx, word [ecx + 0x4a]
or ebp, 0xffffffff
mov dword [ebx], edx
add ebx, 4
jmp 0x10a4bc82
or ebp, 0xffffffff
mov esi, dword [esp + 0x10]
mov eax, dword [esi + 0x70]
test ah, 0x10
mov edi, dword [esp + 0x28]
je 0x10a4bd84
lea eax, [edi + 0x334]
lea ecx, [esi + 0x334]
call fcn.10a3bc80
test eax, eax
je 0x10a4bd84
mov ecx, dword [0x110b91d8]
mov eax, 0x4000
test eax, ecx
jne 0x10a4bcee
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.SimAnim
mov dword [esp + 0x28], 0x2e
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b919c], eax
mov dword [esp + 0x20], ebp
mov eax, dword [0x110b919c]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
jmp 0x10a4bd84
cmp al, 8
jne 0x10a4bd79
mov edx, dword [esp + 0x38]
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x34]
mov edi, dword [eax + 0x40]
push edx
mov edx, dword [esp + 0x14]
mov esi, dword [edx + 0x40]
call fcn.10a39700
add esp, 4
test eax, eax
je 0x10a4bd79
mov ecx, dword [0x110b91d8]
mov eax, 0x8000
test eax, ecx
jne 0x10a4bd6b
mov ebp, ecx
or ebp, eax
mov dword [0x110b91d8], ebp
push 0
push str.StaticMesh
mov dword [esp + 0x28], 0x2f
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9198], eax
mov dword [esp + 0x20], 0xffffffff
mov eax, dword [0x110b9198]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov esi, dword [esp + 0x10]
mov edi, dword [esp + 0x28]
or ebp, 0xffffffff
mov dl, byte [esi + 0x2c]
cmp dl, byte [edi + 0x2c]
je 0x10a4bdd9
mov ecx, dword [0x110b91d8]
mov eax, 0x10000
test eax, ecx
jne 0x10a4bdcb
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.LightType
mov dword [esp + 0x28], 0x30
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9194], eax
mov dword [esp + 0x20], ebp
mov eax, dword [0x110b9194]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov al, byte [esi + 0x2c]
test al, al
je 0x10a4c08d
mov dl, byte [esi + 0x2d]
cmp dl, byte [edi + 0x2d]
je 0x10a4be39
mov ecx, dword [0x110b91d8]
mov eax, 0x20000
test eax, ecx
jne 0x10a4be2b
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.LightEffect
mov dword [esp + 0x28], 0x31
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9190], eax
mov dword [esp + 0x20], ebp
mov eax, dword [0x110b9190]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov edx, dword [esi + 0x30]
cmp edx, dword [edi + 0x30]
je 0x10a4be8e
mov ecx, dword [0x110b91d8]
mov eax, 0x40000
test eax, ecx
jne 0x10a4be80
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.LightBrightness
mov dword [esp + 0x28], 0x32
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b918c], eax
mov dword [esp + 0x20], ebp
mov eax, dword [0x110b918c]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov dl, byte [esi + 0x2e]
cmp dl, byte [edi + 0x2e]
je 0x10a4bee3
mov ecx, dword [0x110b91d8]
mov eax, 0x80000
test eax, ecx
jne 0x10a4bed5
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.LightHue
mov dword [esp + 0x28], 0x33
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9188], eax
mov dword [esp + 0x20], ebp
mov eax, dword [0x110b9188]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov dl, byte [esi + 0x2f]
cmp dl, byte [edi + 0x2f]
je 0x10a4bf38
mov ecx, dword [0x110b91d8]
mov eax, 0x100000
test eax, ecx
jne 0x10a4bf2a
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.LightSaturation
mov dword [esp + 0x28], 0x34
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9184], eax
mov dword [esp + 0x20], ebp
mov eax, dword [0x110b9184]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov edx, dword [esi + 0x34]
cmp edx, dword [edi + 0x34]
je 0x10a4bf8d
mov ecx, dword [0x110b91d8]
mov eax, 0x200000
test eax, ecx
jne 0x10a4bf7f
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.LightRadius
mov dword [esp + 0x28], 0x35
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9180], eax
mov dword [esp + 0x20], ebp
mov eax, dword [0x110b9180]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov dl, byte [esi + 0x38]
cmp dl, byte [edi + 0x38]
je 0x10a4bfe2
mov ecx, dword [0x110b91d8]
mov eax, 0x400000
test eax, ecx
jne 0x10a4bfd4
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.LightPeriod
mov dword [esp + 0x28], 0x36
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b917c], eax
mov dword [esp + 0x20], ebp
mov eax, dword [0x110b917c]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov dl, byte [esi + 0x39]
cmp dl, byte [edi + 0x39]
je 0x10a4c037
mov ecx, dword [0x110b91d8]
mov eax, 0x800000
test eax, ecx
jne 0x10a4c029
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.LightPhase
mov dword [esp + 0x28], 0x37
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9178], eax
mov dword [esp + 0x20], ebp
mov eax, dword [0x110b9178]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov edx, dword [esi + 0x6c]
xor edx, dword [edi + 0x6c]
test dl, 1
je 0x10a4c08d
mov ecx, dword [0x110b91d8]
mov eax, 0x1000000
test eax, ecx
jne 0x10a4c07f
or ecx, eax
mov dword [0x110b91d8], ecx
push 0
push str.bSpecialLit
mov dword [esp + 0x28], 0x38
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9174], eax
mov dword [esp + 0x20], ebp
mov eax, dword [0x110b9174]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x28]
mov edi, dword [eax + 0xb0]
mov ecx, dword [esp + 0x34]
mov esi, dword [edx + 0xb0]
mov edx, dword [ecx]
push edi
call dword [edx + 0x70]
test eax, eax
je 0x10a4c0b5
xor eax, eax
cmp edi, esi
jmp 0x10a4c0c7
mov eax, dword [esp + 0x38]
mov dword [eax + 0x94], 1
xor eax, eax
test esi, esi
setne al
test eax, eax
je 0x10a4c11a
mov ecx, dword [0x110b91d8]
mov eax, 0x2000000
test eax, ecx
jne 0x10a4c10b
or ecx, eax
mov dword [0x110b91d8], ecx
push 0
push str.OverlayMaterial
mov dword [esp + 0x28], 0x39
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9170], eax
mov dword [esp + 0x20], ebp
mov ecx, dword [0x110b9170]
movzx edx, word [ecx + 0x4a]
mov dword [ebx], edx
add ebx, 4
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x358]
mov edx, dword [esp + 0x28]
cmp ecx, dword [edx + 0x358]
je 0x10a4c181
mov ecx, dword [0x110b91d8]
mov eax, 0x4000000
test eax, ecx
jne 0x10a4c173
mov ebp, ecx
or ebp, eax
mov dword [0x110b91d8], ebp
push 0
push str.OverlayTimer
mov dword [esp + 0x28], 0x3a
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b916c], eax
mov dword [esp + 0x20], 0xffffffff
mov eax, dword [0x110b916c]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x10]
mov edx, dword [ebp + 0x6c]
xor edx, dword [edi + 0x6c]
test dh, 4
je 0x10a4c1f2
mov ecx, dword [0x110b91d8]
mov eax, 0x8000000
test eax, ecx
jne 0x10a4c1df
or ecx, eax
mov dword [0x110b91d8], ecx
push 0
push str.bHidden
mov dword [esp + 0x28], 0x3b
call fcn.10905f80
push eax
call fcn.10a39b30
movzx ecx, word [eax + 0x4a]
or esi, 0xffffffff
add esp, 0xc
mov dword [ebx], ecx
mov dword [0x110b9168], eax
mov dword [esp + 0x20], esi
add ebx, 4
jmp 0x10a4c1f5
mov eax, dword [0x110b9168]
movzx ecx, word [eax + 0x4a]
or esi, 0xffffffff
mov dword [ebx], ecx
add ebx, 4
jmp 0x10a4c1f5
or esi, 0xffffffff
mov dl, byte [edi + 0x76]
cmp dl, byte [ebp + 0x76]
je 0x10a4c24a
mov ecx, dword [0x110b91d8]
mov eax, 0x10000000
test eax, ecx
jne 0x10a4c23c
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.Role
mov dword [esp + 0x28], 0x3c
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9164], eax
mov dword [esp + 0x20], esi
mov eax, dword [0x110b9164]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
test byte [edi + 0x350], 0x10
je 0x10a4c25b
mov eax, dword [edi + 0x70]
test ah, 4
jne 0x10a4c2b0
mov dl, byte [edi + 0x75]
cmp dl, byte [ebp + 0x75]
je 0x10a4c2b0
mov ecx, dword [0x110b91d8]
mov eax, 0x20000000
test eax, ecx
jne 0x10a4c2a2
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.RemoteRole
mov dword [esp + 0x28], 0x3d
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9160], eax
mov dword [esp + 0x20], esi
mov eax, dword [0x110b9160]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov edx, dword [ebp + 0x350]
xor edx, dword [edi + 0x350]
test dl, 2
je 0x10a4c30e
mov ecx, dword [0x110b91d8]
mov eax, 0x40000000
test eax, ecx
jne 0x10a4c300
mov edx, ecx
or edx, eax
mov dword [0x110b91d8], edx
push 0
push str.bNetOwner
mov dword [esp + 0x28], 0x3e
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b915c], eax
mov dword [esp + 0x20], esi
mov eax, dword [0x110b915c]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
mov edx, dword [ebp + 0x70]
xor edx, dword [edi + 0x70]
test dh, 4
pop esi
je 0x10a4c369
mov ecx, dword [0x110b91d8]
mov eax, 0x80000000
test eax, ecx
jne 0x10a4c355
mov ebp, ecx
or ebp, eax
mov dword [0x110b91d8], ebp
push 0
push str.bTearOff
mov dword [esp + 0x24], 0x3f
call fcn.10905f80
push eax
call fcn.10a39b30
add esp, 0xc
mov dword [0x110b9158], eax
mov eax, dword [0x110b9158]
movzx ecx, word [eax + 0x4a]
mov dword [ebx], ecx
add ebx, 4
jmp 0x10a4c369
mov ebx, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
pop edi
pop ebp
mov eax, ebx
pop ebx
mov dword fs:[0], ecx
add esp, 0x14
ret 0x14