Function at 0x5969e0
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x7c
push esi
mov dword [ebp - 0xc], 0
mov eax, dword [ebp + 8]
push eax
call fcn.0062c1b0
add esp, 4
mov dword [ebp - 0x2c], eax
cmp dword [ebp - 0x2c], 2
je 0x596a09
cmp dword [ebp - 0x2c], 6
jne 0x596a12
mov dword [ebp - 0x30], 0x20
jmp 0x596a19
mov dword [ebp - 0x30], 0x6aaa0
mov ecx, dword [ebp - 0x30]
push ecx
push 0x10
push 0x2415dec
mov edx, dword [ebp + 0xc]
add edx, 0x1a0
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x18]
sar ecx, 8
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x14]
sar eax, 8
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x10]
sar edx, 8
push edx
call fcn.00661c00
add esp, 0x1c
mov byte [ebp - 2], al
movzx eax, byte [ebp - 2]
cmp eax, 0x10
jle 0x596a77
push 0x1730
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourcecollide.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov byte [ebp - 1], 0
jmp 0x596a86
mov cl, byte [ebp - 1]
add cl, 1
mov byte [ebp - 1], cl
movzx edx, byte [ebp - 1]
movzx eax, byte [ebp - 2]
cmp edx, eax
jge 0x597156
movzx ecx, byte [ebp - 1]
movzx edx, word [ecx*2 + 0x2415dec]
imul eax, edx, 0x3c
add eax, dword [0x11d7258]
mov dword [ebp - 8], eax
mov ecx, dword [ebp - 8]
movzx edx, byte [ecx + 1]
cmp edx, 0x11
je 0x596ac6
mov eax, dword [ebp - 8]
movzx ecx, byte [eax + 1]
cmp ecx, 0x10
jne 0x596ad5
mov edx, dword [ebp - 8]
movzx eax, byte [edx]
cmp eax, 9
jne 0x596ad3
jmp 0x596ad5
jmp 0x596a7d
mov ecx, dword [ebp - 8]
movzx edx, byte [ecx]
mov dword [ebp - 0x14], edx
mov eax, dword [ebp - 0x14]
sub eax, 5
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0xd
ja case.0x596afb.1
mov ecx, dword [ebp - 0x14]
movzx edx, byte [ecx + 0x59717c]
jmp dword [edx*4 + 0x597160]
mov eax, dword [ebp - 8]
cmp eax, dword [ebp + 8]
je 0x596c80
mov ecx, dword [ebp + 8]
movzx edx, byte [ecx + 3]
cmp edx, 0x11
jne 0x596b94
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x24]
movzx edx, byte [ecx + 0xb]
test edx, edx
je 0x596b31
mov dword [ebp - 0x34], 0x4200
jmp 0x596b38
mov dword [ebp - 0x34], 0x3200
mov eax, dword [ebp + 0x1c]
mov ecx, dword [eax]
mov dword [ebp - 0x50], ecx
mov edx, dword [ebp + 0x24]
mov eax, dword [edx]
mov dword [ebp - 0x4c], eax
lea ecx, [ebp - 0x4c]
push ecx
lea edx, [ebp - 0x50]
push edx
mov eax, dword [ebp + 0x18]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
mov edx, dword [ebp - 0x34]
push edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x18]
push ecx
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x10]
push eax
call fcn.0059e010
add esp, 0x1c
test eax, eax
je 0x596b8f
push 0
mov ecx, dword [ebp + 8]
push ecx
mov edx, dword [ebp - 8]
push edx
call fcn.00636840
add esp, 0xc
mov dword [ebp - 0xc], 1
jmp 0x596c80
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 3]
cmp ecx, 0x61
jne 0x596be3
mov edx, dword [ebp + 0x24]
push edx
mov eax, dword [ebp + 0x1c]
push eax
push 0x3200
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x18]
push edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x10]
push ecx
call fcn.005975a0
add esp, 0x14
test eax, eax
je 0x596bde
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x10]
mov dword [edx], eax
mov ecx, dword [ebp + 0x24]
mov edx, dword [ebp + 0x18]
mov dword [ecx], edx
mov dword [ebp - 0xc], 1
jmp 0x596c80
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x24]
movzx edx, byte [ecx + 0x45]
cmp edx, 1
jne 0x596c0b
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x24]
movzx edx, byte [ecx + 0x45]
cmp edx, 1
jne 0x596c0b
mov eax, dword [ebp - 8]
cmp eax, dword [ebp + 8]
jae 0x596c0b
jmp 0x596c80
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x24]
movzx eax, byte [edx + 0x46]
cmp eax, 8
jne 0x596c4a
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x24]
movzx ecx, word [edx + 0x4a]
mov edx, 0x3c
imul eax, edx, 0
add eax, dword [0x11d7258]
mov edx, dword [ebp + 8]
sub edx, eax
mov eax, edx
cdq
mov esi, 0x3c
idiv esi
movzx eax, ax
cmp ecx, eax
jne 0x596c4a
jmp 0x596c80
mov ecx, dword [ebp + 0x24]
push ecx
mov edx, dword [ebp + 0x1c]
push edx
mov eax, dword [ebp + 0x18]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
push 0x3200
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x18]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x10]
push edx
call fcn.0059e010
add esp, 0x1c
test eax, eax
je 0x596c80
mov dword [ebp - 0xc], 1
jmp 0x597151
push 0
push 0
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [ebp + 0x24]
push ecx
mov edx, dword [ebp + 0x20]
push edx
mov eax, dword [ebp + 0x1c]
push eax
mov ecx, dword [ebp + 0x18]
push ecx
mov edx, dword [ebp + 0x14]
push edx
mov eax, dword [ebp + 0x10]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x20]
movzx eax, word [edx]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x18]
sar edx, 8
push edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x14]
sar ecx, 8
push ecx
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x10]
sar eax, 8
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x20]
movzx eax, word [edx + 6]
push eax
call fcn.0063fac0
add esp, 0x38
test eax, eax
je 0x596ceb
mov dword [ebp - 0xc], 1
jmp 0x597151
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x24]
movzx ecx, word [edx + 0x14]
mov edx, 0x3c
imul eax, edx, 0
add eax, dword [0x11d7258]
mov edx, dword [ebp - 8]
sub edx, eax
mov eax, edx
cdq
mov esi, 0x3c
idiv esi
movzx eax, ax
cmp ecx, eax
jne 0x596d23
jmp 0x596e6e
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x24]
movzx eax, word [edx + 0x6e]
push eax
call fcn.0066e090
add esp, 4
movzx ecx, ax
mov dword [ebp - 0x38], ecx
push 0
push 0
mov edx, dword [ebp + 0xc]
push edx
mov eax, dword [ebp + 0x24]
push eax
mov ecx, dword [ebp + 0x20]
push ecx
mov edx, dword [ebp + 0x1c]
push edx
mov eax, dword [ebp + 0x18]
push eax
mov ecx, dword [ebp + 0x14]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x24]
mov edx, dword [ecx + 0x54]
push edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x18]
sar ecx, 8
push ecx
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x24]
movzx ecx, word [eax + 0x6e]
push ecx
call fcn.0066e050
add esp, 4
mov edx, dword [ebp - 8]
mov ecx, dword [edx + 0x14]
sub ecx, eax
sar ecx, 8
push ecx
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x10]
sar eax, 8
push eax
mov ecx, dword [ebp - 0x38]
push ecx
call fcn.0063fac0
add esp, 0x38
test eax, eax
je 0x596e6e
mov dword [ebp - 0xc], 1
cmp dword [ebp + 8], 0
je 0x596e6e
mov edx, dword [ebp + 8]
movzx eax, byte [edx]
cmp eax, 5
jne 0x596e6e
mov ecx, dword [ebp - 8]
movsx edx, word [ecx + 0x2a]
cmp edx, 0xc8
jle 0x596de1
jmp 0x596e6e
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x24]
movzx edx, byte [ecx + 0xb]
test edx, edx
jne 0x596e6e
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x20]
movsx edx, word [ecx + 4]
mov dword [ebp - 0x10], edx
mov eax, dword [ebp + 0x24]
mov ecx, dword [eax]
push ecx
mov edx, dword [ebp + 0x1c]
mov eax, dword [edx]
push eax
mov ecx, dword [ebp + 0x18]
push ecx
mov edx, dword [ebp + 0x10]
push edx
mov eax, dword [ebp - 0x38]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x24]
mov eax, dword [edx + 0x54]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x18]
sar edx, 8
push edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x14]
sar ecx, 8
push ecx
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x10]
sar eax, 8
push eax
call fcn.00606ee0
add esp, 0x24
mov dword [ebp - 0x54], eax
imul ecx, dword [ebp - 0x54], 0xa0
add ecx, dword [ebp - 0x10]
mov dword [ebp - 0x10], ecx
mov edx, dword [ebp - 0x10]
and edx, 0x7ff
mov dword [ebp - 0x10], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x20]
mov dx, word [ebp - 0x10]
mov word [ecx + 4], dx
jmp 0x597151
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x24]
mov dl, byte [ecx + 2]
mov byte [ebp - 0x3c], dl
cmp byte [ebp - 0x3c], 3
je 0x596e90
cmp byte [ebp - 0x3c], 0xa
je 0x596e90
jmp 0x596ff6
mov eax, dword [ebp + 8]
movzx ecx, byte [eax]
cmp ecx, 5
jne 0x596ff6
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x24]
mov ecx, dword [eax + 4]
and ecx, 8
jne 0x596ebf
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0x24]
movzx ecx, byte [eax + 0x44]
and ecx, 0x80
je 0x596ec4
jmp 0x596ff6
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x10]
sar eax, 8
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x10]
sar edx, 8
sub edx, eax
mov dword [ebp - 0x58], edx
mov eax, dword [ebp - 0x58]
push eax
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x18]
sar edx, 8
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x18]
sar ecx, 8
sub ecx, edx
mov dword [ebp - 0x5c], ecx
mov edx, dword [ebp - 0x5c]
push edx
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x1c]
jle 0x596f25
mov ecx, dword [ebp - 0x1c]
sar ecx, 1
add ecx, dword [ebp - 0x18]
mov dword [ebp - 0x40], ecx
jmp 0x596f30
mov edx, dword [ebp - 0x18]
sar edx, 1
add edx, dword [ebp - 0x1c]
mov dword [ebp - 0x40], edx
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x44], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x24]
movzx eax, byte [edx + 0x45]
cmp eax, 1
je 0x596f54
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x24]
movzx eax, byte [edx + 0x52]
cmp eax, 4
jne 0x596f85
cmp dword [ebp - 0x44], 0xc8
jge 0x596f85
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x18]
sar edx, 8
push edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x10]
sar ecx, 8
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00617ba0
add esp, 0xc
mov eax, dword [ebp - 0xc]
jmp 0x597159
cmp dword [ebp - 0x44], 0x64
jge 0x596ff6
lea eax, [ebp - 0x78]
push eax
lea ecx, [ebp - 0x20]
push ecx
lea edx, [ebp - 0x7c]
push edx
push 3
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x20]
mov edx, dword [ecx + 0x14]
push edx
mov eax, dword [ebp + 8]
push eax
call fcn.004dc610
add esp, 0x18
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0x14]
sar edx, 8
add edx, dword [ebp - 0x20]
mov dword [ebp - 0x20], edx
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x14]
sar ecx, 8
mov edx, dword [ebp - 0x20]
sub edx, ecx
mov dword [ebp - 0x60], edx
mov eax, dword [ebp - 0x60]
push eax
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x64], eax
cmp dword [ebp - 0x64], 0x50
jge 0x596ff6
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 4]
or edx, 0x4000
mov eax, dword [ebp + 8]
mov dword [eax + 4], edx
jmp 0x597151
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x14]
sub edx, dword [ebp + 0x14]
sar edx, 8
mov dword [ebp - 0x68], edx
mov eax, dword [ebp - 0x68]
push eax
call fcn.006b79e0
add esp, 4
cmp eax, 0x100
jge 0x59704f
mov ecx, dword [ebp + 0x24]
push ecx
mov edx, dword [ebp + 0x1c]
push edx
mov eax, dword [ebp + 0x18]
push eax
mov ecx, dword [ebp + 0x10]
push ecx
push 0x4000
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x18]
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x10]
push edx
call fcn.0059e010
add esp, 0x1c
mov dword [ebp - 0xc], 1
jmp 0x597151
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x24]
movzx edx, byte [ecx]
cmp edx, 3
jne 0x59712f
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x14]
sub ecx, dword [ebp + 0x14]
sar ecx, 8
mov dword [ebp - 0x6c], ecx
mov edx, dword [ebp - 0x6c]
push edx
call fcn.006b79e0
add esp, 4
cmp eax, 0x180
jge 0x59712f
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x10]
sub ecx, dword [ebp + 0x10]
sar ecx, 8
mov dword [ebp - 0x70], ecx
mov edx, dword [ebp - 0x70]
push edx
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x18]
sub ecx, dword [ebp + 0x18]
sar ecx, 8
mov dword [ebp - 0x74], ecx
mov edx, dword [ebp - 0x74]
push edx
call fcn.006b79e0
add esp, 4
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x24]
cmp eax, dword [ebp - 0x28]
jle 0x5970dd
mov ecx, dword [ebp - 0x28]
sar ecx, 1
add ecx, dword [ebp - 0x24]
mov dword [ebp - 0x48], ecx
jmp 0x5970e8
mov edx, dword [ebp - 0x24]
sar edx, 1
add edx, dword [ebp - 0x28]
mov dword [ebp - 0x48], edx
cmp dword [ebp - 0x48], 0x100
jge 0x59712f
mov eax, dword [ebp + 8]
movzx ecx, byte [eax + 1]
cmp ecx, 8
je 0x59712f
mov edx, dword [ebp + 8]
movzx eax, byte [edx + 1]
cmp eax, 0x12
je 0x59712f
mov ecx, dword [ebp - 8]
push ecx
mov edx, dword [ebp - 8]
mov eax, dword [edx + 0x18]
sar eax, 8
push eax
mov ecx, dword [ebp - 8]
mov edx, dword [ecx + 0x10]
sar edx, 8
push edx
push 0x32
mov eax, dword [ebp + 8]
push eax
call fcn.0062ac60
add esp, 0x14
jmp 0x597151
mov ecx, 1
test ecx, ecx
je 0x597151
push 0x18dd
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourcecollide.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
jmp 0x596a7d
mov eax, dword [ebp - 0xc]
pop esi
mov esp, ebp
pop ebp
ret