Function at 0x475190
Capabilities:
Set file attributes

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffff004
push eax
add esp, 0xfffffc78
push ebx
push esi
push edi
mov edi, 0x4bd888
mov eax, 0x49a030
call fcn.00482ea0
mov dword [ebp - 0xe28], 0xffffffff
xor edx, edx
xor eax, eax
mov dword [ebp - 0xe2c], edx
xor esi, esi
mov word [ebp - 0xe34], 0
mov word [ebp - 0xe36], 0
mov dword [ebp - 0xe44], eax
mov dx, word [edi + 0xc7fe]
mov word [ebp - 0xe32], dx
mov word [ebp - 0xdfc], 8
cmp byte [edi + 0xcb04], 0
je 0x475209
movzx edx, word [ebp - 0xe32]
jmp 0x47520e
mov edx, 0x40
lea eax, [ebp - 0xc]
call fcn.00476218
inc dword [ebp - 0xdf0]
mov word [ebp - 0xdfc], 0x14
mov word [ebp - 0xdfc], 0x20
lea eax, [ebp - 0x104]
call fcn.0040e004
add dword [ebp - 0xdf0], 4
mov word [ebp - 0xdfc], 0x14
mov edx, dword [ebp - 0xc]
xor ecx, ecx
mov dword [edi + 0x760], edx
mov dword [edi + 0x34], 1
mov dword [edi + 0xc83c], ecx
jmp 0x47607b
xor eax, eax
mov dword [ebp - 0xe18], eax
jmp 0x47556a
dec word [ebp - 0xe32]
imul edx, dword [ebp - 0xe18], 0x1c
add edx, dword [ebp - 0xc]
mov dword [edi + 0x760], edx
lea eax, [edi + 0x50]
mov edx, 4
call fcn.00474060
test eax, eax
jne 0x4752ae
mov word [ebp - 0xe32], 0
mov esi, 0x33
jmp 0x47558e
push 4
lea eax, [edi + 0xc7a5]
push eax
lea edx, [edi + 0x50]
push edx
call fcn.00482afc
add esp, 0xc
test eax, eax
je 0x4752f2
mov eax, 0x2ad
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 8
mov esi, 3
mov word [ebp - 0xe32], 0
jmp 0x47558e
call fcn.00472804
mov ebx, eax
test eax, eax
je 0x47530d
mov word [ebp - 0xe32], 0
mov esi, ebx
jmp 0x47558e
movzx eax, word [edi + 0xc7e4]
mov edx, 2
call fcn.0047461c
mov ebx, eax
test eax, eax
je 0x47535a
cmp esi, ebx
jge 0x47532a
mov esi, ebx
dec ebx
jle 0x47535a
lea eax, [edi + 0xc870]
push eax
mov eax, 0x2ab
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
mov word [ebp - 0xe32], 0
add esp, 0xc
jmp 0x47558e
movzx eax, word [edi + 0xc7e6]
mov edx, 3
call fcn.0047461c
mov ebx, eax
test eax, eax
je 0x4753a7
cmp esi, ebx
jge 0x475377
mov esi, ebx
dec ebx
jle 0x4753a7
lea eax, [edi + 0xc870]
push eax
mov eax, 0x2ab
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
mov word [ebp - 0xe32], 0
add esp, 0xc
jmp 0x47558e
movzx eax, word [edi + 0xc7e8]
xor edx, edx
call fcn.0047461c
mov ebx, eax
test eax, eax
je 0x4753f1
cmp esi, ebx
jge 0x4753c1
mov esi, ebx
dec ebx
jle 0x4753f1
lea eax, [edi + 0xc870]
push eax
mov eax, 0x2ab
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
mov word [ebp - 0xe32], 0
add esp, 0xc
jmp 0x47558e
test byte [edi + 0xc7f0], 0x10
je 0x475455
xor eax, eax
mov al, byte [edi + 0xc7cd]
mov word [ebp - 0xdfc], 0x14
test eax, eax
je 0x475414
cmp eax, 0xb
jne 0x475455
lea edx, [edi + 0xc870]
push edx
call fcn.00482a30
pop ecx
dec eax
test eax, eax
jl 0x475455
xor ecx, ecx
mov cl, byte [edi + eax + 0xc870]
cmp ecx, 0x2f
je 0x475455
movzx eax, byte [edi + eax + 0xc870]
cmp eax, 0x5c
je 0x475455
push 0x499fc4
lea edx, [edi + 0xc870]
push edx
call fcn.00482924
add esp, 8
mov word [ebp - 0xdfc], 0x2c
lea eax, [ebp - 0x1b8]
call fcn.00401f4c
inc dword [ebp - 0xdf0]
lea eax, [ebp - 0x1a4]
call fcn.00411d14
lea eax, [ebp - 0x180]
call fcn.00411d14
lea eax, [ebp - 0x15c]
call fcn.00411d14
lea eax, [ebp - 0x138]
call fcn.00411d14
inc dword [ebp - 0xdf0]
lea edx, [ebp - 0xde8]
mov word [ebp - 0xdfc], 0x38
push 0xce4
push 0
push edx
call fcn.00482880
add esp, 0xc
lea ecx, [edi + 0xc870]
push ecx
lea eax, [ebp - 0xdb8]
push eax
call fcn.00482a00
add esp, 8
lea eax, [ebp - 0xdb8]
xor edx, edx
call fcn.0040b160
movzx ecx, word [edi + 0xc7d6]
movzx eax, word [edi + 0xc7d4]
shl ecx, 0x10
lea edx, [ebp - 0xde8]
or ecx, eax
mov eax, 0x4a5e34
mov dword [ebp - 0xdcc], ecx
xor ecx, ecx
push 4
call fcn.0042297c
test eax, eax
setne al
and eax, 1
test al, al
je 0x475545
call fcn.00474a48
test eax, eax
je 0x47553e
lea edx, [edi + 0xc870]
lea eax, [ebp - 0x104]
call fcn.0040e1cc
inc dword [ebp - 0xe18]
jmp 0x475545
inc word [ebp - 0xe34]
dec dword [ebp - 0xdf0]
dec dword [ebp - 0xdf0]
lea eax, [ebp - 0x1b8]
mov edx, 2
call fcn.00401780
mov word [ebp - 0xdfc], 0x14
cmp word [ebp - 0xe32], 0
je 0x47558e
cmp dword [ebp - 0xe18], 0x40
jl 0x475273
cmp byte [edi + 0xcb04], 0
jne 0x475273
mov ecx, dword [edi + 0xc790]
mov dword [ebp - 0xe3c], ecx
mov eax, dword [edi + 0xc770]
mov dword [ebp - 0xe10], eax
mov edx, dword [edi + 0xc774]
mov dword [ebp - 0xe1c], edx
cmp byte [edi + 0xcb04], 0
je 0x4755e3
xor ecx, ecx
mov dword [edi + 0xcb08], ecx
mov edx, 0x499fc6
mov eax, 0x4a84b8
call fcn.0040ac28
push dword [edi + 0xc788]
call fcn.00484508
pop ecx
call fcn.00473d84
xor ecx, ecx
mov dword [ebp - 0xe14], ecx
mov eax, dword [ebp - 0xe14]
cmp eax, dword [ebp - 0xe18]
jge 0x476031
mov edx, dword [ebp - 0xe2c]
shl edx, 6
add edx, dword [ebp - 0xe14]
mov dword [ebp - 0xe28], edx
imul ecx, dword [ebp - 0xe14], 0x1c
add ecx, dword [ebp - 0xc]
mov dword [edi + 0x760], ecx
lea eax, [ebp - 0x104]
call fcn.0040e314
mov dword [ebp - 0xe48], eax
mov word [ebp - 0xdfc], 0x14
cmp byte [edi + 0xcb04], 0
je 0x4756ce
mov edx, dword [edi + 0x760]
mov ecx, dword [edx + 0x10]
cmp ecx, dword [edi + 0xcb08]
je 0x4756ce
mov eax, dword [edi + 0x760]
mov edx, dword [eax + 0x10]
movzx ecx, word [edi + 0xc7f8]
cmp edx, ecx
jne 0x47567f
mov edx, 0x499fca
mov eax, 0x4a84b8
call fcn.0040ac28
jmp 0x4756ae
mov ecx, dword [edi + 0x760]
lea edx, [ebp - 0xe54]
mov eax, dword [ecx + 0x10]
inc eax
push eax
push str.z_02d
push edx
call fcn.00486578
add esp, 0xc
lea edx, [ebp - 0xe54]
mov eax, 0x4a84b8
call fcn.0040ac28
mov ecx, dword [edi + 0x760]
mov eax, dword [ecx + 0x10]
mov dword [edi + 0xcb08], eax
push dword [edi + 0xc788]
call fcn.00484508
pop ecx
call fcn.00473d84
mov edx, dword [edi + 0x760]
mov eax, dword [edx]
add eax, dword [edi + 0xc794]
mov ebx, eax
and ebx, 0x80001fff
jns 0x4756ee
dec ebx
or ebx, 0xffffe000
inc ebx
mov edx, eax
sub edx, ebx
test eax, eax
mov dword [ebp - 0xe40], edx
jge 0x47576f
mov eax, 0x2ad
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 8
mov esi, 2
cmp dword [ebp - 0xe28], 0
jne 0x475765
cmp dword [edi + 0xc794], 0
je 0x475765
mov eax, dword [edi + 0xc794]
xor edx, edx
mov dword [ebp - 0xe44], eax
mov dword [edi + 0xc794], edx
mov ecx, dword [edi + 0x760]
mov eax, dword [ecx]
mov ebx, eax
and ebx, 0x80001fff
jns 0x475759
dec ebx
or ebx, 0xffffe000
inc ebx
mov edx, eax
sub edx, ebx
mov dword [ebp - 0xe40], edx
jmp 0x47576f
mov esi, 3
jmp 0x476019
test eax, eax
jge 0x475795
mov eax, 0x2ad
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 8
mov esi, 3
jmp 0x476019
mov eax, dword [ebp - 0xe40]
cmp eax, dword [edi + 0xc790]
jne 0x4757ac
cmp byte [edi + 0xcb04], 0
je 0x47581a
push 0
push dword [ebp - 0xe40]
push dword [edi + 0xc788]
call fcn.004855fc
add esp, 0xc
mov dword [edi + 0xc790], eax
mov edx, 0x2000
mov eax, dword [edi + 0xc76c]
call fcn.00473fa0
mov dword [edi + 0xc774], eax
test eax, eax
jg 0x475804
mov eax, 0x2ad
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 8
mov esi, 3
jmp 0x476019
mov eax, dword [edi + 0xc76c]
add eax, ebx
mov dword [edi + 0xc770], eax
sub dword [edi + 0xc774], ebx
jmp 0x47583a
mov edx, dword [edi + 0xc770]
sub edx, dword [edi + 0xc76c]
sub edx, ebx
add dword [edi + 0xc774], edx
add ebx, dword [edi + 0xc76c]
mov dword [edi + 0xc770], ebx
lea eax, [edi + 0x50]
mov edx, 4
call fcn.00474060
test eax, eax
jne 0x47586d
mov eax, 0x2ad
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 8
mov esi, 3
jmp 0x476019
push 4
lea eax, [edi + 0xc7a0]
push eax
lea edx, [edi + 0x50]
push edx
call fcn.00482afc
add esp, 0xc
test eax, eax
je 0x475a9e
mov eax, 0x2ad
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 8
mov esi, 2
cmp dword [ebp - 0xe28], 0
jne 0x4758b9
cmp dword [edi + 0xc794], 0
jne 0x4758d3
cmp dword [edi + 0xc794], 0
jne 0x476019
cmp dword [ebp - 0xe44], 0
je 0x476019
cmp dword [edi + 0xc794], 0
je 0x4758f2
mov eax, dword [edi + 0xc794]
mov dword [ebp - 0xe44], eax
xor edx, edx
mov dword [edi + 0xc794], edx
jmp 0x4758fe
mov ecx, dword [ebp - 0xe44]
mov dword [edi + 0xc794], ecx
mov eax, dword [edi + 0x760]
mov eax, dword [eax]
add eax, dword [edi + 0xc794]
mov ebx, eax
and ebx, 0x80001fff
jns 0x47591e
dec ebx
or ebx, 0xffffe000
inc ebx
mov edx, eax
sub edx, ebx
test eax, eax
mov dword [ebp - 0xe58], edx
jge 0x47596f
mov eax, 3
mov edx, 2
push eax
lea eax, [ebp - 0x104]
sub dword [ebp - 0xdf0], 4
call fcn.0040e120
dec dword [ebp - 0xdf0]
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.00476298
pop eax
mov edx, dword [ebp - 0xe0c]
mov dword fs:[0], edx
jmp 0x4761c2
mov ecx, dword [ebp - 0xe58]
cmp ecx, dword [edi + 0xc790]
je 0x475a10
push 0
push dword [ebp - 0xe58]
push dword [edi + 0xc788]
call fcn.004855fc
add esp, 0xc
mov dword [edi + 0xc790], eax
mov edx, 0x2000
mov eax, dword [edi + 0xc76c]
call fcn.00473fa0
mov dword [edi + 0xc774], eax
test eax, eax
jg 0x4759fa
mov eax, 0x33
mov edx, 2
push eax
lea eax, [ebp - 0x104]
sub dword [ebp - 0xdf0], 4
call fcn.0040e120
dec dword [ebp - 0xdf0]
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.00476298
pop eax
mov edx, dword [ebp - 0xe0c]
mov dword fs:[0], edx
jmp 0x4761c2
mov ecx, dword [edi + 0xc76c]
add ecx, ebx
mov dword [edi + 0xc770], ecx
sub dword [edi + 0xc774], ebx
jmp 0x475a30
mov eax, dword [edi + 0xc770]
sub eax, dword [edi + 0xc76c]
sub eax, ebx
add dword [edi + 0xc774], eax
add ebx, dword [edi + 0xc76c]
mov dword [edi + 0xc770], ebx
lea eax, [edi + 0x50]
mov edx, 4
call fcn.00474060
test eax, eax
jne 0x475a63
mov eax, 0x2ad
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 8
mov esi, 3
jmp 0x476019
push 4
lea eax, [edi + 0xc7a0]
push eax
lea edx, [edi + 0x50]
push edx
call fcn.00482afc
add esp, 0xc
test eax, eax
je 0x475a9e
mov eax, 0x2ad
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 8
mov esi, 3
jmp 0x476019
call fcn.00472984
mov ebx, eax
test eax, eax
je 0x475ac8
mov eax, 0x2ad
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 8
mov esi, ebx
jmp 0x476019
movzx eax, word [edi + 0xc7c8]
mov edx, 2
call fcn.0047461c
mov ebx, eax
test eax, eax
je 0x475b0c
cmp esi, ebx
jge 0x475ae5
mov esi, ebx
dec ebx
jle 0x475b0c
lea eax, [edi + 0xc870]
push eax
mov eax, 0x2ab
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 0xc
jmp 0x476019
cmp dword [edi + 0xc798], 0
je 0x475b29
push dword [edi + 0xc798]
call fcn.004817a0
pop ecx
xor edx, edx
mov dword [edi + 0xc798], edx
movzx eax, word [edi + 0xc7ca]
mov edx, 3
call fcn.0047461c
mov ebx, eax
test eax, eax
je 0x475b6d
cmp esi, ebx
jge 0x475b46
mov esi, ebx
dec ebx
jle 0x475b6d
lea eax, [edi + 0xc870]
push eax
mov eax, 0x2ab
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 0xc
jmp 0x476019
cmp dword [ebp - 0xe48], 0
je 0x475b8b
push dword [ebp - 0xe48]
lea edx, [edi + 0xc870]
push edx
call fcn.00482a00
add esp, 8
cmp byte [0x4a6e3c], 0
je 0x475bfa
push 0x4a6e3c
call fcn.00482a30
pop ecx
mov ebx, eax
test ebx, ebx
jle 0x475bfa
lea edx, [edi + 0xc870]
mov eax, 0x4a6e3c
mov ecx, ebx
call fcn.0040d840
test eax, eax
jne 0x475bfa
lea eax, [edi + 0xc870]
add eax, ebx
jmp 0x475bc6
inc eax
xor edx, edx
mov dl, byte [eax]
cmp edx, 0x5c
je 0x475bc5
cmp edx, 0x2f
je 0x475bc5
push eax
lea ecx, [ebp - 0x1260]
push ecx
call fcn.00482a00
add esp, 8
lea eax, [ebp - 0x1260]
push eax
lea edx, [edi + 0xc870]
push edx
call fcn.00482a00
add esp, 8
lea edx, [edi + 0xc870]
lea eax, [edi + 0xc870]
call fcn.0040aa34
mov ecx, dword [edi + 0x760]
test byte [ecx + 0x14], 0x10
je 0x475c8b
mov eax, dword [edi + 0x760]
mov eax, dword [eax + 0xc]
mov word [ebp - 0xdfc], 0x14
test eax, eax
je 0x475c32
cmp eax, 0xb
jne 0x475c8b
lea edx, [edi + 0xc870]
push edx
call fcn.00482a30
pop ecx
dec eax
mov dword [ebp - 0xe5c], eax
cmp dword [ebp - 0xe5c], 0
jl 0x475c8b
mov ecx, dword [ebp - 0xe5c]
xor eax, eax
mov al, byte [edi + ecx + 0xc870]
cmp eax, 0x2f
je 0x475c8b
mov edx, dword [ebp - 0xe5c]
xor ecx, ecx
mov cl, byte [edi + edx + 0xc870]
cmp ecx, 0x5c
je 0x475c8b
push 0x499fc4
lea eax, [edi + 0xc870]
push eax
call fcn.00482924
add esp, 8
lea eax, [edi + 0xc870]
call fcn.00456604
test eax, eax
je 0x476031
xor ebx, ebx
mov bl, byte [0x4a80a8]
push ebx
call fcn.00489668
pop ecx
cmp eax, 0x49
jne 0x475ccc
push 0x4a84b8
lea eax, [edi + 0xc870]
push eax
mov ecx, 0x4a80a9
xor edx, edx
xor eax, eax
call fcn.0040dd2c
cmp byte [0x4a77c2], 0
jne 0x475f27
cmp dword [edi + 8], 0
jne 0x475f27
xor edx, edx
mov dword [ebp - 0xe20], edx
xor ecx, ecx
mov dword [ebp - 0xe24], ecx
mov eax, dword [ebp - 0xe20]
call fcn.00470ebc
mov ebx, eax
dec eax
jle 0x475d9e
cmp ebx, 0x4d
jne 0x475d79
mov edx, dword [edi + 0x760]
lea ecx, [edi + 0xc870]
push dword [edx + 0x14]
push ecx
call sub.KERNEL32.DLL_SetFileAttributesA
movzx eax, word [edi + 0xc7b8]
shl eax, 0x10
movzx edx, word [edi + 0xc7b6]
or eax, edx
mov dword [ebp - 0xe60], eax
mov word [ebp - 0xdfc], 0x14
lea eax, [ebp - 0x1284]
call fcn.00411d14
lea eax, [ebp - 0x1284]
mov edx, dword [ebp - 0xe60]
call fcn.00411f90
push 0
lea edx, [ebp - 0x1284]
lea eax, [edi + 0xc870]
xor ecx, ecx
call fcn.004096dc
jmp 0x476019
cmp ebx, 0x4e
je 0x476019
cmp ebx, 2
jle 0x476019
cmp esi, 2
jge 0x476019
mov esi, 2
jmp 0x476019
lea eax, [edi + 0xc870]
call fcn.00474588
sub eax, 0xffffffff
je 0x475db6
dec eax
je 0x475dce
dec eax
je 0x475df0
jmp 0x475e26
cmp byte [0x4a76e8], 0
je 0x475e26
cmp dword [ebp - 0xe20], 0
je 0x476019
jmp 0x475e26
cmp dword [0x4a76c8], 2
je 0x476019
cmp dword [0x4a76c8], 0
jne 0x475e26
mov dword [ebp - 0xe24], 1
jmp 0x475e26
cmp dword [0x4a76c8], 2
je 0x476019
cmp byte [0x4a76e9], 0
je 0x475e13
cmp dword [ebp - 0xe20], 0
je 0x476019
cmp dword [0x4a76c8], 0
jne 0x475e26
mov dword [ebp - 0xe24], 1
cmp dword [ebp - 0xe24], 0
je 0x475f27
lea edx, [edi + 0xc870]
push edx
lea ecx, [ebp - 0x1388]
push ecx
call fcn.00482a00
add esp, 8
mov eax, dword [edi + 0x44]
cdq
push edx
push eax
push 0
movzx ecx, word [edi + 0xc7b6]
movzx eax, word [edi + 0xc7b8]
shl eax, 0x10
add ecx, eax
lea edx, [ebp - 0x1388]
lea eax, [edi + 0x55]
call fcn.00455604
mov al, byte [edi + 0x55]
xor edx, edx
mov dl, al
cmp edx, 0x43
je 0x476031
xor ecx, ecx
mov cl, al
cmp ecx, 0x59
jg 0x475ea6
je 0x475f27
sub ecx, 0x41
je 0x475eb2
sub ecx, 0xd
je 0x476019
sub ecx, 4
je 0x475ebe
jmp 0x475e33
sub ecx, 0x72
je 0x475ebe
sub ecx, 7
je 0x475f27
jmp 0x475e33
mov dword [0x4a76c8], 1
jmp 0x475f27
lea eax, [ebp - 0x1388]
push eax
lea edx, [edi + 0xc870]
push edx
call fcn.00482a00
add esp, 8
lea ecx, [edi + 0xc870]
push ecx
call fcn.00482a30
pop ecx
mov dword [ebp - 0xe30], eax
mov eax, dword [ebp - 0xe30]
xor edx, edx
mov dl, byte [edi + eax + 0xc86f]
cmp edx, 0xa
jne 0x475f0f
dec dword [ebp - 0xe30]
mov ecx, dword [ebp - 0xe30]
mov byte [edi + ecx + 0xc870], 0
cmp dword [ebp - 0xe30], 0
je 0x475ebe
mov dword [ebp - 0xe20], 1
jmp 0x475ceb
mov eax, dword [edi + 0x760]
test byte [eax + 0x18], 1
je 0x475fb7
call fcn.00477d88
mov ebx, eax
test eax, eax
je 0x475fb7
cmp ebx, 1
jne 0x475f90
cmp byte [0x4a77c2], 0
je 0x475f56
cmp dword [edi + 0x10], 0
jne 0x475f84
cmp byte [0x4a77c2], 0
jne 0x475f65
cmp dword [edi + 0x10], 0
jne 0x475f84
lea edx, [edi + 0xc870]
mov eax, 0x1fb
push edx
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 0xc
inc word [ebp - 0xe36]
jmp 0x476019
cmp esi, ebx
jge 0x475f96
mov esi, ebx
lea eax, [edi + 0xc870]
push eax
mov eax, 0x1fb
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 0xc
jmp 0x476019
xor edx, edx
mov dword [edi + 0xc840], edx
call fcn.00474c34
mov ebx, eax
test eax, eax
je 0x476019
cmp esi, ebx
jge 0x475fd0
mov esi, ebx
cmp dword [edi + 0xc840], 1
jle 0x476019
mov eax, esi
mov edx, 2
push eax
lea eax, [ebp - 0x104]
sub dword [ebp - 0xdf0], 4
call fcn.0040e120
dec dword [ebp - 0xdf0]
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.00476298
pop eax
mov edx, dword [ebp - 0xe0c]
mov dword fs:[0], edx
jmp 0x4761c2
inc dword [ebp - 0xe14]
mov ecx, dword [ebp - 0xe14]
cmp ecx, dword [ebp - 0xe18]
jl 0x4755fd
push 0
push dword [ebp - 0xe3c]
push dword [edi + 0xc788]
call fcn.004855fc
add esp, 0xc
mov dword [edi + 0xc790], eax
mov edx, 0x2000
mov eax, dword [edi + 0xc76c]
call fcn.00473fa0
mov ecx, dword [ebp - 0xe10]
mov dword [edi + 0xc770], ecx
mov eax, dword [ebp - 0xe1c]
mov dword [edi + 0xc774], eax
inc dword [ebp - 0xe2c]
cmp word [ebp - 0xe32], 0
je 0x476092
cmp dword [0x4afc18], 0
je 0x475266
call fcn.00470d24
lea eax, [edi + 0x50]
mov edx, 4
call fcn.00474060
test eax, eax
jne 0x4760ad
mov esi, 0x33
push 4
lea eax, [edi + 0xc7aa]
push eax
lea edx, [edi + 0x50]
push edx
call fcn.00482afc
add esp, 0xc
test eax, eax
je 0x4760f0
cmp byte [edi + 0xcb04], 0
jne 0x4760f0
mov eax, 0x2ad
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 8
test esi, esi
jne 0x4760f0
mov esi, 1
inc dword [ebp - 0xe28]
movzx eax, word [ebp - 0xe36]
cmp eax, dword [ebp - 0xe28]
jne 0x47611d
mov eax, 0x344
call fcn.00410804
push eax
push 0x4a84b8
call fcn.0044142c
add esp, 8
cmp dword [ebp - 0xe28], 0
jne 0x476143
cmp esi, 1
jg 0x476143
cmp word [ebp - 0xe34], 0
jbe 0x47613c
mov esi, 0x51
jmp 0x476187
mov esi, 0xb
jmp 0x476187
movzx eax, word [ebp - 0xe36]
cmp eax, dword [ebp - 0xe28]
jne 0x47615e
cmp esi, 1
jg 0x47615e
mov esi, 0x52
jmp 0x476187
cmp word [ebp - 0xe34], 0
jbe 0x476174
cmp esi, 1
jg 0x476174
mov esi, 0x51
jmp 0x476187
cmp word [ebp - 0xe36], 0
jbe 0x476187
test esi, esi
jne 0x476187
mov esi, 1
mov eax, esi
mov edx, 2
push eax
lea eax, [ebp - 0x104]
sub dword [ebp - 0xdf0], 4
call fcn.0040e120
dec dword [ebp - 0xdf0]
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.00476298
pop eax
mov edx, dword [ebp - 0xe0c]
mov dword fs:[0], edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret