Function at 0x457715
Capabilities:
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x729a02
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x12d0
call fcn.006ee5e0
push esi
mov dword [ebp - 0x12cc], ecx
mov ecx, dword [ebp - 0x12cc]
call fcn.0044e7af
mov eax, dword [ebp - 0x12cc]
mov dword [eax + 0x1f4], 0
mov ecx, dword [ebp - 0x12cc]
cmp dword [ecx + 0x1ec], 0
je 0x457799
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x1ec]
mov dword [ebp - 0x1288], eax
mov ecx, dword [ebp - 0x1288]
push ecx
call fcn.007090f2
add esp, 4
mov edx, dword [ebp - 0x12cc]
mov dword [edx + 0x1ec], 0
mov ecx, dword [ebp - 0x12cc]
call fcn.0044e90f
mov eax, dword [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.DLL_GetFileAttributesA]
and eax, 1
test eax, eax
je 0x45781f
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x214
push ecx
push 0x20
mov edx, dword [ebp + 8]
push edx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov eax, dword [ebp - 0x12cc]
mov edx, dword [eax + 0x204]
call dword [edx + 0x20]
test eax, eax
jne 0x45781d
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x224
call fcn.00404cf0
push eax
mov eax, dword [ebp - 0x12cc]
mov dword [eax + 0x220], 0xffffffff
push 0xffffffffffffffff
mov ecx, dword [ebp - 0x12cc]
mov edx, dword [ecx + 0x21c]
push edx
call fcn.0070ae1e
jmp 0x457886
mov eax, dword [ebp - 0x12cc]
add eax, 0x214
push eax
push 0x22
mov ecx, dword [ebp + 8]
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x20]
test eax, eax
jne 0x457886
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x224
call fcn.00404cf0
push eax
mov ecx, dword [ebp - 0x12cc]
mov dword [ecx + 0x220], 0xffffffff
push 0xffffffffffffffff
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x21c]
push eax
call fcn.0070ae1e
push 8
lea ecx, [ebp - 0x628]
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x34]
cmp eax, 8
jne 0x4578d7
mov ecx, dword [ebp - 0x628]
and ecx, 0xffff
cmp ecx, 0x4949
je 0x4578f2
mov edx, dword [ebp - 0x628]
and edx, 0xffff
cmp edx, 0x4d4d
je 0x4578f2
mov dword [ebp - 0x128c], 0xe017
push 0x75e940
lea eax, [ebp - 0x128c]
push eax
call fcn.006ed9b8
mov ecx, dword [ebp - 0x628]
and ecx, 0xffff
cmp ecx, 0x4949
jne 0x45790f
mov dword [ebp - 0x1c], 0
jmp 0x457916
mov dword [ebp - 0x1c], 1
mov edx, dword [ebp - 0x624]
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x1c], 0
je 0x457934
mov eax, dword [ebp - 0x14]
push eax
call fcn.00461c80
add esp, 4
mov dword [ebp - 0x14], eax
push 0
mov ecx, dword [ebp - 0x14]
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x28]
push 0x601
lea ecx, [ebp - 0x628]
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x34]
mov dword [ebp - 0x24], eax
mov cx, word [ebp - 0x628]
mov word [ebp - 0x10], cx
cmp dword [ebp - 0x1c], 0
je 0x4579a1
mov dx, word [ebp - 0x10]
push edx
call fcn.00461c40
add esp, 4
mov word [ebp - 0x10], ax
mov eax, dword [ebp - 0x10]
and eax, 0xffff
cmp eax, 4
jl 0x4579c2
mov ecx, dword [ebp - 0x10]
and ecx, 0xffff
imul ecx, ecx, 0xc
add ecx, 2
cmp dword [ebp - 0x24], ecx
jge 0x4579dd
mov dword [ebp - 0x1290], 0xe018
push 0x75e940
lea edx, [ebp - 0x1290]
push edx
call fcn.006ed9b8
mov eax, dword [ebp - 0x12cc]
mov dword [eax + 0x1f8], 0
mov dword [ebp - 0x20], 0
jmp 0x4579ff
mov ecx, dword [ebp - 0x20]
add ecx, 1
mov dword [ebp - 0x20], ecx
mov edx, dword [ebp - 0x10]
and edx, 0xffff
cmp dword [ebp - 0x20], edx
jge 0x45886c
mov eax, dword [ebp - 0x20]
imul eax, eax, 0xc
lea ecx, [ebp + eax - 0x626]
mov edx, dword [ecx]
mov dword [ebp - 0x638], edx
mov eax, dword [ecx + 4]
mov dword [ebp - 0x634], eax
mov ecx, dword [ecx + 8]
mov dword [ebp - 0x630], ecx
cmp dword [ebp - 0x1c], 0
je case.default.0x457ab9
mov dx, word [ebp - 0x638]
push edx
call fcn.00461c40
add esp, 4
mov word [ebp - 0x638], ax
mov ax, word [ebp - 0x636]
push eax
call fcn.00461c40
add esp, 4
mov word [ebp - 0x636], ax
mov ecx, dword [ebp - 0x634]
push ecx
call fcn.00461c80
add esp, 4
mov dword [ebp - 0x634], eax
mov edx, dword [ebp - 0x636]
and edx, 0xffff
mov dword [ebp - 0x12d0], edx
mov eax, dword [ebp - 0x12d0]
sub eax, 1
mov dword [ebp - 0x12d0], eax
cmp dword [ebp - 0x12d0], 4
ja case.default.0x457ab9
mov ecx, dword [ebp - 0x12d0]
jmp dword [ecx*4 + 0x4588ae]
cmp dword [ebp - 0x634], 4
ja case.0x457ab9.3
jmp case.default.0x457ab9
mov edx, dword [ebp - 0x630]
push edx
call fcn.00461c80
add esp, 4
mov dword [ebp - 0x630], eax
jmp case.default.0x457ab9
cmp dword [ebp - 0x634], 1
jne 0x457b26
mov eax, dword [ebp - 0x20]
imul eax, eax, 0xc
mov cx, word [ebp + eax - 0x61e]
mov word [ebp - 0x63c], cx
mov dx, word [ebp - 0x63c]
push edx
call fcn.00461c40
add esp, 4
and eax, 0xffff
mov dword [ebp - 0x630], eax
jmp case.default.0x457ab9
cmp dword [ebp - 0x634], 2
jne 0x457b94
mov eax, dword [ebp - 0x20]
imul eax, eax, 0xc
mov cx, word [ebp + eax - 0x61e]
mov word [ebp - 0x640], cx
mov edx, dword [ebp - 0x20]
imul edx, edx, 0xc
mov ax, word [ebp + edx - 0x61c]
mov word [ebp - 0x644], ax
mov cx, word [ebp - 0x640]
push ecx
call fcn.00461c40
add esp, 4
mov si, ax
and esi, 0xffff
mov dx, word [ebp - 0x644]
push edx
call fcn.00461c40
add esp, 4
and eax, 0xffff
shr eax, 0x10
or esi, eax
mov dword [ebp - 0x630], esi
jmp case.default.0x457ab9
mov eax, dword [ebp - 0x630]
push eax
call fcn.00461c80
add esp, 4
mov dword [ebp - 0x630], eax
mov ecx, dword [ebp - 0x638]
and ecx, 0xffff
mov dword [ebp - 0x12d4], ecx
cmp dword [ebp - 0x12d4], 0x111
jg 0x457c03
cmp dword [ebp - 0x12d4], 0x111
je 0x457e88
mov edx, dword [ebp - 0x12d4]
sub edx, 0x100
mov dword [ebp - 0x12d4], edx
cmp dword [ebp - 0x12d4], 6
ja case.0x457bfc.4
mov eax, dword [ebp - 0x12d4]
jmp dword [eax*4 + 0x4588c2]
cmp dword [ebp - 0x12d4], 0x140
jg 0x457c44
cmp dword [ebp - 0x12d4], 0x140
je 0x4580e6
cmp dword [ebp - 0x12d4], 0x11a
je 0x458011
cmp dword [ebp - 0x12d4], 0x11c
je 0x4580b6
jmp case.0x457bfc.4
cmp dword [ebp - 0x12d4], 0x9c41
je 0x458402
jmp case.0x457bfc.4
mov ecx, dword [ebp - 0x12cc]
mov edx, dword [ebp - 0x630]
mov dword [ecx + 0x1d4], edx
jmp case.0x457bfc.4
mov eax, dword [ebp - 0x12cc]
mov ecx, dword [ebp - 0x630]
mov dword [eax + 0x1d8], ecx
jmp case.0x457bfc.4
cmp dword [ebp - 0x634], 1
jne 0x457ca7
mov edx, dword [ebp - 0x12cc]
mov eax, dword [ebp - 0x630]
mov dword [edx + 0x1dc], eax
jmp 0x457df1
cmp dword [ebp - 0x634], 3
jne 0x457dd6
push 0
mov ecx, dword [ebp - 0x630]
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x28]
push 6
lea ecx, [ebp - 0x660]
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x34]
cmp eax, 6
je 0x457d1c
mov dword [ebp - 0x1294], 0xe018
push 0x75e940
lea ecx, [ebp - 0x1294]
push ecx
call fcn.006ed9b8
cmp dword [ebp - 0x1c], 0
je 0x457d67
mov dx, word [ebp - 0x660]
push edx
call fcn.00461c40
add esp, 4
mov word [ebp - 0x660], ax
mov ax, word [ebp - 0x65e]
push eax
call fcn.00461c40
add esp, 4
mov word [ebp - 0x65e], ax
mov cx, word [ebp - 0x65c]
push ecx
call fcn.00461c40
add esp, 4
mov word [ebp - 0x65c], ax
mov edx, dword [ebp - 0x660]
and edx, 0xffff
mov eax, dword [ebp - 0x65e]
and eax, 0xffff
cmp edx, eax
jne 0x457d9e
mov ecx, dword [ebp - 0x65e]
and ecx, 0xffff
mov edx, dword [ebp - 0x65c]
and edx, 0xffff
cmp ecx, edx
je 0x457db9
mov dword [ebp - 0x1298], 0xe019
push 0x75e940
lea eax, [ebp - 0x1298]
push eax
call fcn.006ed9b8
mov ecx, dword [ebp - 0x660]
and ecx, 0xffff
imul ecx, ecx, 3
mov edx, dword [ebp - 0x12cc]
mov dword [edx + 0x1dc], ecx
jmp 0x457df1
mov dword [ebp - 0x129c], 0xe019
push 0x75e940
lea eax, [ebp - 0x129c]
push eax
call fcn.006ed9b8
jmp case.0x457bfc.4
mov ecx, dword [ebp - 0x12cc]
mov edx, dword [ebp - 0x630]
mov dword [ecx + 0x1e8], edx
jmp case.0x457bfc.4
cmp dword [ebp - 0x630], 0
jne 0x457e49
mov eax, dword [ebp - 0x12cc]
cmp dword [eax + 0x1dc], 1
jne 0x457e37
mov ecx, dword [ebp - 0x12cc]
mov dword [ecx + 0x1f8], 0
jmp 0x457e47
mov edx, dword [ebp - 0x12cc]
mov dword [edx + 0x1f8], 1
jmp 0x457e83
cmp dword [ebp - 0x630], 1
jne 0x457e83
mov eax, dword [ebp - 0x12cc]
cmp dword [eax + 0x1dc], 1
jne 0x457e73
mov ecx, dword [ebp - 0x12cc]
mov dword [ecx + 0x1f8], 1
jmp 0x457e83
mov edx, dword [ebp - 0x12cc]
mov dword [edx + 0x1f8], 0
jmp case.0x457bfc.4
mov eax, dword [ebp - 0x636]
and eax, 0xffff
cmp eax, 3
jne 0x457f57
cmp dword [ebp - 0x634], 2
ja 0x457ec2
mov ecx, dword [ebp - 0x630]
and ecx, 0xffff
mov edx, dword [ebp - 0x12cc]
mov dword [edx + 0x238], ecx
jmp 0x457f52
push 0
mov eax, dword [ebp - 0x630]
push eax
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x28]
push 2
lea ecx, [ebp - 0x18]
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x34]
cmp eax, 2
je 0x457f27
mov dword [ebp - 0x12a0], 0xe018
push 0x75e940
lea ecx, [ebp - 0x12a0]
push ecx
call fcn.006ed9b8
cmp dword [ebp - 0x1c], 0
je 0x457f3e
mov dx, word [ebp - 0x18]
push edx
call fcn.00461c40
add esp, 4
mov word [ebp - 0x18], ax
mov eax, dword [ebp - 0x18]
and eax, 0xffff
mov ecx, dword [ebp - 0x12cc]
mov dword [ecx + 0x238], eax
jmp 0x45800c
cmp dword [ebp - 0x634], 1
jne 0x457f77
mov edx, dword [ebp - 0x12cc]
mov eax, dword [ebp - 0x630]
mov dword [edx + 0x238], eax
jmp 0x45800c
push 0
mov ecx, dword [ebp - 0x630]
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x28]
push 4
lea ecx, [ebp - 0x62c]
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x34]
cmp eax, 4
je 0x457fdf
mov dword [ebp - 0x12a4], 0xe018
push 0x75e940
lea ecx, [ebp - 0x12a4]
push ecx
call fcn.006ed9b8
cmp dword [ebp - 0x1c], 0
je 0x457ffa
mov edx, dword [ebp - 0x62c]
push edx
call fcn.00461c80
add esp, 4
mov dword [ebp - 0x62c], eax
mov eax, dword [ebp - 0x12cc]
mov ecx, dword [ebp - 0x62c]
mov dword [eax + 0x238], ecx
jmp case.0x457bfc.4
push 0
mov edx, dword [ebp - 0x630]
push edx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov eax, dword [ebp - 0x12cc]
mov edx, dword [eax + 0x204]
call dword [edx + 0x28]
push 8
lea eax, [ebp - 0x668]
push eax
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x34]
cmp eax, 8
jne 0x4580b1
cmp dword [ebp - 0x1c], 0
je 0x45808e
mov ecx, dword [ebp - 0x668]
push ecx
call fcn.00461c80
add esp, 4
mov dword [ebp - 0x668], eax
mov edx, dword [ebp - 0x664]
push edx
call fcn.00461c80
add esp, 4
mov dword [ebp - 0x664], eax
cmp dword [ebp - 0x664], 0
je 0x4580b1
mov eax, dword [ebp - 0x668]
xor edx, edx
div dword [ebp - 0x664]
mov ecx, dword [ebp - 0x12cc]
mov dword [ecx + 0x1e4], eax
jmp case.0x457bfc.4
cmp dword [ebp - 0x630], 2
jne 0x4580d1
mov edx, dword [ebp - 0x12cc]
mov dword [edx + 0x1e0], 3
jmp 0x4580e1
mov eax, dword [ebp - 0x12cc]
mov dword [eax + 0x1e0], 1
jmp case.0x457bfc.4
cmp dword [ebp - 0x634], 0x300
jne 0x4583fd
mov ecx, dword [ebp - 0x12cc]
cmp dword [ecx + 0x1ec], 0
jne 0x45812a
push 0x400
call fcn.007090c9
add esp, 4
mov dword [ebp - 0x12a8], eax
mov edx, dword [ebp - 0x12cc]
mov eax, dword [ebp - 0x12a8]
mov dword [edx + 0x1ec], eax
mov ecx, dword [ebp - 0x12cc]
cmp dword [ecx + 0x1ec], 0
jne 0x45813e
call fcn.00701b90
push 0
mov edx, dword [ebp - 0x630]
push edx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov eax, dword [ebp - 0x12cc]
mov edx, dword [eax + 0x204]
call dword [edx + 0x28]
push 0x600
lea eax, [ebp - 0x126c]
push eax
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x34]
cmp eax, 0x600
je 0x4581ab
mov dword [ebp - 0x12ac], 0xe018
push 0x75e940
lea ecx, [ebp - 0x12ac]
push ecx
call fcn.006ed9b8
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x1ec]
mov dword [ebp - 0x66c], eax
cmp dword [ebp - 0x1c], 0
je 0x458264
mov dword [ebp - 0x1270], 0
jmp 0x4581e2
mov ecx, dword [ebp - 0x1270]
add ecx, 1
mov dword [ebp - 0x1270], ecx
cmp dword [ebp - 0x1270], 0x100
jge 0x45825f
mov edx, dword [ebp - 0x1270]
xor eax, eax
mov ax, word [ebp + edx*2 - 0x126c]
sar eax, 8
mov ecx, dword [ebp - 0x66c]
mov byte [ecx + 2], al
mov edx, dword [ebp - 0x1270]
xor eax, eax
mov ax, word [ebp + edx*2 - 0x106c]
sar eax, 8
mov ecx, dword [ebp - 0x66c]
mov byte [ecx + 1], al
mov edx, dword [ebp - 0x1270]
xor eax, eax
mov ax, word [ebp + edx*2 - 0xe6c]
sar eax, 8
mov ecx, dword [ebp - 0x66c]
mov byte [ecx], al
mov edx, dword [ebp - 0x66c]
mov byte [edx + 3], 0
mov eax, dword [ebp - 0x66c]
add eax, 4
mov dword [ebp - 0x66c], eax
jmp 0x4581d3
jmp 0x4583fd
mov dword [ebp - 0x1278], 0
mov dword [ebp - 0x1274], 0
jmp 0x458289
mov ecx, dword [ebp - 0x1274]
add ecx, 1
mov dword [ebp - 0x1274], ecx
cmp dword [ebp - 0x1274], 0x100
jge 0x458346
mov edx, dword [ebp - 0x1274]
xor eax, eax
mov ax, word [ebp + edx*2 - 0x126c]
and eax, 0xff
mov ecx, dword [ebp - 0x66c]
mov byte [ecx + 2], al
mov edx, dword [ebp - 0x1274]
xor eax, eax
mov ax, word [ebp + edx*2 - 0x106c]
and eax, 0xff
mov ecx, dword [ebp - 0x66c]
mov byte [ecx + 1], al
mov edx, dword [ebp - 0x1274]
xor eax, eax
mov ax, word [ebp + edx*2 - 0xe6c]
and eax, 0xff
mov ecx, dword [ebp - 0x66c]
mov byte [ecx], al
mov edx, dword [ebp - 0x66c]
mov byte [edx + 3], 0
mov eax, dword [ebp - 0x66c]
xor ecx, ecx
mov cl, byte [eax + 2]
test ecx, ecx
jne 0x458328
mov edx, dword [ebp - 0x66c]
xor eax, eax
mov al, byte [edx + 1]
test eax, eax
jne 0x458328
mov ecx, dword [ebp - 0x66c]
xor edx, edx
mov dl, byte [ecx]
test edx, edx
je 0x458332
mov dword [ebp - 0x1278], 1
mov eax, dword [ebp - 0x66c]
add eax, 4
mov dword [ebp - 0x66c], eax
jmp 0x45827a
cmp dword [ebp - 0x1278], 0
jne 0x4583fd
mov ecx, dword [ebp - 0x66c]
sub ecx, 0x400
mov dword [ebp - 0x66c], ecx
mov dword [ebp - 0x127c], 0
jmp 0x458380
mov edx, dword [ebp - 0x127c]
add edx, 1
mov dword [ebp - 0x127c], edx
cmp dword [ebp - 0x127c], 0x100
jge 0x4583fd
mov eax, dword [ebp - 0x127c]
xor ecx, ecx
mov cx, word [ebp + eax*2 - 0x126c]
sar ecx, 8
mov edx, dword [ebp - 0x66c]
mov byte [edx + 2], cl
mov eax, dword [ebp - 0x127c]
xor ecx, ecx
mov cx, word [ebp + eax*2 - 0x106c]
sar ecx, 8
mov edx, dword [ebp - 0x66c]
mov byte [edx + 1], cl
mov eax, dword [ebp - 0x127c]
xor ecx, ecx
mov cx, word [ebp + eax*2 - 0xe6c]
sar ecx, 8
mov edx, dword [ebp - 0x66c]
mov byte [edx], cl
mov eax, dword [ebp - 0x66c]
mov byte [eax + 3], 0
mov ecx, dword [ebp - 0x66c]
add ecx, 4
mov dword [ebp - 0x66c], ecx
jmp 0x458371
jmp case.0x457bfc.4
push 0
mov edx, dword [ebp - 0x634]
mov eax, dword [ebp - 0x630]
lea ecx, [eax + edx - 0x14]
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x28]
push 0x14
lea ecx, [ebp - 0x658]
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x34]
cmp dword [ebp - 0x658], 0x87651234
jne case.0x457bfc.4
cmp dword [ebp - 0x654], 0x78
jg case.0x457bfc.4
cmp dword [ebp - 0x654], 1
jl case.0x457bfc.4
cmp dword [ebp - 0x650], 0x78
jg case.0x457bfc.4
cmp dword [ebp - 0x650], 1
jl case.0x457bfc.4
mov ecx, dword [ebp - 0x12cc]
cmp dword [ecx + 0x1f0], 0
je 0x4584d8
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x1f0]
mov dword [ebp - 0x12b0], eax
mov ecx, dword [ebp - 0x12b0]
push ecx
call fcn.007090f2
add esp, 4
mov edx, dword [ebp - 0x12cc]
mov dword [edx + 0x1f0], 0
mov eax, dword [ebp - 0x654]
imul eax, eax, 3
add eax, 3
cdq
and edx, 3
add eax, edx
sar eax, 2
shl eax, 2
imul eax, dword [ebp - 0x650]
add eax, 8
push eax
call fcn.007090c9
add esp, 4
mov dword [ebp - 0x12b4], eax
mov eax, dword [ebp - 0x12cc]
mov ecx, dword [ebp - 0x12b4]
mov dword [eax + 0x1f0], ecx
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x1f0]
mov ecx, dword [ebp - 0x654]
mov dword [eax], ecx
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x1f0]
mov ecx, dword [ebp - 0x650]
mov dword [eax + 4], ecx
push 0
mov edx, dword [ebp - 0x630]
push edx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov eax, dword [ebp - 0x12cc]
mov edx, dword [eax + 0x204]
call dword [edx + 0x28]
mov eax, dword [ebp - 0x654]
imul eax, eax, 3
add eax, 3
cdq
and edx, 3
add eax, edx
sar eax, 2
shl eax, 2
imul eax, dword [ebp - 0x650]
push eax
mov eax, dword [ebp - 0x12cc]
mov ecx, dword [eax + 0x1f0]
add ecx, 8
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x34]
mov ecx, eax
mov eax, dword [ebp - 0x654]
imul eax, eax, 3
add eax, 3
cdq
and edx, 3
add eax, edx
sar eax, 2
shl eax, 2
imul eax, dword [ebp - 0x650]
cmp ecx, eax
jne 0x458606
mov eax, dword [ebp - 0x654]
imul eax, eax, 3
add eax, 3
cdq
and edx, 3
add eax, edx
sar eax, 2
shl eax, 2
imul eax, dword [ebp - 0x650]
add eax, 8
mov edx, dword [ebp - 0x12cc]
mov dword [edx + 0x1f4], eax
mov eax, dword [ebp - 0x648]
push eax
mov ecx, dword [ebp - 0x630]
add ecx, dword [ebp - 0x634]
push ecx
mov ecx, dword [ebp - 0x12cc]
call fcn.00460f7e
test eax, eax
jne 0x458644
mov dword [ebp - 0x12b8], 0xd6
push 0x75e940
lea edx, [ebp - 0x12b8]
push edx
call fcn.006ed9b8
push 0
mov eax, dword [ebp - 0x630]
add eax, dword [ebp - 0x634]
push eax
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x28]
mov ecx, dword [ebp - 0x12cc]
call fcn.0044e7af
mov ecx, dword [ebp - 0x648]
push ecx
push 2
mov ecx, dword [ebp - 0x12cc]
call fcn.00460338
mov edx, dword [ebp - 0x12cc]
cmp dword [edx + 0x1ac], 0
jne 0x4586af
mov eax, dword [ebp - 0x12cc]
cmp dword [eax + 0x1b0], 0
je case.0x457bfc.4
mov ecx, dword [ebp - 0x12cc]
cmp dword [ecx + 0x1ac], 0
je 0x45878b
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x1ac]
mov dword [ebp - 0x1280], eax
mov ecx, dword [ebp - 0x1280]
imul ecx, ecx, 0xc
push ecx
call fcn.007090c9
add esp, 4
mov dword [ebp - 0x12c0], eax
mov dword [ebp - 4], 0
cmp dword [ebp - 0x12c0], 0
je 0x458724
push fcn.004065b0
mov edx, dword [ebp - 0x1280]
push edx
push 0xc
mov eax, dword [ebp - 0x12c0]
push eax
call fcn.004067d0
mov ecx, dword [ebp - 0x12c0]
mov dword [ebp - 0x12d8], ecx
jmp 0x45872e
mov dword [ebp - 0x12d8], 0
mov edx, dword [ebp - 0x12d8]
mov dword [ebp - 0x12bc], edx
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x12cc]
mov ecx, dword [ebp - 0x12bc]
mov dword [eax + 0x1c4], ecx
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x1ac]
imul eax, eax, 0xc
push eax
mov ecx, dword [ebp - 0x12cc]
mov edx, dword [ecx + 0x1c4]
push edx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov eax, dword [ebp - 0x12cc]
mov edx, dword [eax + 0x204]
call dword [edx + 0x34]
mov eax, dword [ebp - 0x12cc]
cmp dword [eax + 0x1b0], 0
je case.0x457bfc.4
mov ecx, dword [ebp - 0x12cc]
mov edx, dword [ecx + 0x1b0]
mov dword [ebp - 0x1284], edx
mov eax, dword [ebp - 0x1284]
imul eax, eax, 0xc
push eax
call fcn.007090c9
add esp, 4
mov dword [ebp - 0x12c8], eax
mov dword [ebp - 4], 1
cmp dword [ebp - 0x12c8], 0
je 0x458800
push fcn.004065b0
mov ecx, dword [ebp - 0x1284]
push ecx
push 0xc
mov edx, dword [ebp - 0x12c8]
push edx
call fcn.004067d0
mov eax, dword [ebp - 0x12c8]
mov dword [ebp - 0x12dc], eax
jmp 0x45880a
mov dword [ebp - 0x12dc], 0
mov ecx, dword [ebp - 0x12dc]
mov dword [ebp - 0x12c4], ecx
mov dword [ebp - 4], 0xffffffff
mov edx, dword [ebp - 0x12cc]
mov eax, dword [ebp - 0x12c4]
mov dword [edx + 0x1c8], eax
mov ecx, dword [ebp - 0x12cc]
mov edx, dword [ecx + 0x1b0]
imul edx, edx, 0xc
push edx
mov eax, dword [ebp - 0x12cc]
mov ecx, dword [eax + 0x1c8]
push ecx
mov ecx, dword [ebp - 0x12cc]
add ecx, 0x204
mov edx, dword [ebp - 0x12cc]
mov eax, dword [edx + 0x204]
call dword [eax + 0x34]
jmp 0x4579f6
mov ecx, dword [ebp - 0x12cc]
cmp dword [ecx + 0x1e4], 0xa
jl 0x45888d
mov edx, dword [ebp - 0x12cc]
cmp dword [edx + 0x1e4], 0x2710
jle 0x45889d
mov eax, dword [ebp - 0x12cc]
mov dword [eax + 0x1e4], 0x12c
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
ret 4