Function at 0x10308b0
Capabilities:
Check if file exists
Delete file
Move file

Disassembly:
mov qword [rsp + 8], rcx
push rdi
mov eax, 0x12c0
call fcn.0105ee40
sub rsp, rax
mov rax, qword [0x010657f0]
xor rax, rsp
mov qword [rsp + 0x12b8], rax
movzx eax, word [0x01001c38]
mov word [rsp + 0xe90], ax
lea rax, [rsp + 0xe92]
mov rdi, rax
xor eax, eax
mov ecx, 0x20a
rep stosb byte [rdi], al
movzx eax, word [0x01001c38]
mov word [rsp + 0x10a0], ax
lea rax, [rsp + 0x10a2]
mov rdi, rax
xor eax, eax
mov ecx, 0x20a
rep stosb byte [rdi], al
movzx eax, word [0x01001c38]
mov word [rsp + 0x840], ax
lea rax, [rsp + 0x842]
mov rdi, rax
xor eax, eax
mov ecx, 0x20a
rep stosb byte [rdi], al
movzx eax, word [0x01001c38]
mov word [rsp + 0xa60], ax
lea rax, [rsp + 0xa62]
mov rdi, rax
xor eax, eax
mov ecx, 0x20a
rep stosb byte [rdi], al
movzx eax, word [0x01001c38]
mov word [rsp + 0xc80], ax
lea rax, [rsp + 0xc82]
mov rdi, rax
xor eax, eax
mov ecx, 0x208
rep stosb byte [rdi], al
movzx eax, word [0x01001c38]
mov word [rsp + 0x440], ax
lea rax, [rsp + 0x442]
mov rdi, rax
xor eax, eax
mov ecx, 0x3fe
rep stosb byte [rdi], al
movzx eax, word [0x01001c38]
mov word [rsp + 0x40], ax
lea rax, [rsp + 0x42]
mov rdi, rax
xor eax, eax
mov ecx, 0x3fe
rep stosb byte [rdi], al
mov dword [rsp + 0x12b4], 0
mov dword [rsp + 0xc70], 0
mov dword [rsp + 0x12b0], 0
mov dword [rsp + 0xa50], 0
cmp qword [rsp + 0x12d0], 0
jne 0x1030a02
xor eax, eax
jmp 0x1030f2a
movzx eax, word [0x01065f10]
test eax, eax
je 0x1030ede
cmp qword [0x01067c18], 0
je 0x1030ede
lea r8, [0x01065f10]
mov edx, 0x106
lea rcx, [rsp + 0xe90]
call fcn.01013c30
mov dx, 0x2e
lea rcx, [rsp + 0xe90]
call fcn.010285d0
test rax, rax
je 0x1030b1e
lea rcx, [rsp + 0xe90]
call qword [sym.imp.MSVCR80.dll__wcsrev]
mov dword [rsp + 0xa50], 0
movsxd rax, dword [rsp + 0xa50]
cmp rax, 0x105
jae 0x1030ac3
movsxd rax, dword [rsp + 0xa50]
movzx eax, word [rsp + rax*2 + 0xe90]
cmp eax, 0x2e
je 0x1030ac3
movsxd rax, dword [rsp + 0xa50]
movsxd rcx, dword [rsp + 0xa50]
movzx eax, word [rsp + rax*2 + 0xe90]
mov word [rsp + rcx*2 + 0xc80], ax
mov eax, dword [rsp + 0xa50]
add eax, 1
mov dword [rsp + 0xa50], eax
jmp 0x1030a6b
lea rcx, [rsp + 0xc80]
call qword [sym.imp.MSVCR80.dll__wcsrev]
mov dx, 0x2e
lea rcx, [rsp + 0xe90]
call fcn.010285d0
add rax, 2
mov r8, rax
mov edx, 0x106
lea rcx, [rsp + 0x10a0]
call fcn.01013c30
lea rcx, [rsp + 0x10a0]
call qword [sym.imp.MSVCR80.dll__wcsrev]
mov r8, rax
mov edx, 0x106
lea rcx, [rsp + 0xe90]
call fcn.01013c30
lea r9, [rsp + 0xe90]
lea r8, [0x01007a70]
mov edx, 0x106
lea rcx, [rsp + 0xa60]
call fcn.01015ef0
lea rcx, [rsp + 0xa60]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x1030bc4
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x12b4], eax
cmp dword [rsp + 0x12b4], 2
je 0x1030bc4
cmp dword [rsp + 0x12b4], 3
je 0x1030bc4
mov r9d, 0x200
lea r8, [rsp + 0x40]
mov edx, 0xf5
mov rcx, qword [0x01068158]
call qword [sym.imp.USER32.dll_LoadStringW]
mov r8d, 0x400
lea rdx, [rsp + 0x440]
mov ecx, dword [rsp + 0x12b4]
call fcn.010529a0
lea r8, [rsp + 0x440]
lea rdx, [rsp + 0xa60]
lea rcx, [rsp + 0x40]
call qword [sym.imp.MSVCR80.dll_wprintf]
mov dword [rsp + 0x12b0], 0x38
jmp 0x1030be2
mov eax, dword [rsp + 0x12b0]
sub eax, 1
mov dword [rsp + 0x12b0], eax
cmp dword [rsp + 0x12b0], 0x30
jle 0x1030cf2
mov eax, dword [rsp + 0x12b0]
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0xe90]
lea r8, [0x01007a60]
mov edx, 0x106
lea rcx, [rsp + 0xa60]
call fcn.01015ef0
mov eax, dword [rsp + 0x12b0]
add eax, 1
mov dword [rsp + 0x20], eax
lea r9, [rsp + 0xe90]
lea r8, [0x01007a60]
mov edx, 0x106
lea rcx, [rsp + 0x840]
call fcn.01015ef0
lea rdx, [rsp + 0x840]
lea rcx, [rsp + 0xa60]
call qword [sym.imp.MSVCR80.dll__wrename]
mov dword [rsp + 0xc70], eax
cmp dword [rsp + 0xc70], 0
je 0x1030ced
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x12b4], eax
cmp dword [rsp + 0x12b4], 2
je 0x1030ced
cmp dword [rsp + 0x12b4], 3
je 0x1030ced
mov r9d, 0x200
lea r8, [rsp + 0x40]
mov edx, 0xf4
mov rcx, qword [0x01068158]
call qword [sym.imp.USER32.dll_LoadStringW]
mov r8d, 0x400
lea rdx, [rsp + 0x440]
mov ecx, dword [rsp + 0x12b4]
call fcn.010529a0
lea r9, [rsp + 0x440]
lea r8, [rsp + 0x840]
lea rdx, [rsp + 0xa60]
lea rcx, [rsp + 0x40]
call qword [sym.imp.MSVCR80.dll_wprintf]
jmp 0x1030bd1
lea rcx, [0x01065bf0]
call qword [0x01068178]
test eax, eax
jne 0x1030d36
cmp dword [0x010679c0], 0
je 0x1030d29
cmp dword [0x01067484], 0
je 0x1030d29
lea rdx, [0x01007a80]
lea rcx, [0x01001b70]
call qword [sym.imp.MSVCR80.dll_wprintf]
lea rcx, [0x01065bf0]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
cmp dword [0x010679c0], 0
je 0x1030d5c
cmp dword [0x01067484], 0
je 0x1030d5c
lea rdx, [0x01007a80]
lea rcx, [0x01001b38]
call qword [sym.imp.MSVCR80.dll_wprintf]
cmp qword [0x01067c18], 0
je 0x1030eab
mov rcx, qword [0x01067c18]
call qword [sym.imp.MSVCR80.dll_fclose]
mov qword [0x01067c18], 0
lea rax, [rsp + 0xc80]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0xe90]
lea r8, [0x01007a50]
mov edx, 0x106
lea rcx, [rsp + 0xa60]
call fcn.01015ef0
lea r9, [rsp + 0xe90]
lea r8, [0x01007a40]
mov edx, 0x106
lea rcx, [rsp + 0x840]
call fcn.01015ef0
lea rdx, [rsp + 0x840]
lea rcx, [rsp + 0xa60]
call qword [sym.imp.MSVCR80.dll__wrename]
mov dword [rsp + 0xc70], eax
cmp dword [rsp + 0xc70], 0
je 0x1030e69
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x12b4], eax
cmp dword [rsp + 0x12b4], 2
je 0x1030e69
mov r9d, 0x200
lea r8, [rsp + 0x40]
mov edx, 0xf4
mov rcx, qword [0x01068158]
call qword [sym.imp.USER32.dll_LoadStringW]
mov r8d, 0x400
lea rdx, [rsp + 0x440]
mov ecx, dword [rsp + 0x12b4]
call fcn.010529a0
lea r9, [rsp + 0x440]
lea r8, [rsp + 0x840]
lea rdx, [rsp + 0xa60]
lea rcx, [rsp + 0x40]
call qword [sym.imp.MSVCR80.dll_wprintf]
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_SetLastError]
xor edx, edx
lea rcx, [0x01065f10]
call fcn.01036a90
mov qword [0x01067c18], rax
cmp qword [0x01067c18], 0
jne 0x1030eab
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov r8d, 0x400
lea rdx, [rsp + 0x440]
mov ecx, eax
call fcn.010529a0
lea rcx, [0x01065bf0]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [0x010679c0], 0
je 0x1030ede
cmp dword [0x01067484], 0
je 0x1030ede
lea rdx, [0x01007a80]
lea rcx, [0x01001b00]
call qword [sym.imp.MSVCR80.dll_wprintf]
movzx eax, word [rsp + 0x440]
test eax, eax
je 0x1030f0d
mov r9d, SQLBindParameter
mov r8d, 0x200
lea rdx, [rsp + 0x440]
mov rcx, qword [rsp + 0x12d0]
call fcn.0103d360
jmp 0x1030f25
mov r9d, 0x4e
xor r8d, r8d
xor edx, edx
mov rcx, qword [rsp + 0x12d0]
call fcn.0103d360
mov eax, 1
mov rcx, qword [rsp + 0x12b8]
xor rcx, rsp
call fcn.010588f0
add rsp, 0x12c0
pop rdi
ret