Function at 0x5cda504d
Capabilities:
Enumerate pe sections
Parse pe header

Disassembly:
push 0x5a8
push 8
push dword [ebp - 0x88]
call dword [ebp - 0x78]
mov dword [ebp - 0xb4], eax
cmp dword [ebp - 0xb4], 0
jne 0x5cda5071
jmp 0x5cda71c1
mov eax, dword [ebp - 0xb4]
or dword [eax], 0xffffffff
mov eax, dword [ebp - 0xb4]
or dword [eax + 4], 0xffffffff
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
mov dword [ebp - 0x9c], eax
mov dword [ebp - 0x44], 0x104
call fcn.5cda846a
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x40], 0
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x44], 0
cmp dword [ebp - 0x9c], 0
je 0x5cda512d
mov eax, dword [ebp - 0x9c]
movsx eax, byte [eax]
cmp eax, 0x2e
jne 0x5cda50f2
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x40]
inc eax
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x40], eax
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x44], 0
jmp 0x5cda5113
mov eax, dword [ebp - 0x9c]
movsx eax, byte [eax]
cmp eax, 0x24
jne 0x5cda5113
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x44]
inc eax
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x44], eax
mov eax, dword [ebp - 0x9c]
movsx eax, byte [eax]
mov ecx, dword [ebp - 0x9c]
inc ecx
mov dword [ebp - 0x9c], ecx
test eax, eax
jne 0x5cda50c5
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x40], 0
jbe 0x5cda514a
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x44], 2
jb 0x5cda514a
jmp 0x5cda71c1
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 0x18]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x1c], eax
push 0x80
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 0x1c]
push 0
push 0x80
push 3
push 0
push 0
push 0xc0000000
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 4]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx], eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax], 0xffffffff
jne 0x5cda5211
mov eax, dword [ebp - 0x30]
and eax, 0x40000000
test eax, eax
jne 0x5cda51be
jmp 0x5cda71c1
mov eax, dword [ebp - 0x30]
and eax, 2
test eax, eax
je 0x5cda51cd
jmp 0x5cda71c1
mov eax, dword [ebp - 0xb4]
mov byte [eax + 0x4c], 1
push 0
push 0x80
push 3
push 0
push 3
push SysReAllocString
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 4]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx], eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax], 0xffffffff
jne 0x5cda5211
jmp 0x5cda71c1
push 2
push 0
push 0
mov eax, dword [ebp - 0xb4]
push dword [eax]
mov eax, dword [ebp - 0x40]
call dword [eax + 0x10]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x14], eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x14], 0xffffffff
jne 0x5cda523f
jmp 0x5cda71c1
push 0
push 0
push 0
mov eax, dword [ebp - 0xb4]
push dword [eax]
mov eax, dword [ebp - 0x40]
call dword [eax + 0x10]
cmp eax, 0xffffffff
jne 0x5cda525d
jmp 0x5cda71c1
push 0
push 0
push 0
push 2
push 0
mov eax, dword [ebp - 0xb4]
push dword [eax]
mov eax, dword [ebp - 0x40]
call dword [eax + 0x38]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 8], 0
jne 0x5cda528f
jmp 0x5cda71c1
push 0
push 0
push 0
push 4
mov eax, dword [ebp - 0xb4]
push dword [eax + 8]
mov eax, dword [ebp - 0x40]
call dword [eax + 0x3c]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0xc], eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0xc], 0
jne 0x5cda52c0
jmp 0x5cda71c1
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x14], 0x40
jae 0x5cda52d1
jmp 0x5cda71c1
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0x98]
movzx eax, word [eax]
cmp eax, 0x5a4d
je 0x5cda52f5
jmp 0x5cda71c1
mov eax, dword [ebp - 0x98]
mov eax, dword [eax + 0x3c]
add eax, 0xf8
mov ecx, dword [ebp - 0xb4]
cmp dword [ecx + 0x14], eax
jae 0x5cda5313
jmp 0x5cda71c1
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0x98]
add eax, dword [ecx + 0x3c]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x6c]
cmp dword [eax], 0x4550
je 0x5cda5338
jmp 0x5cda71c1
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax + 0x16]
and eax, 0x100
test eax, eax
jne 0x5cda534d
jmp 0x5cda71c1
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax + 0x16]
and eax, 2
test eax, eax
jne 0x5cda5360
jmp 0x5cda71c1
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax + 0x18]
cmp eax, 0x10b
je 0x5cda5373
jmp 0x5cda71c1
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax + 0x5e]
and eax, 0x800
test eax, eax
je 0x5cda5388
jmp 0x5cda71c1
mov eax, dword [ebp - 0x6c]
cmp dword [eax + 0x28], 0
jne 0x5cda5396
jmp 0x5cda71bf
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax + 0x14]
mov ecx, dword [ebp - 0x98]
mov ecx, dword [ecx + 0x3c]
lea eax, [eax + ecx + 0x18]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax + 6]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0x5c]
add ecx, eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x14], ecx
jae 0x5cda53cc
jmp 0x5cda71bd
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
add eax, dword [ebp - 0x5c]
mov dword [ebp - 0x50], eax
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x18], 0
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x50]
mov ecx, dword [ecx + 0xc]
mov dword [eax + 0x28], ecx
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x50]
mov ecx, dword [ecx + 0x14]
mov dword [eax + 0x2c], ecx
mov dword [ebp - 0x44], 8
mov eax, 0x406b6b
call fcn.5cda842d
mov dword [ebp - 0x9c], eax
mov eax, 0x406b7d
call fcn.5cda842d
mov dword [ebp - 0x74], eax
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x48], 0
jmp 0x5cda5446
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
inc eax
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x48], eax
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax + 6]
mov ecx, dword [ebp - 0xb4]
cmp dword [ecx + 0x48], eax
jae 0x5cda55db
mov eax, dword [ebp - 0x30]
and eax, 0x40000000
test eax, eax
je 0x5cda54ab
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0x50]
add ecx, eax
mov dword [ebp - 0x54], ecx
call fcn.5cda86ba
cmp dword [ebp - 0x10], 0
je 0x5cda5495
jmp 0x5cda71bb
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x58], eax
call fcn.5cda86ba
cmp dword [ebp - 0x10], 0
je 0x5cda54ab
jmp 0x5cda71b9
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov edx, dword [ebp - 0x50]
mov ecx, dword [ecx + 0x28]
cmp ecx, dword [edx + eax + 0xc]
jae 0x5cda54da
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x28]
mov dword [ebp - 0xd0], eax
jmp 0x5cda54f3
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0x50]
mov eax, dword [ecx + eax + 0xc]
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xd0]
mov dword [eax + 0x28], ecx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov edx, dword [ebp - 0x50]
mov ecx, dword [ecx + 0x2c]
cmp ecx, dword [edx + eax + 0x14]
jae 0x5cda5531
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x2c]
mov dword [ebp - 0xd4], eax
jmp 0x5cda554a
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0x50]
mov eax, dword [ecx + eax + 0x14]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xd4]
mov dword [eax + 0x2c], ecx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x48]
imul ecx, ecx, 0x28
mov edx, dword [ebp - 0x50]
mov eax, dword [edx + eax + 0x14]
mov edx, dword [ebp - 0x50]
add eax, dword [edx + ecx + 0x10]
mov ecx, dword [ebp - 0xb4]
cmp dword [ecx + 0x18], eax
jbe 0x5cda559b
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x18]
mov dword [ebp - 0xd8], eax
jmp 0x5cda55c7
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x48]
imul ecx, ecx, 0x28
mov edx, dword [ebp - 0x50]
mov eax, dword [edx + eax + 0x14]
mov edx, dword [ebp - 0x50]
add eax, dword [edx + ecx + 0x10]
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xd8]
mov dword [eax + 0x18], ecx
jmp 0x5cda5433
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 0xa8]
mov dword [ebp - 0x5c], eax
call fcn.5cda83b7
cmp dword [ebp - 0x5c], 0
je 0x5cda56fd
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
add eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x57c], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 0xac]
xor edx, edx
push 0x1c
pop ecx
div ecx
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x48], eax
mov eax, dword [ebp - 0x5c]
add eax, 0x1c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x48]
dec ecx
mov edx, dword [ebp - 0xb4]
mov dword [edx + 0x48], ecx
test eax, eax
jbe 0x5cda56fd
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x5c]
cmp ecx, dword [eax + 0x14]
jbe 0x5cda5667
jmp 0x5cda71b7
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x57c]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x57c]
mov eax, dword [eax + 0x18]
add eax, dword [ecx + 0x10]
mov ecx, dword [ebp - 0xb4]
cmp dword [ecx + 0x18], eax
jbe 0x5cda56a1
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x18]
mov dword [ebp - 0xdc], eax
jmp 0x5cda56c5
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x57c]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x57c]
mov eax, dword [eax + 0x18]
add eax, dword [ecx + 0x10]
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xdc]
mov dword [eax + 0x18], ecx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x57c]
add eax, 0x1c
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x57c], eax
mov eax, dword [ebp - 0x5c]
add eax, 0x1c
mov dword [ebp - 0x5c], eax
jmp 0x5cda5630
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x6c]
mov eax, dword [eax + 0x18]
xor edx, edx
div dword [ecx + 0x3c]
test edx, edx
je 0x5cda5734
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x6c]
mov eax, dword [eax + 0x18]
xor edx, edx
div dword [ecx + 0x3c]
inc eax
mov ecx, dword [ebp - 0x6c]
imul eax, dword [ecx + 0x3c]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x18], eax
mov eax, dword [ebp - 0x30]
and eax, 0x40000000
test eax, eax
je 0x5cda5759
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb4]
mov eax, dword [eax + 0x14]
cmp eax, dword [ecx + 0x18]
jbe 0x5cda5759
jmp 0x5cda71b5
mov eax, dword [ebp - 0x98]
mov eax, dword [eax + 0x3c]
mov ecx, dword [ebp - 0x6c]
movzx ecx, word [ecx + 0x14]
lea eax, [eax + ecx + 0x18]
mov ecx, dword [ebp - 0x6c]
movzx ecx, word [ecx + 6]
inc ecx
imul ecx, ecx, 0x28
add eax, ecx
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x34], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x34]
mov dword [eax + 0x38], ecx
mov eax, dword [ebp - 0xb4]
and byte [eax + 0x4d], 0
mov eax, dword [ebp - 0x6c]
cmp dword [eax + 0xd4], 0
jbe 0x5cda5806
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0xb4]
mov eax, dword [eax + 0xd0]
cmp eax, dword [ecx + 0x28]
jae 0x5cda5806
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 0xd0]
mov ecx, dword [ebp - 0x6c]
add eax, dword [ecx + 0xd4]
mov ecx, dword [ebp - 0xb4]
cmp eax, dword [ecx + 0x14]
jb 0x5cda57e1
jmp 0x5cda71b3
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x38]
mov ecx, dword [ebp - 0x6c]
add eax, dword [ecx + 0xd4]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x38], eax
mov eax, dword [ebp - 0xb4]
mov byte [eax + 0x4d], 1
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x6c]
mov eax, dword [eax + 0x38]
cmp eax, dword [ecx + 0x54]
jbe 0x5cda5854
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x6c]
mov eax, dword [eax + 0x38]
xor edx, edx
div dword [ecx + 0x3c]
inc eax
mov ecx, dword [ebp - 0x6c]
imul eax, dword [ecx + 0x3c]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x38], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb4]
mov eax, dword [eax + 0x38]
cmp eax, dword [ecx + 0x28]
jbe 0x5cda5852
jmp 0x5cda71b1
jmp 0x5cda5863
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x6c]
mov ecx, dword [ecx + 0x54]
mov dword [eax + 0x38], ecx
mov eax, dword [ebp - 0xb4]
push dword [eax + 0x38]
push 8
push dword [ebp - 0x88]
call dword [ebp - 0x78]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x10], eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x10], 0
jne 0x5cda5891
jmp 0x5cda71af
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x34]
sub eax, 0x28
mov dword [ebp - 0x44], eax
call fcn.5cda8661
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x10]
mov ecx, dword [ebp - 0x98]
add eax, dword [ecx + 0x3c]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x38]
mov dword [eax + 0x54], ecx
mov eax, dword [ebp - 0xb4]
movzx eax, byte [eax + 0x4d]
test eax, eax
je 0x5cda594d
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x10]
mov ecx, dword [ebp - 0xb4]
add eax, dword [ecx + 0x34]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0x6c]
add eax, dword [ecx + 0xd0]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 0xd4]
mov dword [ebp - 0x44], eax
call fcn.5cda8661
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x34]
mov dword [eax + 0xd0], ecx
jmp 0x5cda5961
mov eax, dword [ebp - 0x6c]
and dword [eax + 0xd0], 0
mov eax, dword [ebp - 0x6c]
and dword [eax + 0xd4], 0
mov eax, dword [ebp - 0x6c]
and dword [eax + 0xa8], 0
mov eax, dword [ebp - 0x6c]
and dword [eax + 0xac], 0
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax + 0x14]
mov ecx, dword [ebp - 0x6c]
lea eax, [ecx + eax + 0x18]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x578], eax
mov eax, dword [ebp - 0x6c]
mov ax, word [eax + 6]
add ax, 1
mov ecx, dword [ebp - 0x6c]
mov word [ecx + 6], ax
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax + 6]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x20], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x20]
shl eax, 3
push eax
push 8
push dword [ebp - 0x88]
call dword [ebp - 0x78]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x574], eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x574], 0
jne 0x5cda59e9
jmp 0x5cda71ad
mov eax, dword [ebp - 0x50]
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0x50]
add eax, dword [ecx + 8]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x24], eax
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x48], 0
jmp 0x5cda5a1d
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
inc eax
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x48], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x20]
dec eax
mov ecx, dword [ebp - 0xb4]
cmp dword [ecx + 0x48], eax
jae 0x5cda5c8b
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x48]
imul ecx, ecx, 0x28
mov edx, dword [ebp - 0x50]
mov eax, dword [edx + eax + 0x14]
mov edx, dword [ebp - 0x50]
add eax, dword [edx + ecx + 0x10]
mov ecx, dword [ebp - 0xb4]
cmp dword [ecx + 0x14], eax
jae 0x5cda5a6c
jmp 0x5cda71ab
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x48]
imul ecx, ecx, 0x28
mov edx, dword [ebp - 0x50]
mov eax, dword [edx + eax + 0xc]
mov edx, dword [ebp - 0x50]
add eax, dword [edx + ecx + 8]
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x5c]
xor edx, edx
div dword [ecx + 0x38]
test edx, edx
je 0x5cda5aba
mov ecx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x5c]
xor edx, edx
div dword [ecx + 0x38]
inc eax
mov ecx, dword [ebp - 0x6c]
imul eax, dword [ecx + 0x38]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x24]
cmp eax, dword [ebp - 0x5c]
jbe 0x5cda5ad9
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x24]
mov dword [ebp - 0xe0], eax
jmp 0x5cda5ae2
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0xe0], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xe0]
mov dword [eax + 0x24], ecx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x48]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x574]
mov esi, dword [ebp - 0x50]
mov eax, dword [esi + eax + 0x10]
mov dword [edx + ecx*8 + 4], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov esi, dword [ebp - 0x6c]
mov eax, dword [ecx + eax*8 + 4]
xor edx, edx
div dword [esi + 0x3c]
test edx, edx
je 0x5cda5b84
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov esi, dword [ebp - 0x6c]
mov eax, dword [ecx + eax*8 + 4]
xor edx, edx
div dword [esi + 0x3c]
inc eax
mov ecx, dword [ebp - 0x6c]
imul eax, dword [ecx + 0x3c]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x48]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x574]
mov dword [edx + ecx*8 + 4], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
push dword [ecx + eax*8 + 4]
push 8
push dword [ebp - 0x88]
call dword [ebp - 0x78]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x48]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x574]
mov dword [edx + ecx*8], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
cmp dword [ecx + eax*8], 0
jne 0x5cda5be0
jmp 0x5cda71a9
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov eax, dword [ecx + eax*8]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0xc]
mov edx, dword [ebp - 0x50]
add ecx, dword [edx + eax + 0x14]
mov dword [ebp - 0x58], ecx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0x50]
mov eax, dword [ecx + eax + 0x10]
mov dword [ebp - 0x44], eax
call fcn.5cda8661
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x44]
cmp ecx, dword [eax + 0x598]
jle 0x5cda5c86
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x44]
mov dword [eax + 0x598], ecx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov edx, dword [ebp - 0xb4]
mov eax, dword [ecx + eax*8]
mov dword [edx + 0x58c], eax
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x5a0], 0
jmp 0x5cda5a0a
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x20]
dec eax
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x30], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov edx, dword [ebp - 0x38]
mov dword [ecx + eax*8 + 4], edx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov esi, dword [ebp - 0x6c]
mov eax, dword [ecx + eax*8 + 4]
xor edx, edx
div dword [esi + 0x3c]
test edx, edx
je 0x5cda5d21
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov esi, dword [ebp - 0x6c]
mov eax, dword [ecx + eax*8 + 4]
xor edx, edx
div dword [esi + 0x3c]
inc eax
mov ecx, dword [ebp - 0x6c]
imul eax, dword [ecx + 0x3c]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x574]
mov dword [edx + ecx*8 + 4], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
push dword [ecx + eax*8 + 4]
push 8
push dword [ebp - 0x88]
call dword [ebp - 0x78]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x574]
mov dword [edx + ecx*8], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
cmp dword [ecx + eax*8], 0
jne 0x5cda5d7d
jmp 0x5cda71a7
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x3c]
mov dword [eax + 0x590], ecx
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x5a4], 0
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x38]
mov dword [eax + 0x59c], ecx
mov eax, dword [ebp - 0x38]
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov eax, dword [ecx + eax*8]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x3c]
mov dword [ebp - 0x58], eax
call fcn.5cda8661
mov dword [ebp - 0x44], 8
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
add eax, dword [ecx + 0x578]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x578]
mov dword [ebp - 0x58], eax
call fcn.5cda8661
mov dword [ebp - 0x44], 8
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x578]
mov dword [ebp - 0x54], eax
mov eax, 0x406b6b
call fcn.5cda842d
mov dword [ebp - 0x58], eax
call fcn.5cda8661
mov eax, 0x406b4b
call fcn.5cda842d
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x578]
mov dword [ecx + eax + 0x24], 0x60000020
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x578]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x24]
mov dword [ecx + eax + 0xc], edx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x578]
mov edx, dword [ebp - 0x38]
mov dword [ecx + eax + 8], edx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x30]
imul edx, edx, 0x28
mov esi, dword [ebp - 0xb4]
mov esi, dword [esi + 0x578]
mov eax, dword [ecx + eax*8 + 4]
mov dword [esi + edx + 0x10], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x578]
mov edx, dword [ebp - 0x6c]
mov edx, dword [edx + 0x1c]
add edx, dword [ecx + eax + 0x10]
mov eax, dword [ebp - 0x6c]
mov dword [eax + 0x1c], edx
mov eax, 0x406b47
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x30]
and eax, 0x40000000
test eax, eax
je 0x5cda5f29
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 0x28]
mov dword [ebp - 0xe4], eax
jmp 0x5cda5f30
and dword [ebp - 0xe4], 0
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov eax, dword [ecx + eax*8]
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0xe4]
mov dword [eax + ecx], edx
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x24]
mov dword [eax + 0x28], ecx
mov eax, dword [ebp - 0x30]
and eax, 0x40000000
test eax, eax
je 0x5cda5fb9
mov eax, 0x406b4b
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov eax, dword [ecx + eax*8]
mov ecx, dword [ebp - 0x5c]
mov eax, dword [eax + ecx]
inc eax
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x574]
mov ecx, dword [edx + ecx*8]
mov edx, dword [ebp - 0x5c]
mov dword [ecx + edx], eax
mov eax, 0x406b4f
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov eax, dword [ecx + eax*8]
mov ecx, dword [ebp - 0x5c]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x24]
mov dword [eax + ecx], edx
mov eax, 0x406b53
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x6c]
movzx eax, word [eax + 0x16]
and eax, 0x2000
neg eax
sbb eax, eax
neg eax
mov ecx, dword [ebp - 0x30]
and ecx, 0x40000000
neg ecx
sbb ecx, ecx
and ecx, 0xc0000000
add ecx, 0x40000000
or eax, ecx
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x574]
mov ecx, dword [edx + ecx*8]
mov edx, dword [ebp - 0x5c]
mov dword [ecx + edx], eax
mov eax, 0x406b57
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov eax, dword [ecx + eax*8]
mov ecx, dword [ebp - 0x5c]
and dword [eax + ecx], 0
mov eax, 0x406b5b
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov eax, dword [ecx + eax*8]
mov ecx, dword [ebp - 0x5c]
and dword [eax + ecx], 0
mov eax, 0x406b5f
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov eax, dword [ecx + eax*8]
mov ecx, dword [ebp - 0x5c]
and dword [eax + ecx], 0
mov eax, 0x406b63
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov eax, dword [ecx + eax*8]
mov ecx, dword [ebp - 0x5c]
and dword [eax + ecx], 0
mov eax, 0x406b67
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x30]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov eax, dword [ecx + eax*8]
mov ecx, dword [ebp - 0x5c]
and dword [eax + ecx], 0
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 0x80]
mov dword [ebp - 0x5c], eax
call fcn.5cda83b7
cmp dword [ebp - 0x5c], 0
jne 0x5cda613d
jmp 0x5cda71a5
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
add eax, dword [ebp - 0x5c]
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x5c]
mov dword [eax + 0x40], ecx
mov eax, dword [ebp - 0xa0]
sub eax, 0x14
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x40]
add eax, 0x14
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x40], eax
mov eax, dword [ebp - 0xa0]
add eax, 0x14
mov dword [ebp - 0xa0], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb4]
mov eax, dword [eax + 0x40]
cmp eax, dword [ecx + 0x14]
jbe 0x5cda61a7
jmp 0x5cda71a3
mov eax, dword [ebp - 0xa0]
cmp dword [eax + 0xc], 0
jne 0x5cda61b8
jmp 0x5cda6582
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xa0]
mov ecx, dword [ecx]
mov dword [eax + 0x3c], ecx
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x3c], 0
jne 0x5cda61e7
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xa0]
mov ecx, dword [ecx + 0x10]
mov dword [eax + 0x3c], ecx
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x3c], 0
jne 0x5cda61f8
jmp 0x5cda616a
mov eax, dword [ebp - 0xa0]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x5c], eax
call fcn.5cda83b7
cmp dword [ebp - 0x5c], 0
jne 0x5cda6214
jmp 0x5cda71a1
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
add eax, dword [ebp - 0x5c]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0xb4]
add eax, dword [ecx + 0x14]
mov dword [ebp - 0x2c], eax
call fcn.5cda85f8
cmp dword [ebp - 0x10], 0
jne 0x5cda6254
jmp 0x5cda719f
mov eax, 0x406baf
call fcn.5cda842d
mov dword [ebp - 0x74], eax
call fcn.5cda84c6
cmp dword [ebp - 0x10], 0
jne 0x5cda6271
jmp 0x5cda616a
mov eax, dword [ebp - 0xb4]
mov byte [eax + 0x4d], 1
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x3c]
mov dword [ebp - 0x5c], eax
call fcn.5cda83b7
cmp dword [ebp - 0x5c], 0
jne 0x5cda6297
jmp 0x5cda719d
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
add eax, dword [ebp - 0x5c]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x5c]
mov dword [eax + 0x44], ecx
mov eax, dword [ebp - 0x68]
sub eax, 4
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0xb4]
or dword [eax + 0x570], 0xffffffff
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x44]
add eax, 4
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x44], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb4]
mov eax, dword [eax + 0x14]
cmp eax, dword [ecx + 0x44]
jae 0x5cda62f6
jmp 0x5cda719b
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x570]
inc eax
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x570], eax
mov eax, dword [ebp - 0x68]
add eax, 4
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x68]
cmp dword [eax], 0
jne 0x5cda6325
jmp 0x5cda657d
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
and eax, 0x80000000
test eax, eax
je 0x5cda6335
jmp 0x5cda62c8
mov eax, dword [ebp - 0x68]
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
call fcn.5cda83b7
cmp dword [ebp - 0x5c], 0
jne 0x5cda634d
jmp 0x5cda7199
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
add eax, dword [ebp - 0x5c]
mov dword [ebp - 0x84], eax
mov eax, dword [ebp - 0x5c]
add eax, 4
mov ecx, dword [ebp - 0xb4]
cmp eax, dword [ecx + 0x14]
jbe 0x5cda6375
jmp 0x5cda7197
mov eax, dword [ebp - 0x84]
inc eax
inc eax
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0xb4]
add eax, dword [ecx + 0x14]
mov dword [ebp - 0x2c], eax
call fcn.5cda85f8
cmp dword [ebp - 0x10], 0
jne 0x5cda63b1
jmp 0x5cda7195
mov eax, 0x406bd6
call fcn.5cda842d
mov dword [ebp - 0x74], eax
call fcn.5cda8596
cmp dword [ebp - 0x10], 0
je 0x5cda640c
mov eax, 0x406b57
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x570]
mov ecx, dword [ebp - 0xa0]
mov ecx, dword [ecx + 0x10]
lea eax, [ecx + eax*4]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x574]
mov ecx, dword [edx + ecx*8]
mov edx, dword [ebp - 0x5c]
mov dword [ecx + edx], eax
mov eax, 0x406be5
call fcn.5cda842d
mov dword [ebp - 0x74], eax
call fcn.5cda8596
cmp dword [ebp - 0x10], 0
je 0x5cda6467
mov eax, 0x406b5b
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x570]
mov ecx, dword [ebp - 0xa0]
mov ecx, dword [ecx + 0x10]
lea eax, [ecx + eax*4]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x574]
mov ecx, dword [edx + ecx*8]
mov edx, dword [ebp - 0x5c]
mov dword [ecx + edx], eax
mov eax, 0x406bf6
call fcn.5cda842d
mov dword [ebp - 0x74], eax
call fcn.5cda8596
cmp dword [ebp - 0x10], 0
je 0x5cda64c2
mov eax, 0x406b5f
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x570]
mov ecx, dword [ebp - 0xa0]
mov ecx, dword [ecx + 0x10]
lea eax, [ecx + eax*4]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x574]
mov ecx, dword [edx + ecx*8]
mov edx, dword [ebp - 0x5c]
mov dword [ecx + edx], eax
mov eax, 0x406c0f
call fcn.5cda842d
mov dword [ebp - 0x74], eax
call fcn.5cda8596
cmp dword [ebp - 0x10], 0
je 0x5cda651d
mov eax, 0x406b63
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x570]
mov ecx, dword [ebp - 0xa0]
mov ecx, dword [ecx + 0x10]
lea eax, [ecx + eax*4]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x574]
mov ecx, dword [edx + ecx*8]
mov edx, dword [ebp - 0x5c]
mov dword [ecx + edx], eax
mov eax, 0x406c20
call fcn.5cda842d
mov dword [ebp - 0x74], eax
call fcn.5cda8596
cmp dword [ebp - 0x10], 0
je 0x5cda6578
mov eax, 0x406b67
sub eax, 0x40128c
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x570]
mov ecx, dword [ebp - 0xa0]
mov ecx, dword [ecx + 0x10]
lea eax, [ecx + eax*4]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x574]
mov ecx, dword [edx + ecx*8]
mov edx, dword [ebp - 0x5c]
mov dword [ecx + edx], eax
jmp 0x5cda62c8
jmp 0x5cda616a
mov eax, dword [ebp - 0xb4]
movzx eax, byte [eax + 0x4d]
test eax, eax
jne 0x5cda6595
jmp 0x5cda7193
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0xc], 0
je 0x5cda65ba
mov eax, dword [ebp - 0xb4]
push dword [eax + 0xc]
mov eax, dword [ebp - 0x40]
call dword [eax + 0x40]
mov eax, dword [ebp - 0xb4]
and dword [eax + 0xc], 0
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 8], 0
je 0x5cda65de
mov eax, dword [ebp - 0xb4]
push dword [eax + 8]
mov eax, dword [ebp - 0x40]
call dword [eax]
mov eax, dword [ebp - 0xb4]
and dword [eax + 8], 0
mov eax, dword [ebp - 0xb4]
and byte [eax + 0x4d], 0
mov eax, dword [ebp - 0x6c]
cmp dword [eax + 0x58], 0
je 0x5cda6602
mov eax, dword [ebp - 0xb4]
mov byte [eax + 0x4d], 1
mov eax, dword [ebp - 0x6c]
and dword [eax + 0x58], 0
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x6c]
mov ecx, dword [ecx + 0x54]
mov dword [eax + 0x40], ecx
mov eax, dword [ebp - 0x6c]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x28]
mov dword [eax + 0x50], ecx
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x48], 0
jmp 0x5cda663f
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
inc eax
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x48], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
cmp eax, dword [ecx + 0x20]
jae 0x5cda66ff
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x578]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x40]
mov dword [ecx + eax + 0x14], edx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x40]
add edx, dword [ecx + eax*8 + 4]
mov eax, dword [ebp - 0xb4]
mov dword [eax + 0x40], edx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
imul eax, eax, 0x28
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x578]
mov eax, dword [ecx + eax + 8]
mov dword [ebp - 0x5c], eax
mov ecx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x5c]
xor edx, edx
div dword [ecx + 0x38]
test edx, edx
je 0x5cda66eb
mov ecx, dword [ebp - 0x6c]
mov eax, dword [ebp - 0x5c]
xor edx, edx
div dword [ecx + 0x38]
inc eax
mov ecx, dword [ebp - 0x6c]
imul eax, dword [ecx + 0x38]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 0x50]
add eax, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x6c]
mov dword [ecx + 0x50], eax
jmp 0x5cda662c
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x6c]
mov ecx, dword [ecx + 0x54]
mov dword [eax + 0x14], ecx
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x48], 0
jmp 0x5cda672d
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
inc eax
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x48], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
cmp eax, dword [ecx + 0x20]
jae 0x5cda676e
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov edx, dword [ebp - 0xb4]
mov edx, dword [edx + 0x14]
add edx, dword [ecx + eax*8 + 4]
mov eax, dword [ebp - 0xb4]
mov dword [eax + 0x14], edx
jmp 0x5cda671a
mov eax, dword [ebp - 0xb4]
movzx eax, byte [eax + 0x4c]
test eax, eax
je 0x5cda6d10
mov dword [ebp - 0x44], 0x104
mov eax, dword [ebp - 0xb4]
add eax, 0x258
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
mov dword [ebp - 0x74], eax
call fcn.5cda846a
mov eax, dword [ebp - 0xb4]
add eax, 0x153
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
mov dword [ebp - 0x74], eax
call fcn.5cda846a
call fcn.5cda8436
cmp dword [ebp - 0x44], 0x101
jl 0x5cda67de
jmp 0x5cda7191
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x44]
mov byte [eax + 0x153], 0x24
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x44]
mov byte [eax + 0x153], 0x24
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x44]
mov byte [eax + 0x153], 0x24
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x44]
and byte [eax + 0x153], 0
mov eax, dword [ebp - 0x44]
sub eax, 3
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x44]
mov byte [eax + 0x258], 0x24
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x44]
mov byte [eax + 0x258], 0x24
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x44]
mov byte [eax + 0x258], 0x31
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x44]
and byte [eax + 0x258], 0
mov eax, dword [ebp - 0xb4]
add eax, 0x35d
push eax
push 0x104
mov eax, dword [ebp - 0x40]
call dword [eax + 0x2c]
mov eax, dword [ebp - 0xb4]
add eax, 0x35d
mov dword [ebp - 0x9c], eax
call fcn.5cda8436
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x44]
movsx eax, byte [eax + 0x35c]
cmp eax, 0x5c
je 0x5cda690a
mov eax, dword [ebp - 0x44]
inc eax
cmp eax, 0x104
jl 0x5cda68e3
jmp 0x5cda718f
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x44]
mov byte [eax + 0x35d], 0x5c
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
mov eax, dword [ebp - 0xb4]
add eax, dword [ebp - 0x44]
and byte [eax + 0x35d], 0
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x44]
mov dword [eax + 0x48], ecx
mov dword [ebp - 0x44], 0x104
mov eax, dword [ebp - 0xb4]
add eax, 0x462
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x35d
mov dword [ebp - 0x74], eax
call fcn.5cda846a
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
mov dword [ebp - 0x9c], eax
call fcn.5cda8436
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0x44]
lea eax, [ecx + eax + 1]
cmp eax, 0x104
jb 0x5cda6971
jmp 0x5cda718d
mov eax, dword [ebp - 0xb4]
mov ecx, 0x104
sub ecx, dword [eax + 0x48]
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
lea eax, [ecx + eax + 0x462]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
mov dword [ebp - 0x74], eax
call fcn.5cda846a
mov dword [ebp - 0x44], 0x104
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x462
mov dword [ebp - 0x74], eax
call fcn.5cda846a
mov dword [ebp - 0x44], 0x104
mov eax, dword [ebp - 0xb4]
add eax, 0x462
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x35d
mov dword [ebp - 0x74], eax
call fcn.5cda846a
mov eax, dword [ebp - 0xb4]
add eax, 0x258
mov dword [ebp - 0x9c], eax
call fcn.5cda8436
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0x44]
lea eax, [ecx + eax + 1]
cmp eax, 0x104
jb 0x5cda6a35
jmp 0x5cda718b
mov eax, dword [ebp - 0xb4]
mov ecx, 0x104
sub ecx, dword [eax + 0x48]
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
lea eax, [ecx + eax + 0x462]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x258
mov dword [ebp - 0x74], eax
call fcn.5cda846a
mov dword [ebp - 0x44], 0x104
mov eax, dword [ebp - 0xb4]
add eax, 0x258
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x462
mov dword [ebp - 0x74], eax
call fcn.5cda846a
mov dword [ebp - 0x44], 0x104
mov eax, dword [ebp - 0xb4]
add eax, 0x462
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x35d
mov dword [ebp - 0x74], eax
call fcn.5cda846a
mov eax, dword [ebp - 0xb4]
add eax, 0x153
mov dword [ebp - 0x9c], eax
call fcn.5cda8436
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0x44]
lea eax, [ecx + eax + 1]
cmp eax, 0x104
jb 0x5cda6afd
jmp 0x5cda7189
mov eax, dword [ebp - 0xb4]
mov ecx, 0x104
sub ecx, dword [eax + 0x48]
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
lea eax, [ecx + eax + 0x462]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x153
mov dword [ebp - 0x74], eax
call fcn.5cda846a
mov dword [ebp - 0x44], 0x104
mov eax, dword [ebp - 0xb4]
add eax, 0x153
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x462
mov dword [ebp - 0x74], eax
call fcn.5cda846a
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0x7c], 1
jne 0x5cda6c96
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0x12c], 0
jne 0x5cda6b86
jmp 0x5cda7187
push 0x104
mov eax, dword [ebp - 0xb4]
add eax, 0x462
push eax
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 0x12c]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x5cda6bbc
cmp dword [ebp - 0x10], 0x104
jle 0x5cda6bc1
jmp 0x5cda7185
mov dword [ebp - 0x44], 0x104
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x462
mov dword [ebp - 0x74], eax
call fcn.5cda84c6
cmp dword [ebp - 0x10], 0
jne 0x5cda6bf5
jmp 0x5cda7183
push 0
push 0x80
push 2
push 0
push 0
push 0xc0000000
mov eax, dword [ebp - 0xb4]
add eax, 0x153
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 4]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 4], 0xffffffff
jne 0x5cda6c33
jmp 0x5cda7181
push 0x104
mov eax, dword [ebp - 0xb4]
add eax, 0x462
push eax
mov eax, dword [ebp - 0xb4]
add eax, 0x153
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 0x12c]
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
je 0x5cda6c6b
cmp dword [ebp - 0x10], 0x104
jle 0x5cda6c70
jmp 0x5cda717f
mov eax, dword [ebp - 0xb4]
add eax, 0x153
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
add eax, 0x462
mov dword [ebp - 0x74], eax
call fcn.5cda846a
jmp 0x5cda6cd4
push 0
push 0x80
push 2
push 0
push 0
push 0xc0000000
mov eax, dword [ebp - 0xb4]
add eax, 0x153
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 4]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 4], eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 4], 0xffffffff
jne 0x5cda6cd4
jmp 0x5cda717d
push 0
mov eax, dword [ebp - 0xb4]
push dword [eax + 0x14]
push 0
push 4
push 0
mov eax, dword [ebp - 0xb4]
push dword [eax + 4]
mov eax, dword [ebp - 0x40]
call dword [eax + 0x38]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 8], 0
jne 0x5cda6d0e
jmp 0x5cda717b
jmp 0x5cda6d49
push 0
mov eax, dword [ebp - 0xb4]
push dword [eax + 0x14]
push 0
push 4
push 0
mov eax, dword [ebp - 0xb4]
push dword [eax]
mov eax, dword [ebp - 0x40]
call dword [eax + 0x38]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 8], eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 8], 0
jne 0x5cda6d49
jmp 0x5cda7179
push 0
push 0
push 0
push 2
mov eax, dword [ebp - 0xb4]
push dword [eax + 8]
mov eax, dword [ebp - 0x40]
call dword [eax + 0x3c]
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0xc], eax
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0xc], 0
jne 0x5cda6d7a
jmp 0x5cda7177
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x10]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x6c]
mov eax, dword [eax + 0x54]
mov dword [ebp - 0x44], eax
call fcn.5cda8661
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x48], 0
jmp 0x5cda6dbf
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
inc eax
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x48], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
cmp eax, dword [ecx + 0x20]
jae 0x5cda6e1a
mov eax, dword [ebp - 0x54]
add eax, dword [ebp - 0x44]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov eax, dword [ecx + eax*8]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
mov eax, dword [ecx + eax*8 + 4]
mov dword [ebp - 0x44], eax
call fcn.5cda8661
jmp 0x5cda6dac
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x574], 0
je 0x5cda6ec4
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x48], 0
jmp 0x5cda6e4c
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
inc eax
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x48], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
cmp eax, dword [ecx + 0x20]
jae 0x5cda6ea0
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
cmp dword [ecx + eax*8], 0
je 0x5cda6e9e
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
push dword [ecx + eax*8]
push 0
push dword [ebp - 0x88]
call dword [ebp - 0x34]
jmp 0x5cda6e39
mov eax, dword [ebp - 0xb4]
push dword [eax + 0x574]
push 0
push dword [ebp - 0x88]
call dword [ebp - 0x34]
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x574], 0
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x10], 0
je 0x5cda6eee
mov eax, dword [ebp - 0xb4]
push dword [eax + 0x10]
push 0
push dword [ebp - 0x88]
call dword [ebp - 0x34]
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x10], 0
mov eax, dword [ebp - 0xb4]
movzx eax, byte [eax + 0x4d]
test eax, eax
je 0x5cda6f5d
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x14]
inc eax
shr eax, 1
mov dword [ebp - 0x5c], eax
push dword [ebp - 0x5c]
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x5c], eax
push dword [ebp - 0x5c]
push 0
call fcn.5cda8731
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x98], eax
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0xc]
mov ecx, dword [ebp - 0x98]
add eax, dword [ecx + 0x3c]
mov dword [ebp - 0x6c], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x5c]
add ecx, dword [eax + 0x14]
mov eax, dword [ebp - 0x6c]
mov dword [eax + 0x58], ecx
mov eax, dword [ebp - 0xb4]
push dword [eax + 0x14]
mov eax, dword [ebp - 0xb4]
push dword [eax + 0xc]
mov eax, dword [ebp - 0x40]
call dword [eax + 0x44]
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0xb4]
movzx eax, byte [eax + 0x4c]
test eax, eax
je 0x5cda716e
cmp dword [ebp - 0x10], 0
je 0x5cda716e
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0xc], 0
je 0x5cda6fb9
mov eax, dword [ebp - 0xb4]
push dword [eax + 0xc]
mov eax, dword [ebp - 0x40]
call dword [eax + 0x40]
mov eax, dword [ebp - 0xb4]
and dword [eax + 0xc], 0
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 8], 0
je 0x5cda6fdd
mov eax, dword [ebp - 0xb4]
push dword [eax + 8]
mov eax, dword [ebp - 0x40]
call dword [eax]
mov eax, dword [ebp - 0xb4]
and dword [eax + 8], 0
mov eax, dword [ebp - 0xb4]
cmp dword [eax], 0xffffffff
je 0x5cda6ffe
mov eax, dword [ebp - 0xb4]
push dword [eax]
mov eax, dword [ebp - 0x40]
call dword [eax]
mov eax, dword [ebp - 0xb4]
or dword [eax], 0xffffffff
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 4], 0xffffffff
je 0x5cda7022
mov eax, dword [ebp - 0xb4]
push dword [eax + 4]
mov eax, dword [ebp - 0x40]
call dword [eax]
mov eax, dword [ebp - 0xb4]
or dword [eax + 4], 0xffffffff
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0x7c], 2
jne 0x5cda70da
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0x120], 0
je 0x5cda70a8
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0x124], 0
je 0x5cda70a8
mov eax, dword [ebp - 0xb4]
add eax, 0x258
push eax
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 0x120]
test eax, eax
je 0x5cda70a8
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
push eax
mov eax, dword [ebp - 0xb4]
add eax, 0x153
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 0x120]
test eax, eax
je 0x5cda70a8
push 4
push 0
mov eax, dword [ebp - 0xb4]
add eax, 0x258
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 0x124]
jmp 0x5cda70d5
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0x124], 0
je 0x5cda70d5
push 4
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
push eax
mov eax, dword [ebp - 0xb4]
add eax, 0x153
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 0x124]
jmp 0x5cda716e
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0x7c], 1
jne 0x5cda716e
mov eax, dword [ebp - 0x40]
cmp dword [eax + 0x128], 0
je 0x5cda716e
mov eax, 0x407038
call fcn.5cda842d
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x9c]
mov dword [eax + 0x56c], ecx
mov eax, 0x40703f
call fcn.5cda842d
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0x9c]
mov dword [eax + 0x568], ecx
mov eax, dword [ebp - 0xb4]
push dword [eax + 0x568]
mov eax, dword [ebp - 0xb4]
add eax, 0x153
push eax
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
push eax
mov eax, dword [ebp - 0xb4]
push dword [eax + 0x56c]
mov eax, dword [ebp - 0x40]
call dword [eax + 0x128]
mov dword [ebp - 0x10], 1
jmp 0x5cda71c5
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
jmp 0x5cda71c1
and dword [ebp - 0x10], 0
cmp dword [ebp - 0xb4], 0
je 0x5cda732c
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x574], 0
je 0x5cda726f
mov eax, dword [ebp - 0xb4]
and dword [eax + 0x48], 0
jmp 0x5cda7204
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
inc eax
mov ecx, dword [ebp - 0xb4]
mov dword [ecx + 0x48], eax
mov eax, dword [ebp - 0xb4]
mov ecx, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
cmp eax, dword [ecx + 0x20]
jae 0x5cda7258
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
cmp dword [ecx + eax*8], 0
je 0x5cda7256
mov eax, dword [ebp - 0xb4]
mov eax, dword [eax + 0x48]
mov ecx, dword [ebp - 0xb4]
mov ecx, dword [ecx + 0x574]
push dword [ecx + eax*8]
push 0
push dword [ebp - 0x88]
call dword [ebp - 0x34]
jmp 0x5cda71f1
mov eax, dword [ebp - 0xb4]
push dword [eax + 0x574]
push 0
push dword [ebp - 0x88]
call dword [ebp - 0x34]
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x10], 0
je 0x5cda728f
mov eax, dword [ebp - 0xb4]
push dword [eax + 0x10]
push 0
push dword [ebp - 0x88]
call dword [ebp - 0x34]
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0xc], 0
je 0x5cda72aa
mov eax, dword [ebp - 0xb4]
push dword [eax + 0xc]
mov eax, dword [ebp - 0x40]
call dword [eax + 0x40]
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 8], 0
je 0x5cda72c4
mov eax, dword [ebp - 0xb4]
push dword [eax + 8]
mov eax, dword [ebp - 0x40]
call dword [eax]
mov eax, dword [ebp - 0xb4]
cmp dword [eax], 0xffffffff
je 0x5cda72dc
mov eax, dword [ebp - 0xb4]
push dword [eax]
mov eax, dword [ebp - 0x40]
call dword [eax]
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 4], 0xffffffff
je 0x5cda72f6
mov eax, dword [ebp - 0xb4]
push dword [eax + 4]
mov eax, dword [ebp - 0x40]
call dword [eax]
mov eax, dword [ebp - 0xb4]
cmp dword [eax + 0x1c], 0xffffffff
je 0x5cda731b
mov eax, dword [ebp - 0xb4]
push dword [eax + 0x1c]
mov eax, dword [ebp - 0xb4]
add eax, 0x4e
push eax
mov eax, dword [ebp - 0x40]
call dword [eax + 0x1c]
push dword [ebp - 0xb4]
push 0
push dword [ebp - 0x88]
call dword [ebp - 0x34]
ret