Function at 0x10033f60
Capabilities:
Check if file exists
Delete file
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x10059a61
mov eax, dword fs:[0]
push eax
sub esp, 0xa8
mov eax, dword [0x1006c3ac]
xor eax, esp
mov dword [esp + 0xa4], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1006c3ac]
xor eax, esp
push eax
lea eax, [esp + 0xbc]
mov dword fs:[0], eax
mov ebp, dword [esp + 0xcc]
cmp byte [ebp + 0x3c], 0
mov ebx, dword [sym.imp.SHLWAPI.dll_PathIsDirectoryW]
mov dword [esp + 0x1c], ebp
mov edi, 8
jne 0x10033fe7
cmp dword [ebp + 0x38], edi
jb 0x10033fc1
mov eax, dword [ebp + 0x24]
jmp 0x10033fc4
lea eax, [ebp + 0x24]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x10033fe7
cmp dword [ebp + 0x38], edi
jb 0x10033fd9
mov eax, dword [ebp + 0x24]
jmp 0x10033fdc
lea eax, [ebp + 0x24]
push eax
call ebx
test eax, eax
je 0x100347f9
lea eax, [ebp + 0x20]
lea ecx, [esp + 0x80]
call fcn.10039f60
xor esi, esi
mov dword [esp + 0xc4], esi
mov eax, dword [esp + 0x84]
cmp dword [esp + 0x98], edi
jae 0x10034016
lea eax, [esp + 0x84]
push eax
call ebx
test eax, eax
jne 0x1003404d
lea ecx, [esp + 0x80]
call fcn.10039b10
test eax, eax
jne 0x1003404d
cmp dword [esp + 0x98], edi
jb 0x10034046
mov eax, dword [esp + 0x84]
push eax
call fcn.1003f2c6
add esp, 4
xor al, al
jmp 0x100347fb
push esi
push 0x100606fe
lea ecx, [esp + 0x6c]
mov dword [esp + 0x84], 0xf
mov dword [esp + 0x80], esi
mov byte [esp + 0x70], 0
call fcn.100028e0
mov byte [esp + 0xc4], 1
mov eax, dword [ebp + 0x18]
mov edi, dword [ebp]
mov ebx, dword [eax]
mov dword [esp + 0x14], edi
mov esi, dword [ebp + 0x18]
mov eax, dword [ebp]
test edi, edi
je 0x10034095
cmp edi, eax
je 0x1003409a
call fcn.1003f767
cmp ebx, esi
je 0x10034261
test edi, edi
jne 0x1003412c
call fcn.1003f767
xor eax, eax
cmp ebx, dword [eax + 0x18]
jne 0x100340bb
call fcn.1003f767
mov ecx, dword [ebx + 0x40]
mov edi, dword [ecx]
mov ebp, dword [ebx + 0x28]
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x10034130
call fcn.1003f767
xor eax, eax
cmp ebx, dword [eax + 0x18]
jne 0x100340dc
call fcn.1003f767
mov esi, dword [ebx + 0x40]
mov eax, dword [ebx + 0x28]
test ebp, ebp
je 0x100340ea
cmp ebp, eax
je 0x100340ef
call fcn.1003f767
cmp edi, esi
je 0x100341e7
test ebp, ebp
jne 0x10034134
call fcn.1003f767
xor eax, eax
cmp edi, dword [eax + 0x18]
jne 0x1003410c
call fcn.1003f767
mov esi, dword [edi + 0x20]
mov eax, esi
cmp eax, esi
jae 0x10034115
mov eax, esi
cmp esi, 8
jb 0x10034121
mov eax, 8
cmp dword [edi + 0x24], 0x10
jb 0x10034139
mov edx, dword [edi + 0x10]
jmp 0x1003413c
mov eax, dword [edi]
jmp 0x100340b1
mov eax, dword [eax]
jmp 0x100340d2
mov eax, dword [ebp]
jmp 0x10034102
lea edx, [edi + 0x10]
mov ecx, str.config15
call fcn.1000b450
test eax, eax
jne 0x10034159
cmp esi, 8
jb 0x10034159
cmp esi, 8
setne al
test eax, eax
je 0x10034180
test ebp, ebp
jne 0x10034199
call fcn.1003f767
xor eax, eax
cmp edi, dword [eax + 0x18]
jne 0x1003416e
call fcn.1003f767
push 0
lea edx, [edi + 0x28]
push edx
or eax, 0xffffffff
lea esi, [esp + 0x6c]
call fcn.1001a410
test ebp, ebp
jne 0x10034189
call fcn.1003f767
cmp byte [edi + 0x45], 0
je 0x1003419e
call fcn.1003f767
jmp 0x100340c3
mov eax, dword [ebp]
jmp 0x10034164
mov ecx, dword [edi + 8]
cmp byte [ecx + 0x45], 0
jne 0x100341c1
mov eax, dword [ecx]
cmp byte [eax + 0x45], 0
jne 0x100341ba
nop
mov ecx, eax
mov eax, dword [ecx]
cmp byte [eax + 0x45], 0
je 0x100341b0
mov edi, ecx
jmp 0x100340c3
mov eax, dword [edi + 4]
cmp byte [eax + 0x45], 0
jne 0x100341e0
lea ebx, [ebx]
cmp edi, dword [eax + 8]
jne 0x100341e0
mov edi, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x45], 0
je 0x100341d0
mov edi, eax
jmp 0x100340c3
cmp dword [esp + 0x14], 0
jne 0x100341f3
call fcn.1003f767
cmp byte [ebx + 0x49], 0
je 0x1003420b
call fcn.1003f767
mov ebp, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
jmp 0x10034087
mov ecx, dword [ebx + 8]
cmp byte [ecx + 0x49], 0
jne 0x10034239
mov eax, dword [ecx]
cmp byte [eax + 0x49], 0
jne 0x1003422a
lea esp, [esp]
mov ecx, eax
mov eax, dword [ecx]
cmp byte [eax + 0x49], 0
je 0x10034220
mov ebp, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
mov ebx, ecx
jmp 0x10034087
mov eax, dword [ebx + 4]
cmp byte [eax + 0x49], 0
jne 0x10034252
cmp ebx, dword [eax + 8]
jne 0x10034252
mov ebx, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x49], 0
je 0x10034242
mov ebp, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
mov ebx, eax
jmp 0x10034087
cmp dword [esp + 0x78], 0
je 0x10034341
lea eax, [esp + 0x9c]
push eax
lea ecx, [esp + 0x68]
call fcn.10034830
mov byte [esp + 0xc4], 2
push 8
mov edi, 0xf
xor esi, esi
push str.config15
lea ecx, [esp + 0x2c]
mov dword [esp + 0x44], edi
mov dword [esp + 0x40], esi
mov byte [esp + 0x30], 0
call fcn.100028e0
mov byte [esp + 0xc4], 3
push 7
push str.config4
lea ecx, [esp + 0x50]
mov dword [esp + 0x68], edi
mov dword [esp + 0x64], esi
mov byte [esp + 0x54], 0
call fcn.100028e0
lea ecx, [esp + 0x9c]
push ecx
lea edx, [esp + 0x28]
push edx
lea ecx, [esp + 0x50]
mov edx, ebp
mov byte [esp + 0xcc], 4
call fcn.10032ed0
mov ebx, 0x10
cmp dword [esp + 0x60], ebx
jb 0x10034306
mov eax, dword [esp + 0x4c]
push eax
call fcn.1003f2c6
add esp, 4
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], esi
mov byte [esp + 0x4c], 0
cmp dword [esp + 0x3c], ebx
jb 0x10034326
mov ecx, dword [esp + 0x28]
push ecx
call fcn.1003f2c6
add esp, 4
cmp dword [esp + 0xb4], ebx
jb 0x10034343
mov edx, dword [esp + 0xa0]
push edx
call fcn.1003f2c6
add esp, 4
jmp 0x10034343
xor esi, esi
mov dword [esp + 0x20], esi
lea ecx, [ebp + 0x20]
lea ebx, [esp + 0x20]
mov byte [esp + 0xc4], 5
call fcn.10039fb0
test eax, eax
jne 0x1003439c
mov ebp, dword [sym.imp.KERNEL32.dll_Sleep]
mov edi, dword [esp + 0x20]
test edi, edi
je 0x1003437a
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
xor edi, edi
mov dword [esp + 0x20], edi
push 0x64
call ebp
inc esi
cmp esi, 5
jge 0x100343ab
mov ecx, dword [esp + 0x1c]
add ecx, 0x20
lea ebx, [esp + 0x20]
call fcn.10039fb0
test eax, eax
je 0x10034365
mov ebp, dword [esp + 0x1c]
mov ebx, 8
cmp dword [ebp + 0x38], ebx
jb 0x10034404
mov eax, dword [ebp + 0x24]
jmp 0x10034407
test edi, edi
je 0x100343b6
push edi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [esp + 0x7c], 0x10
jb 0x100343ca
mov eax, dword [esp + 0x68]
push eax
call fcn.1003f2c6
add esp, 4
cmp dword [esp + 0x98], 8
mov dword [esp + 0x7c], 0xf
mov dword [esp + 0x78], 0
mov byte [esp + 0x68], 0
jb 0x10034046
mov ecx, dword [esp + 0x84]
push ecx
call fcn.1003f2c6
add esp, 4
xor al, al
jmp 0x100347fb
lea eax, [ebp + 0x24]
push eax
call dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
test eax, eax
je 0x100344b0
cmp dword [ebp + 0x38], ebx
jb 0x10034420
mov eax, dword [ebp + 0x24]
jmp 0x10034423
lea eax, [ebp + 0x24]
push eax
call dword [sym.imp.SHLWAPI.dll_PathIsDirectoryW]
test eax, eax
je 0x1003449c
cmp dword [ebp + 0x38], ebx
jb 0x10034438
mov eax, dword [ebp + 0x24]
jmp 0x1003443b
lea eax, [ebp + 0x24]
xor edx, edx
mov ecx, eax
mov dword [esp + 0x3c], 7
mov dword [esp + 0x38], 0
mov word [esp + 0x28], dx
lea esi, [ecx + 2]
mov dx, word [ecx]
add ecx, 2
test dx, dx
jne 0x10034457
sub ecx, esi
sar ecx, 1
push ecx
lea esi, [esp + 0x28]
call fcn.1000b540
mov edi, esi
mov byte [esp + 0xc4], 6
call fcn.10039d60
mov byte [esp + 0xc4], 5
cmp dword [esp + 0x3c], ebx
jb 0x100344b0
mov eax, dword [esp + 0x28]
push eax
call fcn.1003f2c6
add esp, 4
jmp 0x100344b0
cmp dword [ebp + 0x38], ebx
jb 0x100344a6
mov eax, dword [ebp + 0x24]
jmp 0x100344a9
lea eax, [ebp + 0x24]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
mov eax, dword [ebp + 0x18]
mov edi, dword [ebp]
mov ecx, dword [eax]
mov dword [esp + 0x14], edi
mov dword [esp + 0x18], ecx
mov esi, dword [ebp + 0x18]
mov eax, dword [ebp]
test edi, edi
je 0x100344ce
cmp edi, eax
je 0x100344d3
call fcn.1003f767
mov ebx, dword [esp + 0x18]
cmp ebx, esi
je 0x100347a7
test edi, edi
jne 0x100345ed
call fcn.1003f767
xor eax, eax
cmp ebx, dword [eax + 0x18]
jne 0x100344f8
call fcn.1003f767
mov ebx, dword [esp + 0x18]
mov eax, dword [ebx + 0x40]
mov edi, dword [ebx + 0x28]
mov ebp, dword [eax]
mov dword [esp + 0x40], edi
jmp 0x10034510
mov eax, dword [esp + 0x14]
test eax, eax
jne 0x100345f4
call fcn.1003f767
xor eax, eax
cmp ebx, dword [eax + 0x18]
jne 0x1003452d
call fcn.1003f767
mov esi, dword [ebx + 0x40]
mov eax, dword [ebx + 0x28]
test edi, edi
je 0x1003453b
cmp edi, eax
je 0x10034540
call fcn.1003f767
cmp ebp, esi
je 0x10034731
test edi, edi
jne 0x100345fb
call fcn.1003f767
xor eax, eax
cmp ebp, dword [eax + 0x18]
jne 0x10034561
call fcn.1003f767
lea edx, [esp + 0x9c]
lea esi, [ebp + 0xc]
lea ecx, [esi + 0x1c]
push edx
call fcn.100399b0
add esp, 4
mov ebx, eax
mov byte [esp + 0xc4], 7
test edi, edi
jne 0x10034602
call fcn.1003f767
xor eax, eax
cmp ebp, dword [eax + 0x18]
jne 0x10034596
call fcn.1003f767
lea eax, [esp + 0x48]
push eax
mov ecx, esi
call fcn.100399b0
add esp, 4
mov edi, eax
cmp dword [esp + 0x14], 0
mov byte [esp + 0xc4], 8
jne 0x10034606
call fcn.1003f767
xor eax, eax
mov esi, dword [esp + 0x18]
cmp esi, dword [eax + 0x18]
jne 0x100345cb
call fcn.1003f767
lea edx, [esp + 0x24]
push edx
lea ecx, [esi + 0xc]
call fcn.100399b0
mov esi, dword [esp + 0x20]
add esi, 0x20
add esp, 4
cmp dword [esi + 0x18], 8
jb 0x1003460e
mov esi, dword [esi + 4]
jmp 0x10034611
mov eax, dword [edi]
jmp 0x100344ee
mov eax, dword [eax]
jmp 0x10034523
mov eax, dword [edi]
jmp 0x10034557
mov eax, dword [edi]
jmp 0x1003458c
mov ecx, dword [esp + 0x14]
mov eax, dword [ecx]
jmp 0x100345bd
add esi, 4
mov ecx, 8
cmp dword [ebx + 0x18], ecx
jb 0x10034620
mov edx, dword [ebx + 4]
jmp 0x10034623
lea edx, [ebx + 4]
cmp dword [edi + 0x18], ecx
jb 0x1003462d
mov ecx, dword [edi + 4]
jmp 0x10034630
lea ecx, [edi + 4]
mov edi, 8
cmp dword [eax + 0x18], edi
jb 0x1003463f
mov eax, dword [eax + 4]
jmp 0x10034642
add eax, 4
push esi
push edx
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringW]
cmp dword [esp + 0x3c], edi
jb 0x1003465f
mov eax, dword [esp + 0x28]
push eax
call fcn.1003f2c6
add esp, 4
xor esi, esi
xor ecx, ecx
mov ebx, 7
mov dword [esp + 0x3c], ebx
mov dword [esp + 0x38], esi
mov word [esp + 0x28], cx
cmp dword [esp + 0x60], edi
jb 0x10034688
mov edx, dword [esp + 0x4c]
push edx
call fcn.1003f2c6
add esp, 4
xor eax, eax
mov byte [esp + 0xc4], 5
mov dword [esp + 0x60], ebx
mov dword [esp + 0x5c], esi
mov word [esp + 0x4c], ax
cmp dword [esp + 0xb4], edi
jb 0x100346b8
mov ecx, dword [esp + 0xa0]
push ecx
call fcn.1003f2c6
add esp, 4
cmp dword [esp + 0x40], esi
jne 0x100346c3
call fcn.1003f767
cmp byte [ebp + 0x45], 0
je 0x100346db
call fcn.1003f767
mov edi, dword [esp + 0x40]
mov ebx, dword [esp + 0x18]
jmp 0x10034510
mov ecx, dword [ebp + 8]
cmp byte [ecx + 0x45], 0
jne 0x10034709
mov eax, dword [ecx]
cmp byte [eax + 0x45], 0
jne 0x100346fa
lea esp, [esp]
mov ecx, eax
mov eax, dword [ecx]
cmp byte [eax + 0x45], 0
je 0x100346f0
mov edi, dword [esp + 0x40]
mov ebx, dword [esp + 0x18]
mov ebp, ecx
jmp 0x10034510
mov eax, dword [ebp + 4]
cmp byte [eax + 0x45], 0
jne 0x10034722
cmp ebp, dword [eax + 8]
jne 0x10034722
mov ebp, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x45], 0
je 0x10034712
mov edi, dword [esp + 0x40]
mov ebx, dword [esp + 0x18]
mov ebp, eax
jmp 0x10034510
cmp dword [esp + 0x14], 0
jne 0x1003473d
call fcn.1003f767
cmp byte [ebx + 0x49], 0
je 0x10034755
call fcn.1003f767
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
jmp 0x100344c0
mov ecx, dword [ebx + 8]
cmp byte [ecx + 0x49], 0
jne 0x1003477d
mov eax, dword [ecx]
cmp byte [eax + 0x49], 0
jne 0x10034770
mov ecx, eax
mov eax, dword [ecx]
cmp byte [eax + 0x49], 0
je 0x10034766
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
jmp 0x100344bc
mov eax, dword [ebx + 4]
cmp byte [eax + 0x49], 0
jne 0x10034796
cmp ebx, dword [eax + 8]
jne 0x10034796
mov ebx, eax
mov eax, dword [eax + 4]
cmp byte [eax + 0x49], 0
je 0x10034786
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x18], eax
jmp 0x100344c0
mov eax, dword [esp + 0x20]
test eax, eax
je 0x100347b6
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
cmp dword [esp + 0x7c], 0x10
jb 0x100347ca
mov edx, dword [esp + 0x68]
push edx
call fcn.1003f2c6
add esp, 4
cmp dword [esp + 0x98], 8
mov dword [esp + 0x7c], 0xf
mov dword [esp + 0x78], 0
mov byte [esp + 0x68], 0
jb 0x100347f9
mov eax, dword [esp + 0x84]
push eax
call fcn.1003f2c6
add esp, 4
mov al, 1
mov ecx, dword [esp + 0xbc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0xa4]
xor ecx, esp
call fcn.1003f2d1
add esp, 0xb4
ret 4