Function at 0x5b6fe0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x42c
mov dword [ebp - 4], 0
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax]
mov dword [ebp - 0xbc], ecx
cmp dword [ebp - 0xbc], 0x29
ja case.default.0x5b700f
mov edx, dword [ebp - 0xbc]
jmp dword [edx*4 + 0x5b8fd8]
mov dword [ebp - 4], 0
jmp 0x5b8c5c
mov dword [ebp - 4], 1
jmp 0x5b8c5c
mov eax, 4
imul ecx, eax, 0
mov edx, dword [0x11d756c]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x70], eax
cmp dword [ebp - 0x70], 0
je 0x5b7198
mov ecx, dword [ebp - 0x70]
mov edx, dword [ecx + 0x10]
sar edx, 8
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 8]
sub ecx, edx
mov dword [ebp - 0x178], ecx
mov edx, dword [ebp - 0x178]
push edx
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x70]
mov ecx, dword [eax + 0x14]
sar ecx, 8
mov edx, dword [ebp + 8]
movsx eax, word [edx + 0xa]
sub eax, ecx
mov dword [ebp - 0x17c], eax
mov ecx, dword [ebp - 0x17c]
push ecx
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x38], eax
mov edx, dword [ebp - 0x70]
mov eax, dword [edx + 0x18]
sar eax, 8
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 0xc]
sub edx, eax
mov dword [ebp - 0x180], edx
mov eax, dword [ebp - 0x180]
push eax
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp - 0x30]
cmp ecx, dword [ebp - 0x38]
jle 0x5b7118
mov edx, dword [ebp - 0x30]
cmp edx, dword [ebp - 0x34]
jle 0x5b70f3
mov eax, dword [ebp - 0x38]
sar eax, 2
add eax, dword [ebp - 0x30]
mov ecx, dword [ebp - 0x34]
sar ecx, 2
add eax, ecx
mov dword [ebp - 0xc0], eax
jmp 0x5b710a
mov edx, dword [ebp - 0x30]
sar edx, 2
add edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
sar eax, 2
add edx, eax
mov dword [ebp - 0xc0], edx
mov ecx, dword [ebp - 0xc0]
mov dword [ebp - 0xc8], ecx
jmp 0x5b715c
mov edx, dword [ebp - 0x38]
cmp edx, dword [ebp - 0x34]
jle 0x5b7139
mov eax, dword [ebp - 0x30]
sar eax, 2
add eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
sar ecx, 2
add eax, ecx
mov dword [ebp - 0xc4], eax
jmp 0x5b7150
mov edx, dword [ebp - 0x30]
sar edx, 2
add edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x38]
sar eax, 2
add edx, eax
mov dword [ebp - 0xc4], edx
mov ecx, dword [ebp - 0xc4]
mov dword [ebp - 0xc8], ecx
mov edx, dword [ebp - 0xc8]
mov dword [ebp - 0x184], edx
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
cmp dword [ebp - 0x184], ecx
jge 0x5b7183
mov dword [ebp - 0xcc], 1
jmp 0x5b718d
mov dword [ebp - 0xcc], 0
mov edx, dword [ebp - 0xcc]
mov dword [ebp - 4], edx
jmp 0x5b719f
mov dword [ebp - 4], 0
jmp 0x5b8c5c
mov eax, dword [ebp + 0xc]
movzx ecx, byte [eax + 2]
push ecx
call fcn.006645c0
add esp, 4
mov dword [ebp - 4], eax
jmp 0x5b8c5c
mov dword [ebp - 4], 0
jmp 0x5b8c5c
mov dword [ebp - 4], 0
jmp 0x5b8c5c
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
imul ecx, eax, 0x3c
mov edx, dword [0x11d7258]
mov eax, dword [edx + ecx + 4]
and eax, 0x800
mov dword [ebp - 4], eax
jmp 0x5b8c5c
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
cmp dword [0x254dcb0], edx
jl 0x5b7210
mov dword [ebp - 0xd0], 1
jmp 0x5b721a
mov dword [ebp - 0xd0], 0
mov eax, dword [ebp - 0xd0]
mov dword [ebp - 4], eax
jmp 0x5b8c5c
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
test edx, edx
jne 0x5b726d
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
push ecx
push str.Waypoint__d_has_a_NULL_dependency
push 0x254dd68
call fcn.0041e320
add esp, 0xc
push 0x1f40
push 0x254dd68
call fcn.00421ed0
add esp, 8
mov dword [ebp - 4], 0
mov edx, dword [ebp + 0xc]
mov byte [edx], 0
jmp 0x5b72bf
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
cmp ecx, 1
jl 0x5b728d
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
mov ecx, dword [0x254dc8c]
sub ecx, 1
cmp eax, ecx
jle 0x5b72a4
push 0x9d9
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
shl eax, 5
mov ecx, dword [0x254dc74]
movzx edx, byte [ecx + eax + 4]
and edx, 1
mov dword [ebp - 4], edx
jmp 0x5b8c5c
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
imul edx, ecx, 6
add edx, dword [0x254dc70]
mov dword [ebp - 0x188], edx
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 4]
imul edx, ecx, 6
add edx, dword [0x254dc70]
mov dword [ebp - 0x18c], edx
push 1
mov eax, dword [ebp - 0x188]
push eax
mov ecx, dword [ebp + 8]
push ecx
call fcn.005b6fe0
add esp, 0xc
test eax, eax
je 0x5b732e
push 1
mov edx, dword [ebp - 0x18c]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.005b6fe0
add esp, 0xc
test eax, eax
je 0x5b732e
mov dword [ebp - 0xd4], 1
jmp 0x5b7338
mov dword [ebp - 0xd4], 0
mov ecx, dword [ebp - 0xd4]
mov dword [ebp - 4], ecx
jmp 0x5b8c5c
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
imul ecx, eax, 6
add ecx, dword [0x254dc70]
mov dword [ebp - 0x190], ecx
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 4]
imul ecx, eax, 6
add ecx, dword [0x254dc70]
mov dword [ebp - 0x194], ecx
push 1
mov edx, dword [ebp - 0x190]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.005b6fe0
add esp, 0xc
test eax, eax
jne 0x5b73b0
push 1
mov ecx, dword [ebp - 0x194]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.005b6fe0
add esp, 0xc
test eax, eax
jne 0x5b73b0
mov dword [ebp - 0xd8], 0
jmp 0x5b73ba
mov dword [ebp - 0xd8], 1
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 4], eax
jmp 0x5b8c5c
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
mov dword [ebp - 0x68], edx
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 4]
mov dword [ebp - 0x21c], ecx
cmp dword [ebp - 0x68], 0
je 0x5b7410
cmp dword [ebp - 0x68], 1
jl 0x5b73f9
mov edx, dword [0x254dc8c]
sub edx, 1
cmp dword [ebp - 0x68], edx
jle 0x5b7410
push 0x9fd
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
cmp dword [ebp - 0x68], 0
je 0x5b7430
mov eax, dword [ebp - 0x68]
shl eax, 5
mov ecx, dword [0x254dc74]
movzx edx, byte [ecx + eax + 4]
and edx, 1
je 0x5b74e4
movzx eax, byte [0x254dcbe]
test eax, eax
je 0x5b743d
jmp 0x5b7479
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 4]
cmp edx, dword [0x254dcb4]
jg 0x5b745e
xor eax, eax
mov ecx, dword [ebp + 0xc]
mov word [ecx + 4], ax
mov dword [ebp - 4], 1
jmp 0x5b7479
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 4]
sub eax, dword [0x254dcb4]
mov ecx, dword [ebp + 0xc]
mov word [ecx + 4], ax
mov dword [ebp - 4], 0
mov edx, dword [ebp + 0xc]
movzx eax, byte [edx]
cmp eax, 0xc
jne 0x5b74e2
mov ecx, dword [0x119f1d0]
and ecx, 0x18
jne 0x5b74cb
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 4]
cmp eax, 0xbb8
jge 0x5b74a6
mov byte [0x25a892e], 9
jmp 0x5b74cb
movzx ecx, byte [0x25a892e]
test ecx, ecx
je 0x5b74c4
mov byte [0x25a892e], 0
push 0
call fcn.005f7600
add esp, 4
jmp 0x5b74cb
mov byte [0x25a892e], 0
push 0x32
push 0x140
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 4]
push eax
call fcn.004624d0
add esp, 0xc
jmp 0x5b74eb
mov dword [ebp - 4], 0
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
mov dword [ebp - 0xdc], edx
cmp dword [ebp - 0xdc], 0
jne 0x5b7551
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
push ecx
push str.Waypoint__d:_cond_person_dead_has_NULL_dependency
lea edx, [ebp - 0x2ac]
push edx
call fcn.0041e320
add esp, 0xc
push 0x1f40
lea eax, [ebp - 0x2ac]
push eax
call fcn.00421ed0
add esp, 8
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 4]
or edx, 4
mov eax, dword [ebp + 8]
mov byte [eax + 4], dl
jmp 0x5b7686
mov ecx, dword [ebp - 0xdc]
shl ecx, 5
add ecx, dword [0x254dc74]
mov dword [ebp - 0x6c], ecx
mov edx, dword [ebp - 0x6c]
movzx eax, byte [edx + 0x1a]
mov dword [ebp - 0x74], eax
mov ecx, dword [ebp - 0x74]
sub ecx, 1
mov dword [ebp - 0x74], ecx
cmp dword [ebp - 0x74], 0x20
ja case.0x5b758a.5
mov edx, dword [ebp - 0x74]
movzx eax, byte [edx + 0x5b9090]
jmp dword [eax*4 + 0x5b9080]
mov ecx, dword [ebp - 0x6c]
movzx edx, word [ecx + 0x1c]
mov dword [ebp - 0xe0], edx
cmp dword [ebp - 0xe0], 0
je 0x5b760f
imul eax, dword [ebp - 0xe0], 0x3c
add eax, dword [0x11d7258]
mov dword [ebp - 0x78], eax
mov ecx, dword [ebp - 0x78]
movzx edx, byte [ecx + 1]
cmp edx, 0x11
jne 0x5b75cf
mov dword [ebp - 0xe4], 1
jmp 0x5b75d9
mov dword [ebp - 0xe4], 0
mov eax, dword [ebp - 0xe4]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 0x78]
movzx edx, byte [ecx]
cmp edx, 5
jne 0x5b760f
mov eax, dword [ebp - 0x78]
push eax
call fcn.00624770
add esp, 4
test eax, eax
je 0x5b760f
mov ecx, dword [ebp - 0x78]
mov edx, dword [ecx + 4]
and edx, 1
je 0x5b760f
mov dword [ebp - 4], 0
jmp 0x5b7686
mov eax, dword [ebp - 0x6c]
movzx ecx, byte [eax + 4]
and ecx, 0x10
mov dword [ebp - 4], ecx
jmp 0x5b7686
mov dword [ebp - 4], 0
mov edx, dword [ebp - 0x6c]
movzx eax, byte [edx + 4]
and eax, 1
je 0x5b7645
mov ecx, dword [ebp - 0x6c]
movzx edx, word [ecx + 0x1c]
test edx, edx
jne 0x5b7645
mov dword [ebp - 4], 1
jmp 0x5b7686
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
push ecx
push str.Waypoint__d:_cond_person_dead_dependent_on_odd_waypoint
lea edx, [ebp - 0x32c]
push edx
call fcn.0041e320
add esp, 0xc
push 0x1f40
lea eax, [ebp - 0x32c]
push eax
call fcn.00421ed0
add esp, 8
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 4]
or edx, 4
mov eax, dword [ebp + 8]
mov byte [eax + 4], dl
jmp 0x5b8c5c
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
mov dword [ebp - 0xe8], edx
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 4]
shl ecx, 6
mov dword [ebp - 0xfc], ecx
cmp dword [ebp - 0xe8], 0
jne 0x5b76e2
push 0x20
mov edx, dword [ebp - 0xfc]
push edx
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 0xc]
push ecx
mov edx, dword [ebp + 8]
movsx eax, word [edx + 0xa]
push eax
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 8]
push edx
call fcn.00661920
add esp, 0x14
mov dword [ebp - 4], eax
jmp 0x5b7875
mov eax, dword [ebp - 0xe8]
push eax
call fcn.005b9e50
add esp, 4
movzx ecx, ax
mov dword [ebp - 0xec], ecx
cmp dword [ebp - 0xec], 0
je 0x5b786e
imul edx, dword [ebp - 0xec], 0x3c
add edx, dword [0x11d7258]
mov dword [ebp - 0x90], edx
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 8]
mov edx, dword [ebp - 0x90]
mov eax, dword [edx + 0x10]
sar eax, 8
sub eax, ecx
mov dword [ebp - 0x198], eax
mov ecx, dword [ebp - 0x198]
push ecx
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x3c], eax
mov edx, dword [ebp + 8]
movsx eax, word [edx + 0xa]
mov ecx, dword [ebp - 0x90]
mov edx, dword [ecx + 0x14]
sar edx, 8
sub edx, eax
mov dword [ebp - 0x19c], edx
mov eax, dword [ebp - 0x19c]
push eax
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 0xc]
mov eax, dword [ebp - 0x90]
mov ecx, dword [eax + 0x18]
sar ecx, 8
sub ecx, edx
mov dword [ebp - 0x1a0], ecx
mov edx, dword [ebp - 0x1a0]
push edx
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x3c]
cmp eax, dword [ebp - 0x44]
jle 0x5b77ef
mov ecx, dword [ebp - 0x3c]
cmp ecx, dword [ebp - 0x40]
jle 0x5b77ca
mov edx, dword [ebp - 0x44]
sar edx, 2
add edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x40]
sar eax, 2
add edx, eax
mov dword [ebp - 0xf0], edx
jmp 0x5b77e1
mov ecx, dword [ebp - 0x3c]
sar ecx, 2
add ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
sar edx, 2
add ecx, edx
mov dword [ebp - 0xf0], ecx
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0xf8], eax
jmp 0x5b7833
mov ecx, dword [ebp - 0x44]
cmp ecx, dword [ebp - 0x40]
jle 0x5b7810
mov edx, dword [ebp - 0x3c]
sar edx, 2
add edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x40]
sar eax, 2
add edx, eax
mov dword [ebp - 0xf4], edx
jmp 0x5b7827
mov ecx, dword [ebp - 0x3c]
sar ecx, 2
add ecx, dword [ebp - 0x40]
mov edx, dword [ebp - 0x44]
sar edx, 2
add ecx, edx
mov dword [ebp - 0xf4], ecx
mov eax, dword [ebp - 0xf4]
mov dword [ebp - 0xf8], eax
mov ecx, dword [ebp - 0xf8]
mov dword [ebp - 0x1a4], ecx
mov edx, dword [ebp - 0x1a4]
cmp edx, dword [ebp - 0xfc]
jge 0x5b7859
mov dword [ebp - 0x100], 1
jmp 0x5b7863
mov dword [ebp - 0x100], 0
mov eax, dword [ebp - 0x100]
mov dword [ebp - 4], eax
jmp 0x5b7875
mov dword [ebp - 4], 0
jmp 0x5b8c5c
mov dword [ebp - 4], 0
jmp 0x5b8c5c
mov ecx, 4
imul edx, ecx, 0
mov eax, dword [0x11d756c]
mov ecx, dword [eax + edx]
mov dword [ebp - 0x28], ecx
mov dword [ebp - 4], 0
cmp dword [ebp - 0x28], 0
je 0x5b7976
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
mov dword [ebp - 0x104], eax
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 4]
mov dword [ebp - 0x108], edx
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 8]
sub ecx, dword [ebp - 0x104]
mov dword [ebp - 0x1ac], ecx
mov edx, dword [ebp + 8]
movzx eax, word [edx + 0xc]
sub eax, dword [ebp - 0x108]
mov dword [ebp - 0x1b4], eax
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 8]
add edx, dword [ebp - 0x104]
mov dword [ebp - 0x1b0], edx
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 0xc]
add ecx, dword [ebp - 0x108]
mov dword [ebp - 0x1b8], ecx
mov edx, dword [ebp + 8]
movsx eax, word [edx + 0xa]
mov dword [ebp - 0x1a8], eax
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx + 0x14]
cmp edx, dword [ebp - 0x1a8]
jge 0x5b7976
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax + 0x10]
sar ecx, 8
cmp ecx, dword [ebp - 0x1ac]
jl 0x5b7976
mov edx, dword [ebp - 0x28]
mov eax, dword [edx + 0x10]
sar eax, 8
cmp eax, dword [ebp - 0x1b0]
jg 0x5b7976
mov ecx, dword [ebp - 0x28]
mov edx, dword [ecx + 0x18]
sar edx, 8
cmp edx, dword [ebp - 0x1b4]
jl 0x5b7976
mov eax, dword [ebp - 0x28]
mov ecx, dword [eax + 0x18]
sar ecx, 8
cmp ecx, dword [ebp - 0x1b8]
jg 0x5b7976
mov dword [ebp - 4], 1
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
mov dword [ebp - 0x1bc], eax
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 4]
mov dword [ebp - 0x1c0], edx
mov eax, dword [ebp - 0x1bc]
push eax
call fcn.005b9e50
add esp, 4
movzx ecx, ax
mov dword [ebp - 0x94], ecx
mov edx, dword [ebp - 0x1c0]
push edx
call fcn.005b9e50
add esp, 4
movzx eax, ax
mov dword [ebp - 0x10c], eax
cmp dword [ebp - 0x94], 0
je 0x5b7a20
cmp dword [ebp - 0x10c], 0
je 0x5b7a20
imul ecx, dword [ebp - 0x94], 0x3c
mov edx, dword [0x11d7258]
movzx eax, byte [edx + ecx + 1]
cmp eax, 0x11
je 0x5b7a20
push 0
push 0
imul ecx, dword [ebp - 0x10c], 0x3c
add ecx, dword [0x11d7258]
push ecx
imul edx, dword [ebp - 0x94], 0x3c
add edx, dword [0x11d7258]
push edx
call fcn.00625a30
add esp, 0x10
mov dword [ebp - 4], eax
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov eax, dword [0x254dc8c]
mov dword [ebp - 0x1c4], eax
mov ecx, 0x20
imul edx, ecx, 0
add edx, dword [0x254dc74]
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x98], 0
jmp 0x5b7a63
mov eax, dword [ebp - 0x98]
add eax, 1
mov dword [ebp - 0x98], eax
mov ecx, dword [ebp - 0x98]
cmp ecx, dword [ebp - 0x1c4]
jge 0x5b7ad4
mov edx, dword [ebp - 0x4c]
movzx eax, byte [edx + 2]
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 2]
cmp eax, edx
jne 0x5b7ac9
mov eax, dword [ebp - 0x4c]
movzx ecx, byte [eax + 0x1a]
cmp ecx, 3
jne 0x5b7ac9
mov edx, dword [ebp - 0x4c]
movzx eax, word [edx + 0x1c]
test eax, eax
je 0x5b7ac9
mov ecx, dword [ebp - 0x4c]
movzx edx, word [ecx + 0x1c]
imul eax, edx, 0x3c
add eax, dword [0x11d7258]
push eax
call fcn.0062a860
add esp, 4
test eax, eax
jne 0x5b7ac2
mov dword [ebp - 4], 0
jmp 0x5b7ad4
mov dword [ebp - 4], 1
mov ecx, dword [ebp - 0x4c]
add ecx, 0x20
mov dword [ebp - 0x4c], ecx
jmp 0x5b7a54
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
push eax
call fcn.005b9e50
add esp, 4
movzx ecx, ax
mov dword [ebp - 0x110], ecx
cmp dword [ebp - 0x110], 0
je 0x5b7b40
imul edx, dword [ebp - 0x110], 0x3c
add edx, dword [0x11d7258]
mov dword [ebp - 0x114], edx
mov eax, dword [ebp - 0x114]
mov ecx, dword [eax + 0x24]
movsx edx, word [ecx + 0xc]
cmp edx, 0xa
jl 0x5b7b40
mov eax, dword [ebp - 0x114]
mov ecx, dword [eax + 0x24]
movsx edx, word [ecx + 0xc]
cmp edx, 0x64
jg 0x5b7b40
mov dword [ebp - 4], 1
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
cmp ecx, 2
jne 0x5b7b7c
mov edx, 4
imul eax, edx, 0
mov ecx, dword [0x11d756c]
mov edx, dword [ecx + eax]
mov eax, dword [edx + 4]
and eax, 0x2000
je 0x5b7b7a
mov dword [ebp - 4], 1
jmp 0x5b7ba9
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
push edx
mov eax, 4
imul ecx, eax, 0
mov edx, dword [0x11d756c]
mov eax, dword [edx + ecx]
push eax
call fcn.00652f40
add esp, 8
test eax, eax
je 0x5b7ba9
mov dword [ebp - 4], 1
jmp 0x5b8c5c
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
test edx, edx
je 0x5b7c93
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
cmp ecx, 1
jl 0x5b7bdd
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
mov ecx, dword [0x254dc8c]
sub ecx, 1
cmp eax, ecx
jle 0x5b7bf4
push 0xb9f
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
shl eax, 5
mov ecx, dword [0x254dc74]
movzx edx, byte [ecx + eax + 0x1a]
cmp edx, 3
jne 0x5b7c93
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
shl ecx, 5
add ecx, dword [0x254dc74]
mov dword [ebp - 0x7c], ecx
mov edx, dword [ebp - 0x7c]
movzx eax, word [edx + 0x1c]
test eax, eax
je 0x5b7c93
mov ecx, dword [ebp - 0x7c]
movzx edx, word [ecx + 0x1c]
imul eax, edx, 0x3c
mov ecx, dword [0x11d7258]
movzx edx, byte [ecx + eax]
cmp edx, 5
je 0x5b7c60
push 0xbad
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov eax, dword [ebp - 0x7c]
movzx ecx, word [eax + 0x1c]
imul edx, ecx, 0x3c
mov eax, dword [0x11d7258]
mov ecx, dword [eax + edx + 0x24]
mov edx, dword [ecx + 4]
or edx, 0x100
mov eax, dword [ebp - 0x7c]
movzx ecx, word [eax + 0x1c]
imul eax, ecx, 0x3c
mov ecx, dword [0x11d7258]
mov eax, dword [ecx + eax + 0x24]
mov dword [eax + 4], edx
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 0x16]
cmp edx, 1
jne 0x5b7cd1
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 4]
and ecx, 1
je 0x5b7cbe
mov dword [ebp - 0x118], 1
jmp 0x5b7cc8
mov dword [ebp - 0x118], 0
mov edx, dword [ebp - 0x118]
mov dword [ebp - 4], edx
jmp 0x5b8c5c
mov eax, 4
imul ecx, eax, 0
mov edx, dword [0x11d756c]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x80], eax
cmp dword [ebp - 0x80], 0
je 0x5b7e28
mov ecx, dword [ebp - 0x80]
mov edx, dword [ecx + 0x10]
sar edx, 8
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 8]
sub ecx, edx
mov dword [ebp - 0x1c8], ecx
mov edx, dword [ebp - 0x1c8]
push edx
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x80]
mov ecx, dword [eax + 0x14]
sar ecx, 8
mov edx, dword [ebp + 8]
movsx eax, word [edx + 0xa]
sub eax, ecx
mov dword [ebp - 0x1cc], eax
mov ecx, dword [ebp - 0x1cc]
push ecx
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x20], eax
mov edx, dword [ebp - 0x80]
mov eax, dword [edx + 0x18]
sar eax, 8
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 0xc]
sub edx, eax
mov dword [ebp - 0x1d0], edx
mov eax, dword [ebp - 0x1d0]
push eax
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x18]
cmp ecx, dword [ebp - 0x20]
jle 0x5b7dc0
mov edx, dword [ebp - 0x18]
cmp edx, dword [ebp - 0x1c]
jle 0x5b7d9b
mov eax, dword [ebp - 0x20]
sar eax, 2
add eax, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
sar ecx, 2
add eax, ecx
mov dword [ebp - 0x11c], eax
jmp 0x5b7db2
mov edx, dword [ebp - 0x18]
sar edx, 2
add edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
sar eax, 2
add edx, eax
mov dword [ebp - 0x11c], edx
mov ecx, dword [ebp - 0x11c]
mov dword [ebp - 0x124], ecx
jmp 0x5b7e04
mov edx, dword [ebp - 0x20]
cmp edx, dword [ebp - 0x1c]
jle 0x5b7de1
mov eax, dword [ebp - 0x18]
sar eax, 2
add eax, dword [ebp - 0x20]
mov ecx, dword [ebp - 0x1c]
sar ecx, 2
add eax, ecx
mov dword [ebp - 0x120], eax
jmp 0x5b7df8
mov edx, dword [ebp - 0x18]
sar edx, 2
add edx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
sar eax, 2
add edx, eax
mov dword [ebp - 0x120], edx
mov ecx, dword [ebp - 0x120]
mov dword [ebp - 0x124], ecx
mov edx, dword [ebp - 0x124]
mov dword [ebp - 0x1d4], edx
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
cmp dword [ebp - 0x1d4], ecx
jge 0x5b7e28
mov edx, dword [ebp + 8]
mov dword [0x254dca8], edx
mov dword [ebp - 4], 0
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
test ecx, ecx
je 0x5b7e99
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
cmp eax, 1
jl 0x5b7e65
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
mov eax, dword [0x25eca60]
sub eax, 1
cmp edx, eax
jle 0x5b7e7c
push 0xbdd
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
mov eax, dword [0x25eca5c]
movzx ecx, byte [eax + edx*8 + 6]
and ecx, 8
je 0x5b7e99
mov dword [ebp - 4], 1
jmp 0x5b8c5c
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
cmp eax, 1
jl 0x5b7ebd
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
mov eax, dword [0x254dc8c]
sub eax, 1
cmp edx, eax
jle 0x5b7ed4
push 0xbe9
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
shl edx, 5
mov eax, dword [0x254dc74]
movzx ecx, byte [eax + edx + 4]
and ecx, 0x20
je 0x5b7efb
mov dword [ebp - 4], 1
jmp 0x5b8c5c
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
test eax, eax
jl 0x5b7f17
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
cmp edx, 9
jle 0x5b7f2e
push 0xbf6
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov dword [ebp - 4], 0
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
mov edx, dword [0x254dcc8]
movzx eax, byte [edx + ecx]
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 4]
cmp eax, edx
jl 0x5b7f58
mov dword [ebp - 4], 1
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
test ecx, ecx
jne 0x5b7f84
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 4]
or eax, 4
mov ecx, dword [ebp + 8]
mov byte [ecx + 4], al
jmp 0x5b80a2
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
cmp eax, 1
jl 0x5b7fa3
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
mov eax, dword [0x254dc8c]
sub eax, 1
cmp edx, eax
jle 0x5b7fba
push 0xc16
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
shl edx, 5
mov eax, dword [0x254dc74]
movzx ecx, byte [eax + edx + 0x1a]
cmp ecx, 3
je 0x5b8004
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
shl eax, 5
mov ecx, dword [0x254dc74]
movzx edx, byte [ecx + eax + 0x1a]
cmp edx, 1
je 0x5b8004
push 0xc19
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
shl ecx, 5
mov edx, dword [0x254dc74]
mov ax, word [edx + ecx + 0x1c]
mov word [ebp - 0x64], ax
movzx ecx, word [ebp - 0x64]
test ecx, ecx
je 0x5b80a2
movzx edx, word [ebp - 0x64]
imul eax, edx, 0x3c
add eax, dword [0x11d7258]
mov dword [ebp - 0x9c], eax
mov ecx, dword [ebp - 0x9c]
movzx edx, byte [ecx]
cmp edx, 5
je 0x5b805d
push 0xc21
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov eax, dword [ebp - 0x9c]
mov ecx, dword [eax + 0x24]
mov edx, dword [ecx + 4]
and edx, 0x4000000
je 0x5b808f
mov eax, dword [ebp - 0x9c]
movzx ecx, byte [eax + 3]
cmp ecx, 0xac
jne 0x5b808f
mov dword [ebp - 0x128], 1
jmp 0x5b8099
mov dword [ebp - 0x128], 0
mov edx, dword [ebp - 0x128]
mov dword [ebp - 4], edx
jmp 0x5b8c5c
mov eax, dword [ebp + 8]
sub eax, dword [0x254dc74]
sar eax, 5
cmp eax, 0x7c
jne 0x5b80cf
movzx ecx, byte [0x25590d2]
test ecx, ecx
je 0x5b80cf
mov dword [ebp - 4], 0
jmp 0x5b81ac
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
mov dword [ebp - 0x12c], eax
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 4]
mov dword [ebp - 0x130], edx
mov eax, 4
imul ecx, eax, 0
mov edx, dword [0x11d756c]
mov eax, dword [edx + ecx]
mov dword [ebp - 0x84], eax
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 8]
sub edx, dword [ebp - 0x12c]
mov dword [ebp - 0x1d8], edx
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 8]
add ecx, dword [ebp - 0x12c]
mov dword [ebp - 0x1dc], ecx
mov edx, dword [ebp + 8]
movzx eax, word [edx + 0xc]
sub eax, dword [ebp - 0x130]
mov dword [ebp - 0x1e0], eax
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 0xc]
add edx, dword [ebp - 0x130]
mov dword [ebp - 0x1e4], edx
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax + 0x10]
sar ecx, 8
cmp ecx, dword [ebp - 0x1d8]
jl 0x5b81a5
mov edx, dword [ebp - 0x84]
mov eax, dword [edx + 0x10]
sar eax, 8
cmp eax, dword [ebp - 0x1dc]
jg 0x5b81a5
mov ecx, dword [ebp - 0x84]
mov edx, dword [ecx + 0x18]
sar edx, 8
cmp edx, dword [ebp - 0x1e0]
jl 0x5b81a5
mov eax, dword [ebp - 0x84]
mov ecx, dword [eax + 0x18]
sar ecx, 8
cmp ecx, dword [ebp - 0x1e4]
jg 0x5b81a5
mov dword [ebp - 4], 1
jmp 0x5b81ac
mov dword [ebp - 4], 0
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
mov dword [ebp - 0x134], eax
cmp dword [ebp - 0x134], 0
jne 0x5b8212
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
push edx
push str.Waypoint__d:_cond_person_dead_has_NULL_dependency
lea eax, [ebp - 0x3ac]
push eax
call fcn.0041e320
add esp, 0xc
push 0x1f40
lea ecx, [ebp - 0x3ac]
push ecx
call fcn.00421ed0
add esp, 8
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 4]
or eax, 4
mov ecx, dword [ebp + 8]
mov byte [ecx + 4], al
jmp 0x5b8306
mov edx, dword [ebp - 0x134]
shl edx, 5
add edx, dword [0x254dc74]
mov dword [ebp - 0x13c], edx
mov eax, dword [ebp - 0x13c]
mov cl, byte [eax + 0x1a]
mov byte [ebp - 0x138], cl
cmp byte [ebp - 0x138], 1
je 0x5b824a
cmp byte [ebp - 0x138], 3
je 0x5b824a
jmp 0x5b82c7
mov edx, dword [ebp - 0x13c]
movzx eax, word [edx + 0x1c]
mov dword [ebp - 0x140], eax
cmp dword [ebp - 0x140], 0
je 0x5b82c5
imul ecx, dword [ebp - 0x140], 0x3c
add ecx, dword [0x11d7258]
mov dword [ebp - 0xa0], ecx
mov edx, dword [ebp - 0xa0]
movzx eax, byte [edx]
cmp eax, 5
je 0x5b829b
push 0xc7e
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov ecx, dword [ebp - 0xa0]
movzx edx, byte [ecx + 1]
cmp edx, 0x11
jne 0x5b82c5
mov eax, dword [ebp - 0xa0]
mov ecx, dword [eax + 0x24]
mov edx, dword [ecx + 4]
and edx, 0x4000000
jne 0x5b82c5
mov dword [ebp - 4], 1
jmp 0x5b8306
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
push ecx
push str.Waypoint__d:_killed_not_arrested_dependent_on_odd_waypoint
lea edx, [ebp - 0x42c]
push edx
call fcn.0041e320
add esp, 0xc
push 0x1f40
lea eax, [ebp - 0x42c]
push eax
call fcn.00421ed0
add esp, 8
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 4]
or edx, 4
mov eax, dword [ebp + 8]
mov byte [eax + 4], dl
jmp 0x5b8c5c
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
cmp dword [0x11d7620], edx
jl 0x5b8326
mov dword [ebp - 0x144], 1
jmp 0x5b8330
mov dword [ebp - 0x144], 0
mov eax, dword [ebp - 0x144]
mov dword [ebp - 4], eax
jmp 0x5b8c5c
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
cmp dword [0x11d7620], edx
jg 0x5b8359
mov dword [ebp - 0x148], 1
jmp 0x5b8363
mov dword [ebp - 0x148], 0
mov eax, dword [ebp - 0x148]
mov dword [ebp - 4], eax
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
push edx
call fcn.005b9e50
add esp, 4
mov word [ebp - 0x50], ax
movzx eax, word [ebp - 0x50]
test eax, eax
je 0x5b83c0
movzx ecx, word [ebp - 0x50]
imul edx, ecx, 0x3c
add edx, dword [0x11d7258]
mov dword [ebp - 0x1e8], edx
mov eax, dword [ebp - 0x1e8]
mov ecx, dword [eax + 0x24]
movzx edx, byte [ecx + 0x7e]
and edx, 0x10
je 0x5b83c0
mov dword [ebp - 4], 1
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
push ecx
call fcn.005b9e50
add esp, 4
mov word [ebp - 0x54], ax
movzx edx, word [ebp - 0x54]
test edx, edx
je 0x5b84e7
movzx eax, word [ebp - 0x54]
imul ecx, eax, 0x3c
add ecx, dword [0x11d7258]
mov dword [ebp - 0xa4], ecx
mov edx, dword [ebp - 0xa4]
movzx eax, byte [edx]
cmp eax, 5
je 0x5b8424
push 0xccb
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov ecx, dword [ebp - 0xa4]
mov edx, dword [ecx + 0x24]
mov eax, dword [edx + 4]
and eax, 0x80010
je 0x5b84e7
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 4]
test edx, edx
je 0x5b84e0
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 4]
cmp ecx, 1
jl 0x5b846a
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 4]
mov ecx, dword [0x254dc8c]
sub ecx, 1
cmp eax, ecx
jle 0x5b8481
push 0xcd5
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 4]
shl eax, 5
mov ecx, dword [0x254dc74]
movzx edx, byte [ecx + eax + 0x1a]
cmp edx, 5
je 0x5b84b2
push 0xcd6
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov eax, dword [ebp - 0xa4]
mov ecx, dword [eax + 0x24]
movzx edx, word [ecx + 0x14]
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 4]
shl ecx, 5
mov eax, dword [0x254dc74]
movzx ecx, word [eax + ecx + 0x1c]
cmp edx, ecx
jne 0x5b84de
mov dword [ebp - 4], 1
jmp 0x5b84e7
mov dword [ebp - 4], 1
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
push eax
call fcn.005b9e50
add esp, 4
mov word [ebp - 0x58], ax
movzx ecx, word [ebp - 0x58]
test ecx, ecx
jne 0x5b8514
jmp 0x5b879e
movzx edx, word [ebp - 0x58]
imul eax, edx, 0x3c
add eax, dword [0x11d7258]
mov dword [ebp - 0xc], eax
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 4]
shl edx, 6
mov dword [ebp - 0x1fc], edx
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 8]
mov edx, dword [ebp - 0xc]
mov eax, dword [edx + 0x10]
sar eax, 8
sub eax, ecx
mov dword [ebp - 0x1ec], eax
mov ecx, dword [ebp - 0x1ec]
push ecx
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x24], eax
mov edx, dword [ebp + 8]
movsx eax, word [edx + 0xa]
mov ecx, dword [ebp - 0xc]
mov edx, dword [ecx + 0x14]
sar edx, 8
sub edx, eax
mov dword [ebp - 0x1f0], edx
mov eax, dword [ebp - 0x1f0]
push eax
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 0xc]
mov eax, dword [ebp - 0xc]
mov ecx, dword [eax + 0x18]
sar ecx, 8
sub ecx, edx
mov dword [ebp - 0x1f4], ecx
mov edx, dword [ebp - 0x1f4]
push edx
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x48]
jle 0x5b8600
mov ecx, dword [ebp - 0x24]
cmp ecx, dword [ebp - 0x2c]
jle 0x5b85db
mov edx, dword [ebp - 0x48]
sar edx, 2
add edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x2c]
sar eax, 2
add edx, eax
mov dword [ebp - 0x14c], edx
jmp 0x5b85f2
mov ecx, dword [ebp - 0x24]
sar ecx, 2
add ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x48]
sar edx, 2
add ecx, edx
mov dword [ebp - 0x14c], ecx
mov eax, dword [ebp - 0x14c]
mov dword [ebp - 0x154], eax
jmp 0x5b8644
mov ecx, dword [ebp - 0x48]
cmp ecx, dword [ebp - 0x2c]
jle 0x5b8621
mov edx, dword [ebp - 0x24]
sar edx, 2
add edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x2c]
sar eax, 2
add edx, eax
mov dword [ebp - 0x150], edx
jmp 0x5b8638
mov ecx, dword [ebp - 0x24]
sar ecx, 2
add ecx, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x48]
sar edx, 2
add ecx, edx
mov dword [ebp - 0x150], ecx
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x154], eax
mov ecx, dword [ebp - 0x154]
mov dword [ebp - 0x1f8], ecx
mov edx, dword [ebp - 0x1f8]
cmp edx, dword [ebp - 0x1fc]
jge 0x5b879e
mov eax, dword [ebp - 0xc]
mov cl, byte [eax]
mov byte [ebp - 0xa8], cl
cmp byte [ebp - 0xa8], 5
je 0x5b868a
cmp byte [ebp - 0xa8], 9
je 0x5b86a9
cmp byte [ebp - 0xa8], 0x11
je 0x5b86c7
jmp 0x5b86ed
mov edx, dword [ebp - 0xc]
mov eax, dword [edx + 0x20]
movsx ecx, word [eax + 4]
mov dword [ebp - 0xb0], ecx
mov edx, dword [ebp - 0xc]
movsx eax, word [edx + 0x2a]
mov dword [ebp - 0xac], eax
jmp 0x5b870d
mov ecx, dword [ebp - 0xc]
mov edx, dword [ecx + 0x24]
mov eax, dword [edx + 0x54]
mov dword [ebp - 0xb0], eax
mov ecx, dword [ebp - 0xc]
movsx edx, word [ecx + 0x2a]
mov dword [ebp - 0xac], edx
jmp 0x5b870d
mov eax, dword [ebp - 0xc]
mov ecx, dword [eax + 0x24]
movzx edx, word [ecx]
mov dword [ebp - 0xb0], edx
mov eax, dword [ebp - 0xc]
push eax
call fcn.005784b0
add esp, 4
sar eax, 4
mov dword [ebp - 0xac], eax
jmp 0x5b870d
mov ecx, 1
test ecx, ecx
je 0x5b870d
push 0xd22
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov edx, dword [ebp + 0xc]
movzx eax, byte [edx]
cmp eax, 0x28
je 0x5b874a
cmp dword [ebp - 0xac], 0x10
jge 0x5b872d
mov dword [ebp - 0x158], 1
jmp 0x5b8737
mov dword [ebp - 0x158], 0
mov ecx, dword [ebp - 0x158]
push ecx
call fcn.006b7d00
add esp, 4
test eax, eax
je 0x5b879e
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 5]
shl eax, 3
mov ecx, dword [ebp - 0xb0]
sub ecx, eax
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], 0x400
jle 0x5b8774
mov edx, dword [ebp - 0x14]
sub edx, 0x800
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x14], 0xfffffc00
jge 0x5b8788
mov eax, dword [ebp - 0x14]
add eax, 0x800
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xffffff80
jl 0x5b879e
cmp dword [ebp - 0x14], 0x80
jg 0x5b879e
mov dword [ebp - 4], 1
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
cmp edx, 1
jl 0x5b87ca
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
mov edx, dword [0x254dc8c]
sub edx, 1
cmp ecx, edx
jle 0x5b87e1
push 0xd43
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
shl ecx, 5
add ecx, dword [0x254dc74]
mov dword [ebp - 0xb4], ecx
mov edx, dword [ebp - 0xb4]
movzx eax, byte [edx + 0x1a]
cmp eax, 4
je 0x5b881d
push 0xd47
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov ecx, dword [ebp - 0xb4]
movzx edx, word [ecx + 0x1e]
test edx, edx
je 0x5b8841
mov eax, dword [ebp - 0xb4]
movzx ecx, byte [eax + 4]
and ecx, 0x10
je 0x5b8841
mov dword [ebp - 4], 1
jmp 0x5b8c5c
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
test eax, eax
jne 0x5b8887
mov ecx, dword [ebp + 8]
movzx edx, word [ecx]
push edx
push str.Waypoint__d_has_a_NULL_dependency
push 0x254dd68
call fcn.0041e320
add esp, 0xc
push 0x1f40
push 0x254dd68
call fcn.00421ed0
add esp, 8
mov eax, dword [ebp + 0xc]
mov byte [eax], 0
jmp 0x5b8a1b
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
cmp edx, 1
jl 0x5b88a7
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
mov edx, dword [0x254dc8c]
sub edx, 1
cmp ecx, edx
jle 0x5b88be
push 0xd6a
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
shl ecx, 5
mov edx, dword [0x254dc74]
movzx eax, byte [edx + ecx + 4]
and eax, 1
je 0x5b8a1b
mov dword [ebp - 0x10], 0
mov dword [ebp - 8], 1
jmp 0x5b88f5
mov ecx, dword [ebp - 8]
add ecx, 1
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 8]
cmp edx, dword [0x254dc8c]
jge 0x5b8972
mov eax, dword [ebp - 8]
shl eax, 5
mov ecx, dword [0x254dc74]
movzx edx, byte [ecx + eax + 0x10]
cmp edx, 0x23
jne 0x5b896d
mov eax, dword [ebp - 8]
shl eax, 5
mov ecx, dword [0x254dc74]
movzx edx, word [ecx + eax + 0x12]
mov eax, dword [ebp + 0xc]
movzx ecx, word [eax + 2]
cmp edx, ecx
jne 0x5b896d
cmp dword [ebp - 0x10], 0
jl 0x5b893e
cmp dword [ebp - 0x10], 7
jle 0x5b8955
push 0xd80
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov edx, dword [ebp - 0x10]
mov ax, word [ebp - 8]
mov word [ebp + edx*2 - 0x22c], ax
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
jmp 0x5b88ec
imul edx, dword [0x119f220], 0x10dcd
add edx, 1
mov dword [0x119f220], edx
mov eax, dword [0x119f220]
sar eax, 7
movzx eax, ax
mov ecx, dword [ebp - 0x10]
add ecx, 1
cdq
idiv ecx
mov dword [ebp - 0x15c], edx
mov edx, dword [ebp - 0x15c]
cmp edx, dword [ebp - 0x10]
jne 0x5b89ac
jmp 0x5b89cc
mov eax, dword [ebp - 0x15c]
movzx ecx, word [ebp + eax*2 - 0x22c]
shl ecx, 5
add ecx, dword [0x254dc74]
push ecx
call fcn.005bc260
add esp, 4
mov dword [ebp - 8], 0
jmp 0x5b89de
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x10]
jge 0x5b8a1b
mov ecx, dword [ebp - 8]
movzx edx, word [ebp + ecx*2 - 0x22c]
shl edx, 5
mov eax, dword [0x254dc74]
movzx ecx, byte [eax + edx + 4]
or ecx, 4
mov edx, dword [ebp - 8]
movzx eax, word [ebp + edx*2 - 0x22c]
shl eax, 5
mov edx, dword [0x254dc74]
mov byte [edx + eax + 4], cl
jmp 0x5b89d5
mov dword [ebp - 4], 0
jmp 0x5b8c5c
mov eax, dword [0x119f1d8]
and eax, 0x80
je 0x5b8a3f
mov dword [ebp - 0x160], 1
jmp 0x5b8a49
mov dword [ebp - 0x160], 0
mov ecx, dword [ebp - 0x160]
mov dword [ebp - 4], ecx
jmp 0x5b8c5c
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 4]
and eax, 8
je 0x5b8a6f
mov dword [ebp - 0x164], 1
jmp 0x5b8a79
mov dword [ebp - 0x164], 0
mov ecx, dword [ebp - 0x164]
mov dword [ebp - 4], ecx
jmp 0x5b8c5c
mov edx, 4
imul eax, edx, 0
mov ecx, dword [0x11d756c]
mov edx, dword [ecx + eax]
movzx eax, byte [edx + 1]
cmp eax, 9
jne 0x5b8ac6
mov ecx, 4
imul edx, ecx, 0
mov eax, dword [0x11d756c]
mov ecx, dword [eax + edx]
movzx edx, byte [ecx + 3]
cmp edx, 0x62
jne 0x5b8ac6
mov dword [ebp - 0x168], 1
jmp 0x5b8ad0
mov dword [ebp - 0x168], 0
mov eax, dword [ebp - 0x168]
mov dword [ebp - 4], eax
jmp 0x5b8c5c
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
test edx, edx
jne 0x5b8b10
mov eax, dword [ebp + 8]
movzx ecx, word [eax]
push ecx
push str.Waypoint__d_has_NULL_dependency
push 0x1f40
push 0
call fcn.00467c40
add esp, 0x10
jmp 0x5b8c10
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 2]
cmp eax, 1
jl 0x5b8b2f
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
mov eax, dword [0x254dc8c]
sub eax, 1
cmp edx, eax
jle 0x5b8b46
push 0xdc2
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 2]
shl edx, 5
mov eax, dword [0x254dc74]
movzx ecx, byte [eax + edx + 4]
and ecx, 1
je 0x5b8c10
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 4]
and eax, 0x40
je 0x5b8bf9
movzx ecx, byte [0x254dc9c]
and ecx, 1
je 0x5b8ba0
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 4]
add eax, 1
mov ecx, dword [ebp + 0xc]
mov word [ecx + 4], ax
movzx edx, byte [0x254dc9c]
and edx, 0xfffffffe
mov byte [0x254dc9c], dl
movzx eax, byte [0x254dc9c]
and eax, 2
je 0x5b8bd0
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 4]
add edx, 0x100
mov eax, dword [ebp + 0xc]
mov word [eax + 4], dx
movzx ecx, byte [0x254dc9c]
and ecx, 0xfffffffd
mov byte [0x254dc9c], cl
mov edx, dword [ebp + 0xc]
movzx eax, word [edx + 4]
and eax, 0xff
cmp eax, 2
jl 0x5b8bf7
mov ecx, dword [ebp + 0xc]
movzx edx, word [ecx + 4]
sar edx, 8
cmp edx, 2
jl 0x5b8bf7
mov dword [ebp - 4], 1
jmp 0x5b8c10
mov byte [0x254dc9c], 0
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 4]
or ecx, 0x40
mov edx, dword [ebp + 8]
mov byte [edx + 4], cl
jmp 0x5b8c5c
cmp dword [0x119f1d4], 0
jle 0x5b8c27
mov dword [ebp - 0x16c], 1
jmp 0x5b8c31
mov dword [ebp - 0x16c], 0
mov eax, dword [ebp - 0x16c]
mov dword [ebp - 4], eax
jmp 0x5b8c5c
mov ecx, 1
test ecx, ecx
je 0x5b8c5c
push 0xdf0
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceeway.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov edx, dword [ebp + 0xc]
movzx eax, byte [edx + 1]
test eax, eax
je 0x5b8c8c
cmp dword [ebp - 4], 0
jne 0x5b8c79
mov dword [ebp - 0x170], 1
jmp 0x5b8c83
mov dword [ebp - 0x170], 0
mov ecx, dword [ebp - 0x170]
mov dword [ebp - 4], ecx
cmp dword [ebp + 0x10], 0
je 0x5b8c9a
mov eax, dword [ebp - 4]
jmp 0x5b8fd1
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 0x1a]
cmp eax, 0x1c
je 0x5b8cbe
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 0x1a]
cmp edx, 0x33
je 0x5b8cbe
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 0x1a]
cmp ecx, 9
jne 0x5b8cce
cmp dword [0x119f1d4], 1
jge 0x5b8cce
mov dword [ebp - 4], 0
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 0x1a]
cmp eax, 9
jne 0x5b8df9
cmp dword [ebp - 4], 0
je 0x5b8df9
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 4]
and edx, 1
jne 0x5b8df9
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 0x1c]
test ecx, ecx
jl 0x5b8d0f
mov edx, dword [ebp + 8]
movzx eax, word [edx + 0x1c]
cmp eax, 0x7f
jle 0x5b8d14
jmp 0x5b8df9
movzx ecx, word [0x254dce4]
test ecx, ecx
je 0x5b8d49
call fcn.0049d500
test eax, eax
je 0x5b8d44
call fcn.005f75d0
test eax, eax
je 0x5b8d3d
call fcn.0049d550
call fcn.0049d570
jmp 0x5b8d44
mov dword [ebp - 4], 0
jmp 0x5b8df9
mov edx, dword [ebp + 8]
movzx eax, word [edx + 0x1e]
cmp eax, 0xffff
jne 0x5b8d5c
jmp 0x5b8df9
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 0x1e]
cmp edx, 0xfffe
jne 0x5b8d70
jmp 0x5b8df9
mov dword [ebp - 0xb8], 0
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 0x1e]
test ecx, ecx
je 0x5b8dba
mov edx, dword [ebp + 8]
movzx eax, word [edx + 0x1e]
push eax
call fcn.005b9e50
add esp, 4
movzx ecx, ax
mov dword [ebp - 0x174], ecx
cmp dword [ebp - 0x174], 0
je 0x5b8dba
imul edx, dword [ebp - 0x174], 0x3c
add edx, dword [0x11d7258]
mov dword [ebp - 0xb8], edx
cmp dword [ebp - 0xb8], 0
je 0x5b8dd4
mov eax, dword [ebp - 0xb8]
movzx ecx, byte [eax + 1]
cmp ecx, 0x11
jne 0x5b8dd4
jmp 0x5b8df9
call fcn.0049d500
test eax, eax
je 0x5b8df9
call fcn.005f75d0
test eax, eax
je 0x5b8df2
call fcn.0049d550
call fcn.0049d570
jmp 0x5b8df9
mov dword [ebp - 4], 0
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 0x1a]
cmp eax, 0xb
jne 0x5b8e24
cmp dword [ebp - 4], 0
je 0x5b8e24
call fcn.005be260
test eax, eax
je 0x5b8e24
cmp dword [0x254dcec], 0
jne 0x5b8e24
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 0x1a]
cmp edx, 0x1c
je 0x5b8e40
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 0x1a]
cmp ecx, 0x33
jne 0x5b8fce
cmp dword [ebp - 4], 0
je 0x5b8fce
mov edx, 4
imul eax, edx, 0
mov ecx, dword [0x11d756c]
mov edx, dword [ecx + eax]
mov dword [ebp - 0x200], edx
mov eax, dword [ebp - 0x200]
push eax
call fcn.0062cde0
add esp, 4
test eax, eax
jne 0x5b8e7b
mov dword [ebp - 4], 0
mov ecx, dword [ebp + 8]
movzx edx, word [ecx + 0x1c]
push edx
call fcn.005b9e50
add esp, 4
mov word [ebp - 0x5c], ax
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 0x1e]
push ecx
call fcn.005b9e50
add esp, 4
mov word [ebp - 0x60], ax
movzx edx, word [ebp - 0x5c]
test edx, edx
je 0x5b8eb3
movzx eax, word [ebp - 0x60]
test eax, eax
jne 0x5b8ebf
mov dword [ebp - 4], 0
jmp 0x5b8fce
movzx ecx, word [ebp - 0x5c]
imul edx, ecx, 0x3c
add edx, dword [0x11d7258]
mov dword [ebp - 0x88], edx
movzx eax, word [ebp - 0x60]
imul ecx, eax, 0x3c
add ecx, dword [0x11d7258]
mov dword [ebp - 0x8c], ecx
mov edx, dword [ebp - 0x88]
push edx
call fcn.0062cde0
add esp, 4
test eax, eax
je 0x5b8f0b
mov eax, dword [ebp - 0x8c]
push eax
call fcn.0062cde0
add esp, 4
test eax, eax
jne 0x5b8f17
mov dword [ebp - 4], 0
jmp 0x5b8fce
mov ecx, dword [ebp - 0x88]
mov edx, dword [ecx + 0x10]
sar edx, 8
mov dword [ebp - 0x218], edx
mov eax, dword [ebp - 0x88]
mov ecx, dword [eax + 0x14]
sar ecx, 8
add ecx, 0xa0
mov dword [ebp - 0x214], ecx
mov edx, dword [ebp - 0x88]
mov eax, dword [edx + 0x18]
sar eax, 8
mov dword [ebp - 0x210], eax
mov ecx, dword [ebp - 0x8c]
mov edx, dword [ecx + 0x10]
sar edx, 8
mov dword [ebp - 0x20c], edx
mov eax, dword [ebp - 0x8c]
mov ecx, dword [eax + 0x14]
sar ecx, 8
add ecx, 0xa0
mov dword [ebp - 0x208], ecx
mov edx, dword [ebp - 0x8c]
mov eax, dword [edx + 0x18]
sar eax, 8
mov dword [ebp - 0x204], eax
push 4
mov ecx, dword [ebp - 0x204]
push ecx
mov edx, dword [ebp - 0x208]
push edx
mov eax, dword [ebp - 0x20c]
push eax
mov ecx, dword [ebp - 0x210]
push ecx
mov edx, dword [ebp - 0x214]
push edx
mov eax, dword [ebp - 0x218]
push eax
call fcn.0059e550
add esp, 0x1c
test eax, eax
jne 0x5b8fce
mov dword [ebp - 4], 0
mov eax, dword [ebp - 4]
mov esp, ebp
pop ebp
ret