Function at 0x10001283
Capabilities:
Delete file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x738
push ebx
push esi
push edi
call section..txt2
and eax, 0xffff
test eax, eax
jne 0x100012a7
mov eax, 0x8000
jmp 0x100015f1
mov edi, 0x100480b8
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
push ecx
call fcn.1002c7e0
add esp, 4
mov dword [ebp - 0x528], eax
cmp dword [ebp - 0x528], 0
jne 0x100012d7
mov eax, 0x8000
jmp 0x100015f1
push 0x100480b8
mov eax, dword [ebp - 0x528]
push eax
call fcn.10007670
add esp, 8
push 0x104
lea ecx, [ebp - 0x62c]
push ecx
mov edx, dword [ebp - 0x528]
push edx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov eax, dword [ebp - 0x528]
push eax
call fcn.1002c770
add esp, 4
push 0
push 0
lea ecx, [ebp - 0x730]
push ecx
lea edx, [ebp - 0x20c]
push edx
lea eax, [ebp - 0x62c]
push eax
call fcn.1002c5f0
add esp, 0x14
push 0
push 0
lea ecx, [ebp - 0x730]
push ecx
lea edx, [ebp - 0x20c]
push edx
lea eax, [ebp - 0x524]
push eax
call fcn.1002c550
add esp, 0x14
mov edi, 0x10037030
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
push ecx
call fcn.1002c7e0
add esp, 4
mov dword [ebp - 0x734], eax
cmp dword [ebp - 0x734], 0
jne 0x1000138c
mov eax, 0x8000
jmp 0x100015f1
push 0x10037030
mov ecx, dword [ebp - 0x734]
push ecx
call fcn.10007670
add esp, 8
lea edi, [ebp - 0x524]
lea edx, [ebp - 0x318]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov eax, ecx
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 0x734]
lea edx, [ebp - 0x318]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov ebx, ecx
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
add edi, 0xffffffff
mov ecx, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp - 0x734]
push eax
call fcn.1002c770
add esp, 4
lea ecx, [ebp - 0x318]
push ecx
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0x210], eax
cmp dword [ebp - 0x210], 0
jne 0x10001433
mov eax, 0x8000
jmp 0x100015f1
cmp dword [0x1004c410], 0
jne 0x10001466
push str.Setup
mov edx, dword [ebp - 0x210]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x1004c410], eax
cmp dword [0x1004c410], 0
jne 0x10001466
mov eax, 0x8000
jmp 0x100015f1
push 0x104
lea eax, [ebp - 0x104]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
push 0
lea ecx, [ebp - 0x204]
push ecx
push 0
push 0
lea edx, [ebp - 0x104]
push edx
call fcn.1002c5f0
add esp, 0x14
lea eax, [ebp - 0x524]
push eax
lea ecx, [ebp - 0x204]
push ecx
call dword [0x1004c410]
add esp, 8
mov dword [ebp - 0x208], eax
mov edx, dword [ebp - 0x208]
mov dword [ebp - 0x738], edx
cmp dword [ebp - 0x738], 0x64
je 0x100014dc
cmp dword [ebp - 0x738], 0x65
je 0x100014e8
cmp dword [ebp - 0x738], 0x67
je 0x100014f4
jmp 0x10001500
mov dword [ebp - 0x214], 0x10000
jmp 0x1000150a
mov dword [ebp - 0x214], 0x8000
jmp 0x1000150a
mov dword [ebp - 0x214], 0x2000
jmp 0x1000150a
mov dword [ebp - 0x214], 0x8000
cmp dword [ebp - 0x210], 0
je 0x10001520
mov eax, dword [ebp - 0x210]
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
lea ecx, [ebp - 0x318]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov edi, 0x10037040
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
push ecx
call fcn.1002c7e0
add esp, 4
mov dword [ebp - 0x31c], eax
cmp dword [ebp - 0x31c], 0
jne 0x1000155d
mov eax, 0x8000
jmp 0x100015f1
push 0x10037040
mov edx, dword [ebp - 0x31c]
push edx
call fcn.10007670
add esp, 8
lea edi, [ebp - 0x524]
lea edx, [ebp - 0x420]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov eax, ecx
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, dword [ebp - 0x31c]
lea edx, [ebp - 0x420]
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov ebx, ecx
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
add edi, 0xffffffff
mov ecx, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov eax, dword [ebp - 0x31c]
push eax
call fcn.1002c770
add esp, 4
lea ecx, [ebp - 0x420]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov eax, dword [ebp - 0x214]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret