Function at 0x401120
Capabilities:
Delete file
Write file on windows

Disassembly:
sub esp, 0x314
push ebx
push ebp
push esi
mov esi, dword [esp + 0x324]
xor ebx, ebx
push edi
cmp esi, ebx
jne 0x401144
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x314
ret
mov eax, dword [esp + 0x32c]
sub eax, esi
jne 0x40115c
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x314
ret
push esi
call dword [sym.imp.KERNEL32.dll_lstrlenA]
mov ebp, eax
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x19]
mov byte [esp + 0x18], bl
push 0x103
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x334]
lea edx, [esp + 0x1c]
stosw word es:[edi], ax
push ecx
push edx
stosb byte es:[edi], al
call dword [sym.imp.MSVCRT.dll_strncpy]
push 0x103
lea eax, [esp + 0x28]
push esi
push eax
mov byte [esp + 0x133], bl
call dword [sym.imp.MSVCRT.dll_strncat]
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x239]
mov byte [esp + 0x238], bl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [esi + ebp + 1]
push 0x103
lea edx, [esp + 0x23c]
push ecx
push edx
mov byte [esp + 0x13f], bl
stosb byte es:[edi], al
call dword [sym.imp.MSVCRT.dll_strncat]
lea eax, [esp + 0x244]
mov byte [esp + 0x347], bl
push eax
call dword [sym.imp.MSVCRT.dll_atoi]
mov dword [esp + 0x3c], eax
mov ecx, 0x40
xor eax, eax
lea edi, [esp + 0x145]
mov byte [esp + 0x144], bl
push 0x103
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
lea ecx, [esp + 0x44]
lea edx, [esp + 0x148]
push ecx
push edx
stosb byte es:[edi], al
call dword [sym.imp.MSVCRT.dll_strncpy]
lea eax, [esp + 0x150]
push 0x2e
push eax
mov byte [esp + 0x25b], bl
call dword [sym.imp.MSVCRT.dll_strrchr]
add esp, 0x3c
cmp eax, ebx
je 0x40124d
mov byte [eax], bl
mov edi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ecx, [esp + 0x11c]
push ecx
call edi
lea edx, [esp + 0x220]
push edx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
add eax, ebp
push ebx
push 0x80
push 2
lea ebp, [esi + eax + 2]
push ebx
push ebx
lea eax, [esp + 0x2c]
push 0x40000000
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov esi, eax
cmp esi, 0xffffffff
jne 0x40129f
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x314
ret
mov edx, dword [esp + 0x14]
lea ecx, [esp + 0x10]
push ebx
push ecx
push edx
push ebp
push esi
mov dword [esp + 0x24], ebx
call dword [sym.imp.KERNEL32.dll_WriteFile]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, dword [sym.imp.MSVCRT.dll_strstr]
lea eax, [esp + 0x18]
push 0x40c3d0
push eax
call esi
add esp, 8
test eax, eax
jne 0x401322
lea ecx, [esp + 0x18]
push 0x40c3e0
push ecx
call esi
add esp, 8
test eax, eax
jne 0x401322
lea edx, [esp + 0x18]
push str.clientver.zip
push edx
call esi
add esp, 8
test eax, eax
jne 0x401322
mov eax, dword [esp + 0x330]
lea ecx, [esp + 0x18]
push eax
push ecx
call fcn.00401b70
add esp, 8
test eax, eax
jge 0x401322
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x314
ret
lea edx, [esp + 0x18]
push str.package.conf
push edx
call esi
add esp, 8
test eax, eax
jne 0x40134f
lea eax, [esp + 0x18]
push str.sign_package.conf
push eax
call esi
add esp, 8
test eax, eax
jne 0x40134f
lea ecx, [esp + 0x18]
push ecx
call edi
lea edx, [esp + 0x11c]
push edx
call fcn.00403ad0
add esp, 4
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x314
ret