Function at 0x45ea30
Capabilities:
Delete file
Set environment variable

Disassembly:
push rbp
push rbx
sub rsp, 0x108
mov rbp, rsp
mov qword [rbp + 0x40], 0
mov qword [rbp + 0x48], 0
mov qword [rbp + 0x50], 0
mov qword [rbp + 0x58], 0
mov qword [rbp + 0x70], 0
mov qword [rbp + 0x68], 0
mov qword [rbp + 0x60], 0
mov qword [rbp + 0x80], 0
mov qword [rbp + 0x78], 0
mov qword [rbp + 0x90], 0
mov qword [rbp + 0x88], 0
mov qword [rbp + 0x98], 0
mov qword [rbp + 0xa0], 0
mov qword [rbp + 0xf8], 0
mov qword [rbp + 0xf0], 0
mov qword [rbp + 0xe8], 0
mov qword [rbp + 0xe0], 0
mov qword [rbp + 0xd8], 0
mov qword [rbp + 0xd0], 0
mov qword [rbp + 0xc8], 0
mov qword [rbp + 0xc0], 0
mov qword [rbp + 0xa8], rbp
nop
lea rcx, [0x00458ab0]
call fcn.0040f290
nop
lea rcx, [0x00477930]
lea rdx, [0x004579c0]
call fcn.0040ea60
mov rax, qword [0x0046d4f0]
mov dword [rax], 0
mov rcx, qword [0x004581e8]
mov dl, 1
call fcn.004585a0
mov qword [0x00477938], rax
mov rcx, qword [0x00477938]
lea rdx, [0x0045f32c]
mov r8b, 1
call fcn.004587c0
test al, al
je 0x45f0b5
mov rax, qword [0x00477938]
mov rcx, qword [rax + 0x58]
lea rdx, [0x004778f0]
mov rax, qword [0x00477938]
movsxd r8, dword [rax + 0x60]
call fcn.00405630
mov rcx, qword [0x00477938]
call fcn.00458690
mov rcx, qword [0x00477938]
lea rdx, [0x0045f340]
xor r8, r8
call fcn.004587c0
test al, al
je 0x45ebe5
mov rax, qword [0x00477938]
mov rcx, qword [rax + 0x58]
lea rdx, [0x00477944]
mov r8d, 4
call fcn.00405630
mov rcx, qword [0x00477938]
call fcn.00458690
mov rcx, qword [0x00477938]
lea rdx, [0x0045f354]
mov r8b, 1
call fcn.004587c0
test al, al
je 0x45f043
call fcn.00429250
or ecx, 0xffffffff
mov rax, qword [0x00477938]
mov rdx, qword [rax + 0x58]
mov rax, qword [0x00477938]
mov r8d, dword [rax + 0x60]
call fcn.004292a0
mov dword [0x00477940], eax
mov eax, dword [0x00477940]
cmp eax, dword [0x00477944]
je 0x45ec72
lea rcx, [rbp + 0xa0]
lea rdx, [0x00457a20]
call fcn.0040ea60
mov rcx, qword [0x0046d638]
mov rdx, qword [rbp + 0xa0]
call fcn.00406b60
mov rcx, rax
call fcn.00406cd0
call fcn.004055a0
jmp 0x45f132
lea rcx, [rbp + 0xf8]
lea rdx, [0x00457a00]
call fcn.0040ea60
lea rcx, [rbp + 0xf0]
lea rdx, [0x00457a10]
call fcn.0040ea60
nop
mov rcx, qword [rbp + 0xf8]
call fcn.0040b250
mov rbx, rax
mov rcx, qword [rbp + 0xf0]
call fcn.0040b250
xor rcx, rcx
mov rdx, rbx
mov r8, rax
mov r9d, 0x40
call sub.user32.dll_MessageBoxW
nop
lea rcx, [rbp + 0xf8]
call fcn.00409f90
lea rcx, [rbp + 0xf0]
call fcn.00409f90
lea rcx, [rbp + 0x98]
xor rdx, rdx
call fcn.00457e10
lea rcx, [0x00477918]
mov rdx, qword [rbp + 0x98]
call fcn.0040a550
lea rcx, [rbp + 0x88]
lea rdx, [0x004778f0]
call fcn.0040b400
lea rcx, [rbp + 0x90]
mov rdx, qword [0x00477918]
mov r8, qword [rbp + 0x88]
call fcn.004290c0
lea rcx, [0x00477920]
mov rdx, qword [rbp + 0x90]
call fcn.0040a550
mov rcx, qword [0x00477938]
mov rdx, qword [0x00477920]
call fcn.004586b0
lea rcx, [rbp + 0x80]
lea rdx, [0x004579a0]
call fcn.0040ea60
mov rcx, qword [rbp + 0x80]
call fcn.0040b250
mov rbx, rax
lea rcx, [rbp + 0x78]
call fcn.00428f00
mov rcx, qword [rbp + 0x78]
call fcn.0040b250
mov rcx, rbx
mov rdx, rax
call sub.kernel32.dll_SetEnvironmentVariableW
lea rcx, [rbp + 0x70]
mov edx, dword [0x004778f8]
call fcn.00457e10
call sub.kernel32.dll_GetTickCount_1
lea rcx, [rbp + 0x68]
mov edx, eax
mov r8d, 6
call fcn.0041c6d0
mov ecx, 0xff
call fcn.00405980
lea rcx, [rbp + 0x60]
mov edx, eax
mov r8d, 2
call fcn.0041c6b0
lea rcx, [0x00477958]
mov edx, 5
mov r8, qword [rbp + 0x70]
lea r9, [0x0045f368]
mov rax, qword [rbp + 0x68]
mov qword [rsp + 0x20], rax
lea rax, [0x0045f37c]
mov qword [rsp + 0x28], rax
mov rax, qword [rbp + 0x60]
mov qword [rsp + 0x30], rax
call fcn.0040b710
mov rcx, qword [0x00477958]
call fcn.0041d2d0
lea rcx, [rbp + 0x58]
lea rdx, [0x004579b0]
call fcn.0040ea60
mov rcx, qword [rbp + 0x58]
call fcn.0040b250
mov rbx, rax
mov rcx, qword [0x00477958]
call fcn.0040b250
mov rcx, rbx
mov rdx, rax
call sub.kernel32.dll_SetEnvironmentVariableW
mov qword [0x00477948], 0
nop
lea rcx, [rbp + 0x50]
xor rdx, rdx
call fcn.004058e0
mov rcx, qword [0x00455128]
mov dl, 1
mov r8, qword [rbp + 0x50]
xor r9, r9
mov dword [rsp + 0x20], 0
call fcn.004564d0
mov qword [0x00477948], rax
mov rcx, qword [0x00477948]
mov rdx, qword [0x00477958]
call fcn.00456fd0
jmp 0x45ef1c
lea rcx, [rbp + 0x48]
mov rax, qword [0x0046d7c0]
mov rdx, qword [rax]
call fcn.0040b2f0
lea rcx, [0x00477930]
mov edx, 5
lea r8, [0x0045f3ec]
mov r9, qword [0x00477920]
lea rax, [0x0045f414]
mov qword [rsp + 0x20], rax
mov rax, qword [rbp + 0x48]
mov qword [rsp + 0x28], rax
lea rax, [0x0045f428]
mov qword [rsp + 0x30], rax
call fcn.0040b710
mov rcx, qword [0x00477930]
call fcn.00457f90
mov rcx, qword [0x0046d4f0]
mov dword [rcx], eax
mov rcx, qword [0x00477920]
call fcn.0040b250
mov rcx, rax
call sub.kernel32.dll_DeleteFileW
cmp qword [0x00477948], 0
je 0x45f032
xor rax, rax
mov rcx, qword [0x00477948]
mov ebx, dword [rcx + 0x30]
sub ebx, 1
mov dword [0x00477950], eax
cmp dword [0x00477950], ebx
jg 0x45f025
add ebx, 1
lea rcx, [rbp + 0x40]
mov edx, 3
mov r8, qword [0x00477958]
lea r9, [0x0045f438]
mov rax, qword [0x00477948]
mov rax, qword [rax + 0x38]
movsxd r10, dword [0x00477950]
lea r10, [r10 + r10*4]
mov rax, qword [rax + r10*8 + 0x20]
mov qword [rsp + 0x20], rax
call fcn.0040b710
mov rcx, qword [rbp + 0x40]
call fcn.0040b250
mov rcx, rax
call sub.kernel32.dll_DeleteFileW
add dword [0x00477950], 1
cmp dword [0x00477950], ebx
jne 0x45efc8
nop
mov rcx, qword [0x00477948]
call fcn.00407240
mov rcx, qword [0x00477958]
call fcn.00457a30
jmp 0x45f125
lea rcx, [rbp + 0xd8]
lea rdx, [0x004579d0]
call fcn.0040ea60
lea rcx, [rbp + 0xd0]
lea rdx, [0x0045f3d4]
call fcn.0040a5d0
nop
mov rcx, qword [rbp + 0xd8]
call fcn.0040b250
mov rbx, rax
mov rcx, qword [rbp + 0xd0]
call fcn.0040b250
xor rcx, rcx
mov rdx, rbx
mov r8, rax
mov r9d, 0x40
call sub.user32.dll_MessageBoxW
nop
lea rcx, [rbp + 0xd8]
call fcn.00409f90
lea rcx, [rbp + 0xd0]
call fcn.00409f90
jmp 0x45f125
lea rcx, [rbp + 0xc8]
lea rdx, [0x004579f0]
call fcn.0040ea60
lea rcx, [rbp + 0xc0]
lea rdx, [0x0045f448]
call fcn.0040a5d0
nop
mov rcx, qword [rbp + 0xc8]
call fcn.0040b250
mov rbx, rax
mov rcx, qword [rbp + 0xc0]
call fcn.0040b250
xor rcx, rcx
mov rdx, rbx
mov r8, rax
mov r9d, 0x40
call sub.user32.dll_MessageBoxW
nop
lea rcx, [rbp + 0xc8]
call fcn.00409f90
lea rcx, [rbp + 0xc0]
call fcn.00409f90
mov rcx, qword [0x00477938]
call fcn.00407240
nop
lea rcx, [rbp + 0x40]
mov edx, 0xd
call fcn.0040a070
lea rcx, [rbp + 0xc0]
mov edx, 8
call fcn.0040a070
call fcn.00409bc0
jmp 0x45f162
lea rsp, [rbp + 0x108]
pop rbx
pop rbp
ret