Function at 0x10029b76
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10064267
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ecx
sub esp, 0xfc
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
push 1
lea ecx, [ebp - 0xd0]
call fcn.1001a8b6
and dword [ebp - 4], 0
mov dword [ebp - 0x34], 0x1747
mov dword [ebp - 0x6c], 0xffffffff
mov dword [ebp - 0x14], 0
jmp 0x10029bca
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 2
jge 0x10029bdd
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x30], 0x99841b3c
jmp 0x10029bc3
mov dword [ebp - 0x14], 0
jmp 0x10029bed
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 1
jge 0x10029c09
push dword [ebp - 0x14]
lea ecx, [ebp - 0xd0]
call fcn.1001a954
mov dword [eax], 0xbb67
jmp 0x10029be6
mov dword [ebp - 0x14], 0
jmp 0x10029c19
mov eax, dword [ebp - 0x14]
inc eax
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 1
jge 0x10029c2c
mov eax, dword [ebp - 0x14]
mov dword [ebp + eax*4 - 0x4c], 0x2579253a
jmp 0x10029c12
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x30], 0
jmp 0x10029c51
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x30]
inc eax
push 4
pop ecx
imul ecx, ecx, 0
mov dword [ebp + ecx - 0x30], eax
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x30], 8
je 0x10029cfe
mov dword [ebp - 0x3c], 0xfffffff7
mov dword [ebp - 0x3c], 0
jmp 0x10029c79
mov eax, dword [ebp - 0x3c]
dec eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0
jl 0x10029cf9
push 1
lea ecx, [ebp - 0xdc]
call fcn.1001a8b6
mov byte [ebp - 4], 1
mov dword [ebp - 0x50], 0
jmp 0x10029ca0
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 1
jge 0x10029cbc
push dword [ebp - 0x50]
lea ecx, [ebp - 0xdc]
call fcn.1001a954
mov dword [eax], 0xeaa29c14
jmp 0x10029c99
push 0
lea ecx, [ebp - 0xdc]
call fcn.1001a954
mov dword [ebp - 0x7c], eax
mov eax, dword [ebp - 0x7c]
mov eax, dword [eax]
dec eax
mov ecx, dword [ebp - 0x7c]
mov dword [ecx], eax
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x4c], 0x837182ab
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xdc]
call fcn.1001a938
jmp 0x10029c72
jmp 0x10029c3c
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x30]
mov dword [ebp - 0xe4], eax
cmp dword [ebp - 0x34], 0
je 0x10029e47
push 4
pop eax
shl eax, 0
mov eax, dword [ebp + eax - 0x30]
cmp dword [ebp - 0x34], eax
jne 0x10029d30
mov dword [ebp - 0x64], 1
jmp 0x10029d34
and dword [ebp - 0x64], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x64], eax
jle 0x10029d48
mov dword [ebp - 0x98], 1
jmp 0x10029d4f
and dword [ebp - 0x98], 0
mov eax, dword [ebp - 0x6c]
cmp dword [ebp - 0x98], eax
jne 0x10029d66
mov dword [ebp - 0xb8], 1
jmp 0x10029d6d
and dword [ebp - 0xb8], 0
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x30], 0
jne 0x10029d90
push 4
pop eax
shl eax, 0
cmp dword [ebp + eax - 0x30], 0
jne 0x10029d90
and dword [ebp - 0x9c], 0
jmp 0x10029d9a
mov dword [ebp - 0x9c], 1
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x4c]
mov dword [ebp - 0xf4], eax
push 0
lea ecx, [ebp - 0xd0]
call fcn.1001a954
push 4
pop eax
imul eax, eax, 0
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x30]
cmp dword [ebp + eax - 0x30], ecx
jge 0x10029dd9
mov dword [ebp - 0x8c], 1
jmp 0x10029de0
and dword [ebp - 0x8c], 0
push 0
lea ecx, [ebp - 0xd0]
call fcn.1001a954
mov eax, dword [eax]
mov ecx, dword [ebp - 0x8c]
lea eax, [ecx + eax + 0xb65c]
test eax, eax
je 0x10029e12
cmp dword [ebp - 0x34], 0
je 0x10029e12
mov dword [ebp - 0xa0], 1
jmp 0x10029e19
and dword [ebp - 0xa0], 0
cmp dword [ebp - 0x6c], 0xffff
jae 0x10029e2e
mov dword [ebp - 0x84], 1
jmp 0x10029e35
and dword [ebp - 0x84], 0
push 4
pop eax
imul eax, eax, 0
mov eax, dword [ebp + eax - 0x4c]
cmp dword [ebp - 0x84], eax
jl 0x10029e52
push 4
pop eax
imul eax, eax, 0
cmp dword [ebp + eax - 0x4c], 0
push 4
pop eax
imul eax, eax, 0
mov dword [ebp + eax - 0x30], 0
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xd0]
call fcn.1001a938
mov eax, dword [ebp + 8]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x18], 0xd41e
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0x3dc99cdf
mov dword [ebp - 0x58], 1
mov dword [ebp - 0x78], 1
push 4
lea ecx, [ebp - 0xb4]
call fcn.1001a8b6
mov dword [ebp - 4], 2
mov dword [ebp - 0x44], 0
jmp 0x10029ebc
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 4
jge 0x10029ed8
push dword [ebp - 0x44]
lea ecx, [ebp - 0xb4]
call fcn.1001a954
mov dword [eax], 0xfffffffe
jmp 0x10029eb5
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xec], eax
mov eax, dword [ebp - 0x20]
cmp dword [ebp - 0x20], eax
jle 0x10029f60
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0x18], 0xbbb4f5ac
jbe 0x10029f0a
mov dword [ebp - 0x74], 1
jmp 0x10029f0e
and dword [ebp - 0x74], 0
mov eax, dword [ebp - 0x74]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
add eax, dword [ebp - 0x18]
jne 0x10029f2b
cmp dword [ebp - 0x20], 0
jne 0x10029f2b
and dword [ebp - 0x94], 0
jmp 0x10029f35
mov dword [ebp - 0x94], 1
mov eax, dword [ebp - 0x20]
cmp eax, dword [ebp - 0x94]
jne 0x10029f49
mov dword [ebp - 0x5c], 1
jmp 0x10029f4d
and dword [ebp - 0x5c], 0
mov eax, dword [ebp - 0x5c]
sub eax, 0x8633
je 0x10029f60
mov dword [ebp - 0x60], 1
jmp 0x10029f64
and dword [ebp - 0x60], 0
mov eax, dword [ebp - 0x60]
neg eax
sub eax, dword [ebp - 0x20]
je 0x10029f7d
cmp dword [ebp - 0x18], 0
je 0x10029f7d
mov dword [ebp - 0x68], 1
jmp 0x10029f81
and dword [ebp - 0x68], 0
mov eax, dword [ebp - 0x18]
cmp dword [ebp - 0x68], eax
jne 0x10029f92
mov dword [ebp - 0x70], 1
jmp 0x10029f96
and dword [ebp - 0x70], 0
mov eax, dword [ebp - 0x70]
neg eax
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xe8], eax
mov eax, dword [ebp - 0x18]
mov dword [ebp - 0xf0], eax
mov dword [ebp - 0x78], 0xfffa
cmp dword [ebp - 0x78], 0x8bbd
je 0x10029fc9
mov dword [ebp - 0x80], 1
jmp 0x10029fcd
and dword [ebp - 0x80], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x80], eax
jne 0x10029fe1
mov dword [ebp - 0x88], 1
jmp 0x10029fe8
and dword [ebp - 0x88], 0
mov eax, dword [ebp - 0x1c]
cmp dword [ebp - 0x88], eax
je 0x1002a1a1
mov dword [ebp - 0x18], 0
jmp 0x1002a007
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jg 0x1002a049
mov dword [ebp - 0x1c], 3
jmp 0x1002a01d
mov eax, dword [ebp - 0x1c]
dec eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jl 0x1002a047
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xb4]
call fcn.1001a954
mov esi, eax
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xb4]
call fcn.1001a954
mov ecx, dword [esi]
mov dword [eax], ecx
jmp 0x1002a016
jmp 0x1002a000
mov dword [ebp - 0x90], 0x3282
mov dword [ebp - 0xa8], 0x10009488
cmp dword [ebp - 0x90], 0x334c
jle 0x1002a143
push 0x14c3
call dword [sym.imp.GDI32.dll_CreateHalftonePalette]
and dword [ebp - 0x54], 0
jmp 0x1002a085
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 0x650d
jge 0x1002a143
and dword [ebp - 0x38], 0
jmp 0x1002a09f
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 0x65bf
jge 0x1002a13e
and dword [ebp - 0x40], 0
jmp 0x1002a0b9
mov eax, dword [ebp - 0x40]
inc eax
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x40], 0x72d7
jge 0x1002a139
and dword [ebp - 0x48], 0
jmp 0x1002a0cf
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 0x1232
jge 0x1002a134
mov eax, dword [ebp - 0x54]
cdq
idiv dword [ebp - 0x38]
sub edx, dword [ebp - 0x40]
mov ecx, dword [ebp - 0x48]
shl edx, cl
mov eax, edx
cdq
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], edx
push dword [ebp - 0xc0]
push dword [ebp - 0xc4]
lea ecx, [ebp - 0x10c]
call fcn.1000d41a
pop ecx
pop ecx
mov dword [ebp - 0xa4], eax
mov ecx, dword [ebp - 0xa4]
call fcn.1001a665
push eax
call fcn.1004e4c6
pop ecx
lea ecx, [ebp - 0x10c]
call fcn.1001a65b
jmp 0x1002a0c8
jmp 0x1002a0b2
jmp 0x1002a098
jmp 0x1002a07e
push 3
lea ecx, [ebp - 0xb4]
call fcn.1001a954
mov dword [ebp - 0x58], 1
mov byte [ebp - 4], 3
cmp dword [ebp - 0x90], 0x3169
jge 0x1002a173
push dword [ebp - 0xa8]
call fcn.1004e4c6
pop ecx
jmp 0x1002a18f
mov dword [ebp - 4], 2
jmp 0x1002a19f
jmp 0x1002a1b5
mov byte [ebp - 0x21], 0
movzx eax, byte [ebp - 0x21]
test eax, eax
je 0x1002a1b5
push 0
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xb4]
call fcn.1001a938
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xbc], eax
mov eax, dword [ebp - 0x28]
mov dword [eax], 0
jmp 0x1002a1e3
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
inc eax
mov ecx, dword [ebp - 0x28]
mov dword [ecx], eax
mov eax, dword [ebp - 0x28]
cmp dword [eax], 2
jge 0x1002a203
mov eax, dword [ebp - 0x28]
push dword [eax]
mov ecx, dword [ebp - 0xbc]
call fcn.1001a954
mov dword [eax], 0x3062a4b1
jmp 0x1002a1d8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret