Function at 0x672d40
Capabilities:
Read file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd0
push esi
cmp dword [0x11d7650], 0
jne 0x672ec7
mov dword [ebp - 0x18], 0x254cce0
jmp 0x672d69
mov eax, dword [ebp - 0x18]
add eax, 1
mov dword [ebp - 0x18], eax
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx]
test edx, edx
je 0x672d75
jmp 0x672d60
mov eax, 1
imul ecx, eax, 0xfffffffd
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx + ecx]
cmp eax, 0x69
je 0x672db4
mov ecx, 1
imul edx, ecx, 0xfffffffd
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax + edx]
cmp ecx, 0x49
je 0x672db4
push 0xdd
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceware.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov edx, 1
imul eax, edx, 0xfffffffe
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx + eax]
cmp edx, 0x61
je 0x672df3
mov eax, 1
imul ecx, eax, 0xfffffffe
mov edx, dword [ebp - 0x18]
movsx eax, byte [edx + ecx]
cmp eax, 0x41
je 0x672df3
push 0xde
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceware.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov ecx, 1
imul edx, ecx, 0xffffffff
mov eax, dword [ebp - 0x18]
movsx ecx, byte [eax + edx]
cmp ecx, 0x6d
je 0x672e32
mov edx, 1
imul eax, edx, 0xffffffff
mov ecx, dword [ebp - 0x18]
movsx edx, byte [ecx + eax]
cmp edx, 0x4d
je 0x672e32
push 0xdf
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceware.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov eax, 1
imul ecx, eax, 0xfffffffd
mov edx, dword [ebp - 0x18]
mov byte [edx + ecx], 0x6d
mov eax, 1
imul ecx, eax, 0xfffffffe
mov edx, dword [ebp - 0x18]
mov byte [edx + ecx], 0x61
mov eax, 1
imul ecx, eax, 0xffffffff
mov edx, dword [ebp - 0x18]
mov byte [edx + ecx], 0x70
push 0x716764
push 0x254cce0
call fcn.00401720
add esp, 8
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0
jne 0x672e90
push 0x8000
push 0
push 0x2802580
call fcn.0067d630
add esp, 0xc
jmp 0x672ec7
push 0
push 0x30004
mov eax, dword [ebp - 0x54]
push eax
call fcn.006cef50
add esp, 0xc
mov ecx, dword [ebp - 0x54]
push ecx
push 0x4000
push 2
push 0x2802580
call fcn.006b7750
add esp, 0x10
mov edx, dword [ebp - 0x54]
push edx
call fcn.00401700
add esp, 4
mov byte [0x2802566], 0
push 1
call fcn.005e7620
add esp, 4
push 0x400
push 0
mov eax, dword [0x2802560]
push eax
call fcn.0067d630
add esp, 0xc
mov ecx, 1
mov word [0x2802564], cx
push 0x2000
push 0
mov edx, dword [0x2802568]
push edx
call fcn.0067d630
add esp, 0xc
xor eax, eax
mov word [0x280256c], ax
push 0x2000
push 0
mov ecx, dword [0x2802570]
push ecx
call fcn.0067d630
add esp, 0xc
xor edx, edx
mov word [0x2802574], dx
push 0x2000
push 0
mov eax, dword [0x2802578]
push eax
call fcn.0067d630
add esp, 0xc
xor ecx, ecx
mov word [0x280257c], cx
mov dword [ebp - 0xc], 0
jmp 0x672f66
mov edx, dword [ebp - 0xc]
add edx, 1
mov dword [ebp - 0xc], edx
cmp dword [ebp - 0xc], 0x20
jge 0x672fc2
mov dword [ebp - 8], 0
jmp 0x672f7e
mov eax, dword [ebp - 8]
add eax, 1
mov dword [ebp - 8], eax
cmp dword [ebp - 8], 0x20
jge 0x672fc0
mov ecx, dword [ebp - 8]
push ecx
mov edx, dword [ebp - 0xc]
push edx
call fcn.0060a000
add esp, 8
mov eax, dword [ebp - 0xc]
shl eax, 8
add eax, dword [0x25ecd90]
mov ecx, dword [ebp - 8]
movzx edx, byte [eax + ecx*8 + 7]
and edx, 0xfffffffe
mov eax, dword [ebp - 0xc]
shl eax, 8
add eax, dword [0x25ecd90]
mov ecx, dword [ebp - 8]
mov byte [eax + ecx*8 + 7], dl
jmp 0x672f75
jmp 0x672f5d
mov dword [ebp - 0x10], 1
jmp 0x672fd4
mov edx, dword [ebp - 0x10]
add edx, 1
mov dword [ebp - 0x10], edx
mov eax, dword [ebp - 0x10]
cmp eax, dword [0x774404]
jge 0x67358c
imul ecx, dword [ebp - 0x10], 0x18
add ecx, dword [0x2596b94]
mov dword [ebp - 0x4c], ecx
mov edx, dword [ebp - 0x4c]
movzx eax, byte [edx + 0x17]
cmp eax, 1
je 0x672ffe
jmp 0x672fcb
movzx ecx, word [0x2802564]
cmp ecx, 1
jl 0x673016
movzx edx, word [0x2802564]
cmp edx, 0x1f
jle 0x67301b
jmp 0x673a30
movzx eax, word [0x2802564]
shl eax, 5
add eax, dword [0x2802560]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
mov dx, word [ebp - 0x10]
mov word [ecx + 0x18], dx
mov eax, dword [ebp - 0x4c]
mov cl, byte [0x2802564]
mov byte [eax + 0x16], cl
lea edx, [ebp - 0x5c]
push edx
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebp - 0x60]
push ecx
lea edx, [ebp - 0x74]
push edx
mov eax, dword [ebp - 0x10]
push eax
call fcn.006723c0
add esp, 0x14
mov ecx, dword [ebp - 4]
mov dl, byte [ebp - 0x74]
mov byte [ecx + 0x11], dl
mov eax, dword [ebp - 4]
mov cl, byte [ebp - 0x60]
mov byte [eax + 0x12], cl
mov edx, dword [ebp - 0x70]
sub edx, 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x13], dl
mov ecx, dword [ebp - 0x5c]
sub ecx, 1
mov edx, dword [ebp - 4]
mov byte [edx + 0x14], cl
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0xc], eax
jmp 0x67309c
mov ecx, dword [ebp - 0xc]
add ecx, 1
mov dword [ebp - 0xc], ecx
mov edx, dword [ebp - 0xc]
cmp edx, dword [ebp - 0x70]
jge 0x673142
mov eax, dword [ebp - 0x60]
mov dword [ebp - 8], eax
jmp 0x6730b9
mov ecx, dword [ebp - 8]
add ecx, 1
mov dword [ebp - 8], ecx
mov edx, dword [ebp - 8]
cmp edx, dword [ebp - 0x5c]
jge 0x67313d
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebp - 0xc]
push ecx
call fcn.00609fd0
add esp, 8
imul edx, dword [ebp - 0xc], 0x300
add edx, dword [0x25ecd94]
imul eax, dword [ebp - 8], 6
movzx ecx, word [edx + eax + 2]
and ecx, 0x10
je 0x673138
mov edx, dword [ebp - 8]
sar edx, 2
push edx
mov eax, dword [ebp - 0xc]
sar eax, 2
push eax
call fcn.0060a000
add esp, 8
mov ecx, dword [ebp - 0xc]
sar ecx, 2
shl ecx, 8
add ecx, dword [0x25ecd90]
mov edx, dword [ebp - 8]
sar edx, 2
movzx eax, byte [ecx + edx*8 + 7]
or eax, 1
mov ecx, dword [ebp - 8]
sar ecx, 2
mov edx, dword [ebp - 0xc]
sar edx, 2
shl edx, 8
add edx, dword [0x25ecd90]
mov byte [edx + ecx*8 + 7], al
jmp 0x6730b0
jmp 0x673093
mov eax, dword [ebp - 4]
mov byte [eax + 0x10], 0
mov ecx, dword [ebp - 0x4c]
movzx edx, word [ecx + 0xc]
mov dword [ebp - 0x58], edx
jmp 0x67315e
mov eax, dword [ebp - 0x58]
add eax, 1
mov dword [ebp - 0x58], eax
mov ecx, dword [ebp - 0x4c]
movzx edx, word [ecx + 0xe]
cmp dword [ebp - 0x58], edx
jge 0x67328d
imul eax, dword [ebp - 0x58], 0x1a
add eax, dword [0x2596b98]
mov dword [ebp - 0x40], eax
mov ecx, dword [ebp - 0x40]
movzx edx, byte [ecx]
cmp edx, 0x12
jne 0x673288
mov eax, 1
imul ecx, eax, 0
mov edx, dword [ebp - 0x40]
movzx eax, byte [edx + ecx + 2]
shl eax, 8
mov dword [ebp - 0x1c], eax
mov ecx, 1
imul edx, ecx, 0
mov eax, dword [ebp - 0x40]
movzx ecx, byte [eax + edx + 8]
shl ecx, 8
mov dword [ebp - 0x20], ecx
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x40]
movzx ecx, byte [eax + edx + 2]
shl ecx, 8
mov dword [ebp - 0x24], ecx
mov edx, 1
shl edx, 0
mov eax, dword [ebp - 0x40]
movzx ecx, byte [eax + edx + 8]
shl ecx, 8
mov dword [ebp - 0x28], ecx
mov edx, dword [ebp - 0x24]
sub edx, dword [ebp - 0x1c]
sar edx, 1
mov dword [ebp - 0x2c], edx
mov eax, dword [ebp - 0x28]
sub eax, dword [ebp - 0x20]
sar eax, 1
mov dword [ebp - 0x30], eax
mov ecx, dword [ebp - 4]
movzx edx, byte [ecx + 0x10]
test edx, edx
jl 0x67320f
mov eax, dword [ebp - 4]
movzx ecx, byte [eax + 0x10]
cmp ecx, 3
jle 0x673211
jmp 0x67328d
mov edx, dword [ebp - 0x1c]
add edx, dword [ebp - 0x2c]
add edx, dword [ebp - 0x30]
sar edx, 8
mov eax, dword [ebp - 4]
movzx ecx, byte [eax + 0x10]
mov eax, dword [ebp - 4]
mov byte [eax + ecx*4], dl
mov ecx, dword [ebp - 0x20]
add ecx, dword [ebp - 0x30]
sub ecx, dword [ebp - 0x2c]
sar ecx, 8
mov edx, dword [ebp - 4]
movzx eax, byte [edx + 0x10]
mov edx, dword [ebp - 4]
mov byte [edx + eax*4 + 1], cl
mov eax, dword [ebp - 0x1c]
add eax, dword [ebp - 0x2c]
sub eax, dword [ebp - 0x30]
sar eax, 8
mov ecx, dword [ebp - 4]
movzx edx, byte [ecx + 0x10]
mov ecx, dword [ebp - 4]
mov byte [ecx + edx*4 + 2], al
mov edx, dword [ebp - 0x20]
add edx, dword [ebp - 0x30]
add edx, dword [ebp - 0x2c]
sar edx, 8
mov eax, dword [ebp - 4]
movzx ecx, byte [eax + 0x10]
mov eax, dword [ebp - 4]
mov byte [eax + ecx*4 + 3], dl
mov ecx, dword [ebp - 4]
movzx edx, byte [ecx + 0x10]
add edx, 1
mov eax, dword [ebp - 4]
mov byte [eax + 0x10], dl
jmp 0x673155
mov ecx, dword [ebp - 0x5c]
sub ecx, dword [ebp - 0x60]
mov edx, dword [ebp - 4]
mov byte [edx + 0x15], cl
mov eax, dword [ebp - 4]
mov cx, word [0x280256c]
mov word [eax + 0x16], cx
mov edx, dword [ebp - 0x70]
sub edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x5c]
sub eax, dword [ebp - 0x60]
imul edx, eax
mov dword [ebp - 0x64], edx
movzx ecx, word [0x280256c]
add ecx, dword [ebp - 0x64]
cmp ecx, 0x1000
jle 0x6732e2
push 0x1a7
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceware.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
movzx edx, word [0x280256c]
add edx, dword [ebp - 0x64]
mov word [0x280256c], dx
movzx eax, byte [0x2802564]
push eax
call fcn.005eab30
add esp, 4
movzx ecx, word [0x2802574]
add ecx, dword [ebp - 0x64]
cmp ecx, 0x2000
jle 0x67332c
push 0x1b6
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceware.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov edx, dword [ebp - 4]
mov ax, word [0x2802574]
mov word [edx + 0x1a], ax
movzx ecx, word [0x2802574]
add ecx, dword [ebp - 0x64]
mov word [0x2802574], cx
mov edx, dword [ebp - 4]
movzx eax, byte [edx + 0x11]
mov dword [ebp - 0x44], eax
jmp 0x67335f
mov ecx, dword [ebp - 0x44]
add ecx, 1
mov dword [ebp - 0x44], ecx
mov edx, dword [ebp - 4]
movzx eax, byte [edx + 0x13]
cmp dword [ebp - 0x44], eax
jg 0x673428
mov ecx, dword [ebp - 4]
movzx edx, byte [ecx + 0x12]
mov dword [ebp - 0x48], edx
jmp 0x673384
mov eax, dword [ebp - 0x48]
add eax, 1
mov dword [ebp - 0x48], eax
mov ecx, dword [ebp - 4]
movzx edx, byte [ecx + 0x14]
cmp dword [ebp - 0x48], edx
jg 0x673423
mov eax, dword [ebp - 4]
movzx ecx, byte [eax + 0x11]
mov edx, dword [ebp - 0x44]
sub edx, ecx
mov eax, dword [ebp - 4]
movzx ecx, byte [eax + 0x15]
imul edx, ecx
mov eax, dword [ebp - 4]
movzx ecx, byte [eax + 0x12]
mov eax, dword [ebp - 0x48]
sub eax, ecx
add edx, eax
mov dword [ebp - 0x78], edx
mov ecx, dword [ebp - 4]
movzx edx, word [ecx + 0x1a]
add edx, dword [ebp - 0x78]
js 0x6733df
mov eax, dword [ebp - 4]
movzx ecx, word [eax + 0x1a]
add ecx, dword [ebp - 0x78]
movzx edx, word [0x2802574]
sub edx, 1
cmp ecx, edx
jle 0x6733f6
push 0x1c0
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceware.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
imul eax, dword [ebp - 0x44], 0x300
add eax, dword [0x25ecd94]
imul ecx, dword [ebp - 0x48], 6
mov edx, dword [ebp - 4]
movzx edx, word [edx + 0x1a]
add edx, dword [ebp - 0x78]
mov esi, dword [0x2802570]
mov al, byte [eax + ecx + 5]
mov byte [esi + edx], al
jmp 0x67337b
jmp 0x673356
mov ecx, dword [ebp - 4]
mov dx, word [0x280257c]
mov word [ecx + 0x1c], dx
mov eax, dword [ebp - 0x4c]
movzx ecx, word [eax + 0x10]
mov dword [ebp - 0x7c], ecx
jmp 0x67344c
mov edx, dword [ebp - 0x80]
movzx eax, word [edx + 0x12]
mov dword [ebp - 0x7c], eax
cmp dword [ebp - 0x7c], 0
je 0x673575
imul ecx, dword [ebp - 0x7c], 0x16
add ecx, dword [0x2596b9c]
mov dword [ebp - 0x80], ecx
mov edx, dword [ebp - 0x80]
movzx eax, word [edx + 8]
mov dword [ebp - 0x68], eax
jmp 0x673478
mov ecx, dword [ebp - 0x68]
add ecx, 1
mov dword [ebp - 0x68], ecx
mov edx, dword [ebp - 0x80]
movzx eax, word [edx + 0xa]
cmp dword [ebp - 0x68], eax
jge 0x673570
imul ecx, dword [ebp - 0x68], 0xa
add ecx, dword [0x2596fd4]
mov dword [ebp - 0x34], ecx
movzx edx, word [0x280257c]
test edx, edx
jl 0x6734ae
movzx eax, word [0x280257c]
cmp eax, 0xfff
jle 0x6734c5
push 0x1d3
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceware.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov ecx, dword [ebp - 0x34]
movzx edx, byte [ecx + 6]
and edx, 0x7f
jl 0x6734e0
mov eax, dword [ebp - 0x34]
movzx ecx, byte [eax + 6]
and ecx, 0x7f
cmp ecx, 0x7f
jle 0x6734f7
push 0x1d5
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceware.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov edx, dword [ebp - 0x34]
movzx eax, byte [edx + 7]
and eax, 0x7f
jl 0x673512
mov ecx, dword [ebp - 0x34]
movzx edx, byte [ecx + 7]
and edx, 0x7f
cmp edx, 0x7f
jle 0x673529
push 0x1d6
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceware.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov eax, dword [ebp - 0x34]
movzx ecx, byte [eax + 6]
and ecx, 0x7f
shl ecx, 8
mov edx, dword [ebp - 0x34]
movzx eax, byte [edx + 7]
and eax, 0x7f
movzx edx, word [0x280257c]
mov esi, dword [0x2802578]
mov ax, word [ecx + eax*2 + 0x2802580]
mov word [esi + edx*2], ax
mov cx, word [0x280257c]
add cx, 1
mov word [0x280257c], cx
jmp 0x67346f
jmp 0x673442
mov dx, word [0x2802564]
add dx, 1
mov word [0x2802564], dx
jmp 0x672fcb
mov dword [ebp - 0x10], 1
jmp 0x67359e
mov eax, dword [ebp - 0x10]
add eax, 1
mov dword [ebp - 0x10], eax
mov ecx, dword [ebp - 0x10]
cmp ecx, dword [0x25eca60]
jge 0x6735c7
mov edx, dword [ebp - 0x10]
mov eax, dword [0x25eca5c]
movzx ecx, byte [eax + edx*8 + 6]
and ecx, 0xffffffef
mov edx, dword [ebp - 0x10]
mov eax, dword [0x25eca5c]
mov byte [eax + edx*8 + 6], cl
jmp 0x673595
push 0
call fcn.005e7620
add esp, 4
mov dword [ebp - 0x10], 1
jmp 0x6735e3
mov ecx, dword [ebp - 0x10]
add ecx, 1
mov dword [ebp - 0x10], ecx
movzx edx, word [0x2802564]
cmp dword [ebp - 0x10], edx
jge 0x673a30
mov eax, dword [ebp - 0x10]
shl eax, 5
add eax, dword [0x2802560]
mov dword [ebp - 4], eax
mov ecx, dword [ebp - 4]
movzx edx, byte [ecx + 0x11]
sar edx, 2
mov dword [ebp - 0x1c], edx
mov eax, dword [ebp - 4]
movzx ecx, byte [eax + 0x12]
sar ecx, 2
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 4]
movzx eax, byte [edx + 0x13]
sar eax, 2
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp - 4]
movzx edx, byte [ecx + 0x14]
sar edx, 2
mov dword [ebp - 0x28], edx
mov eax, dword [ebp - 0x1c]
sub eax, 1
mov dword [ebp - 0x1c], eax
mov ecx, dword [ebp - 0x20]
sub ecx, 1
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x24]
add edx, 1
mov dword [ebp - 0x24], edx
mov eax, dword [ebp - 0x28]
add eax, 1
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x1c], 0
jge 0x673669
mov dword [ebp - 0x1c], 0
jmp 0x673676
cmp dword [ebp - 0x1c], 0x1f
jle 0x673676
mov dword [ebp - 0x1c], 0x1f
cmp dword [ebp - 0x20], 0
jge 0x673685
mov dword [ebp - 0x20], 0
jmp 0x673692
cmp dword [ebp - 0x20], 0x1f
jle 0x673692
mov dword [ebp - 0x20], 0x1f
cmp dword [ebp - 0x24], 0
jge 0x6736a1
mov dword [ebp - 0x24], 0
jmp 0x6736ae
cmp dword [ebp - 0x24], 0x1f
jle 0x6736ae
mov dword [ebp - 0x24], 0x1f
cmp dword [ebp - 0x28], 0
jge 0x6736bd
mov dword [ebp - 0x28], 0
jmp 0x6736ca
cmp dword [ebp - 0x28], 0x1f
jle 0x6736ca
mov dword [ebp - 0x28], 0x1f
mov ecx, dword [ebp - 0x1c]
mov dword [ebp - 0xc], ecx
jmp 0x6736db
mov edx, dword [ebp - 0xc]
add edx, 1
mov dword [ebp - 0xc], edx
mov eax, dword [ebp - 0xc]
cmp eax, dword [ebp - 0x24]
jg 0x673a2b
mov ecx, dword [ebp - 0x20]
mov dword [ebp - 8], ecx
jmp 0x6736f8
mov edx, dword [ebp - 8]
add edx, 1
mov dword [ebp - 8], edx
mov eax, dword [ebp - 8]
cmp eax, dword [ebp - 0x28]
jg 0x673a26
mov ecx, dword [ebp - 8]
push ecx
mov edx, dword [ebp - 0xc]
push edx
call fcn.006079c0
add esp, 8
mov dword [ebp - 0x14], eax
jmp 0x673722
mov eax, dword [ebp - 0x14]
add eax, 0x14
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp - 0x14]
movzx edx, word [ecx]
test edx, edx
je 0x673a21
mov eax, dword [ebp - 0x14]
movzx ecx, word [eax]
push ecx
call fcn.0063f2a0
add esp, 4
mov dword [ebp - 0x50], eax
mov edx, dword [ebp - 0x14]
movzx eax, word [edx]
cmp eax, 0x17
jne 0x673752
jmp 0x673a1c
mov ecx, dword [ebp - 0x14]
movzx edx, word [ecx]
cmp edx, 0xd8
jne 0x6737a7
mov eax, dword [ebp - 0x14]
movzx ecx, word [eax + 2]
mov edx, dword [ebp - 0x14]
movzx eax, word [edx + 8]
mov edx, dword [eax*4 + 0x762a10]
sar edx, 0xa
add ecx, edx
sar ecx, 8
mov dword [ebp - 0x38], ecx
mov eax, dword [ebp - 0x14]
movzx ecx, word [eax + 6]
mov edx, dword [ebp - 0x14]
movzx eax, word [edx + 8]
mov edx, dword [0x760004]
mov eax, dword [edx + eax*4]
sar eax, 0xa
add ecx, eax
sar ecx, 8
mov dword [ebp - 0x3c], ecx
jmp 0x673983
mov ecx, dword [ebp - 0x50]
mov edx, dword [ecx]
mov eax, dword [ebp - 0x50]
add edx, dword [eax + 0xc]
sar edx, 1
mov dword [ebp - 0x2c], edx
mov ecx, dword [ebp - 0x50]
mov edx, dword [ecx + 8]
mov eax, dword [ebp - 0x50]
add edx, dword [eax + 0x14]
sar edx, 1
mov dword [ebp - 0x30], edx
mov ecx, dword [ebp - 0x14]
movzx edx, word [ecx + 8]
neg edx
mov dword [ebp - 0x6c], edx
mov eax, dword [ebp - 0x6c]
and eax, 0x7ff
mov dword [ebp - 0x6c], eax
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ecx*4 + 0x762a10]
mov dword [ebp - 0x84], edx
mov eax, dword [ebp - 0x6c]
mov ecx, dword [0x760004]
mov edx, dword [ecx + eax*4]
mov dword [ebp - 0x88], edx
mov eax, 4
imul ecx, eax, 0
mov edx, dword [ebp - 0x88]
mov dword [ebp + ecx - 0xd0], edx
mov eax, dword [ebp - 0x84]
neg eax
mov ecx, 4
shl ecx, 0
mov dword [ebp + ecx - 0xd0], eax
mov edx, 4
shl edx, 1
mov eax, dword [ebp - 0x84]
mov dword [ebp + edx - 0xd0], eax
mov ecx, 4
imul edx, ecx, 3
mov eax, dword [ebp - 0x88]
mov dword [ebp + edx - 0xd0], eax
mov ecx, 4
imul edx, ecx, 0
mov eax, dword [ebp + edx - 0xd0]
mov dword [ebp - 0x8c], eax
mov eax, dword [ebp - 0x2c]
imul dword [ebp - 0x8c]
mov ax, dx
rol eax, 0x10
mov dword [ebp - 0x90], eax
mov ecx, dword [ebp - 0x90]
mov dword [ebp - 0x9c], ecx
mov edx, 4
shl edx, 0
mov eax, dword [ebp + edx - 0xd0]
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x30]
imul dword [ebp - 0x94]
mov ax, dx
rol eax, 0x10
mov dword [ebp - 0x98], eax
mov ecx, dword [ebp - 0x98]
mov dword [ebp - 0xa0], ecx
mov edx, dword [ebp - 0x9c]
add edx, dword [ebp - 0xa0]
mov dword [ebp - 0xbc], edx
mov eax, 4
shl eax, 1
mov ecx, dword [ebp + eax - 0xd0]
mov dword [ebp - 0xa4], ecx
mov eax, dword [ebp - 0x2c]
imul dword [ebp - 0xa4]
mov ax, dx
rol eax, 0x10
mov dword [ebp - 0xa8], eax
mov edx, dword [ebp - 0xa8]
mov dword [ebp - 0xb4], edx
mov eax, 4
imul ecx, eax, 3
mov edx, dword [ebp + ecx - 0xd0]
mov dword [ebp - 0xac], edx
mov eax, dword [ebp - 0x30]
imul dword [ebp - 0xac]
mov ax, dx
rol eax, 0x10
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp - 0xb0]
mov dword [ebp - 0xb8], eax
mov ecx, dword [ebp - 0xb4]
add ecx, dword [ebp - 0xb8]
mov dword [ebp - 0xc0], ecx
mov edx, dword [ebp - 0x14]
movzx eax, word [edx + 2]
add eax, dword [ebp - 0xbc]
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x14]
movzx edx, word [ecx + 6]
add edx, dword [ebp - 0xc0]
mov dword [ebp - 0x3c], edx
mov eax, dword [ebp - 0x38]
sar eax, 8
mov dword [ebp - 0x38], eax
mov ecx, dword [ebp - 0x3c]
sar ecx, 8
mov dword [ebp - 0x3c], ecx
cmp dword [ebp - 0x38], 0
jl 0x67398f
cmp dword [ebp - 0x38], 0x7f
jle 0x6739a6
push 0x23c
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceware.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
cmp dword [ebp - 0x3c], 0
jl 0x6739b2
cmp dword [ebp - 0x3c], 0x7f
jle 0x6739c9
push 0x23d
push str.C:devworkspaces_repo_clonesClean_UrbanChaosMuckyFoot_UrbanChaos_fallenSourceware.cpp
push str.ASSERT_TRIGGERED
call fcn.0049b8f0
add esp, 0xc
mov edx, dword [ebp - 0x14]
movsx eax, word [edx + 4]
mov ecx, dword [ebp - 0x50]
add eax, dword [ecx + 0x10]
imul edx, dword [ebp - 0x38], 0x300
add edx, dword [0x25ecd94]
imul ecx, dword [ebp - 0x3c], 6
movsx edx, byte [edx + ecx + 5]
shl edx, 6
sub edx, 0x20
cmp eax, edx
jge 0x673a1c
mov eax, dword [ebp - 0x14]
movzx ecx, word [eax + 0xe]
mov edx, dword [0x25eca5c]
movzx eax, byte [edx + ecx*8 + 6]
or eax, 0x10
mov ecx, dword [ebp - 0x14]
movzx edx, word [ecx + 0xe]
mov ecx, dword [0x25eca5c]
mov byte [ecx + edx*8 + 6], al
jmp 0x673719
jmp 0x6736ef
jmp 0x6736d2
jmp 0x6735da
pop esi
mov esp, ebp
pop ebp
ret