Function at 0x417560
Capabilities:
Delete file

Disassembly:
push 0xffffffffffffffff
mov eax, dword fs:[0]
push 0x4520d8
push eax
mov eax, 0x1088
mov dword fs:[0], esp
call fcn.004341e0
push ebx
push ebp
push esi
push edi
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x1c], esp
push 0x4566bf
call fcn.00421740
lea ecx, [esp + 0x6c]
call fcn.00416620
lea ecx, [esp + 0x18]
mov dword [esp + 0x10a0], 0
call fcn.00421860
mov eax, dword [0x4776c0]
mov esi, 1
cmp dword [eax + 0x1c], esi
mov byte [esp + 0x10a0], 1
jle 0x41780e
mov ebp, dword [sym.imp.KERNEL32.dll_CreateFileA]
mov edi, 0xc
lea esp, [esp]
test edi, edi
jl 0x417877
cmp esi, dword [eax + 0x10]
jge 0x417877
mov eax, dword [eax + 0xc]
sub esp, 0xc
add eax, edi
mov ecx, esp
mov dword [esp + 0x1c], esp
push eax
call fcn.004216a0
lea ecx, [esp + 0x6c]
call fcn.00415fa0
lea ecx, [esp + 0x60]
call fcn.00415f10
cmp eax, 2
jne 0x41780e
sub esp, 0xc
mov eax, esp
mov dword [esp + 0x1c], esp
push eax
lea ecx, [esp + 0x70]
call fcn.00415ec0
lea ecx, [esp + 0x48]
push ecx
call fcn.00404d30
add esp, 0x10
push eax
lea ecx, [esp + 0x1c]
mov byte [esp + 0x10a4], 2
call fcn.00421710
lea ecx, [esp + 0x3c]
mov byte [esp + 0x10a0], 1
call fcn.00421510
push 0
lea ecx, [esp + 0x64]
call fcn.00415f00
push edx
push eax
lea ecx, [esp + 0x6c]
call fcn.00415ef0
push edx
push eax
sub esp, 0xc
lea edx, [esp + 0x38]
mov ecx, esp
mov dword [esp + 0x30], esp
push edx
call fcn.004216a0
mov ecx, 0x46c258
call fcn.00415390
push 0
push str.YingInstall_XXX.
lea ecx, [esp + 0x5c]
mov byte [esp + 0x1f], al
call fcn.00421740
sub esp, 0xc
mov ecx, esp
mov dword [esp + 0x20], esp
push ecx
mov ecx, eax
mov byte [esp + 0x10b4], 3
call fcn.00421950
lea edx, [esp + 0x34]
push edx
lea ecx, [esp + 0x2c]
mov byte [esp + 0x10b4], 4
call fcn.00421950
mov ecx, eax
mov byte [esp + 0x10b0], 6
call fcn.00421600
test eax, eax
lea ecx, [esp + 0x24]
setg bl
mov byte [esp + 0x10a0], 3
call fcn.00421510
lea ecx, [esp + 0x54]
mov byte [esp + 0x10a0], 1
call fcn.00421510
test bl, bl
je 0x4177d6
push 0x4581fc
lea eax, [esp + 0x34]
push eax
sub esp, 0xc
lea edx, [esp + 0x2c]
mov ecx, esp
mov dword [esp + 0x24], esp
push edx
call fcn.004216a0
lea eax, [esp + 0x5c]
push eax
call fcn.00417320
add esp, 0x10
mov ecx, eax
mov byte [esp + 0x10a8], 7
call fcn.00421950
mov ecx, eax
mov byte [esp + 0x10a4], 8
call fcn.00421540
lea ecx, [esp + 0x30]
mov bl, al
mov byte [esp + 0x10a0], 7
call fcn.00421510
lea ecx, [esp + 0x48]
mov byte [esp + 0x10a0], 1
call fcn.00421510
test bl, bl
je 0x4177b3
sub esp, 0xc
lea edx, [esp + 0x24]
mov ecx, esp
mov dword [esp + 0x1c], esp
push edx
call fcn.004216a0
mov ecx, 0x477724
call fcn.00422750
mov eax, dword [esp + 0x1c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
jmp 0x4177d6
mov ecx, dword [esp + 0x1c]
push 0
push 0x80
push 3
push 0
push 1
push 0xc0000000
push ecx
call ebp
cmp eax, 0xffffffff
mov dword [0x46c134], eax
je 0x41784e
sub esp, 0xc
lea edx, [esp + 0x24]
mov ecx, esp
mov dword [esp + 0x1c], esp
push edx
call fcn.004216a0
mov ecx, 0x4776e8
call fcn.00422020
cmp byte [esp + 0x17], 0
je 0x41784e
mov eax, dword [0x4776c0]
add esi, 1
add edi, 0xc
cmp esi, dword [eax + 0x1c]
jl 0x4175e0
lea ecx, [esp + 0x18]
mov byte [esp + 0x10a0], 0
call fcn.00421510
lea ecx, [esp + 0x60]
mov dword [esp + 0x10a0], 0xffffffff
call fcn.004157c0
mov al, 1
mov ecx, dword [esp + 0x1098]
pop edi
pop esi
pop ebp
mov dword fs:[0], ecx
pop ebx
add esp, 0x1094
ret
lea ecx, [esp + 0x18]
mov byte [esp + 0x10a0], 0
call fcn.00421510
lea ecx, [esp + 0x60]
mov dword [esp + 0x10a0], 0xffffffff
call fcn.004157c0
xor al, al
jmp 0x417835
jmp fcn.0044143d