Function at 0x10028d53
Capabilities:
Copy file
Delete file
Get common file path

Disassembly:
push 0x2a8
mov eax, 0x10053f2c
call fcn.1003b89c
mov eax, dword [ebp + 8]
xor ebx, ebx
lea esi, [ebp - 0x26c]
mov edi, ecx
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x274], ebx
call fcn.10028c58
mov dword [ebp - 4], ebx
cmp dword [ebp - 0x258], ebx
jne 0x10028da4
xor esi, esi
inc esi
push ebx
push 1
lea ecx, [ebp - 0x26c]
call fcn.10005a26
mov eax, esi
call fcn.1003b91f
ret
xor eax, eax
push 0x206
mov word [ebp - 0x218], ax
lea eax, [ebp - 0x216]
push ebx
push eax
call fcn.1003c1e0
add esp, 0xc
mov dword [ebp - 0x278], ebx
call fcn.10002a08
mov dword [ebp - 0x274], eax
push 0x104
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov esi, dword [sym.imp.SHLWAPI.dll_PathAppendW]
push str.drivers
lea eax, [ebp - 0x218]
push eax
call esi
lea edx, [ebp - 0x218]
call fcn.10028ce4
push dword [ebp - 0x27c]
lea eax, [ebp - 0x218]
push eax
call esi
push ebx
lea eax, [ebp - 0x218]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x10028e2e
push 8
pop esi
jmp 0x1002906f
push 3
lea eax, [ebp - 0x218]
push eax
call fcn.10004791
test eax, eax
jne 0x10028e48
push 0xa
pop esi
jmp 0x10029055
xor edi, edi
lea eax, [ebp - 0x234]
inc edi
push eax
mov dword [ebp - 0x278], edi
call fcn.10028c9c
pop ecx
mov byte [ebp - 4], 1
cmp dword [ebp - 0x254], 8
mov ecx, dword [ebp - 0x268]
jae 0x10028e77
lea ecx, [ebp - 0x268]
cmp dword [ebp - 0x21c], 8
mov eax, dword [ebp - 0x230]
jae 0x10028e8c
lea eax, [ebp - 0x230]
push ebx
push ecx
push str.Group
push eax
mov esi, reloc.OLEAUT32.dll_SysReAllocString
push esi
call fcn.10004305
test eax, eax
je 0x10029042
cmp dword [ebp - 0x21c], 8
mov eax, dword [ebp - 0x230]
jae 0x10028ebc
lea eax, [ebp - 0x230]
push ebx
push str.gxdte_driver
push str.Description
push eax
push esi
call fcn.10004305
test eax, eax
je 0x10029042
push str.gxdte
lea ecx, [ebp - 0x298]
call fcn.10004aec
push str._Instance
push eax
lea eax, [ebp - 0x250]
push eax
mov byte [ebp - 4], 2
call fcn.10009620
add esp, 0xc
push ebx
push edi
lea ecx, [ebp - 0x298]
mov byte [ebp - 4], 4
call fcn.10005a26
push str.Instances_
lea ecx, [ebp - 0x234]
call fcn.10005889
cmp dword [ebp - 0x238], 8
mov ecx, dword [ebp - 0x24c]
jae 0x10028f35
lea ecx, [ebp - 0x24c]
cmp dword [ebp - 0x21c], 8
mov eax, dword [ebp - 0x230]
jae 0x10028f4a
lea eax, [ebp - 0x230]
push ebx
push ecx
push str.DefaultInstance
push eax
push esi
call fcn.10004305
test eax, eax
jne 0x10028f71
lea ecx, [ebp - 0x250]
push 0xb
pop esi
push ebx
push edi
call fcn.10005a26
jmp 0x10029045
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x234]
call fcn.10006738
push 0x22343
lea eax, [ebp - 0x2b4]
push 0x1005eba8
push eax
call fcn.10004194
add esp, 0xc
cmp dword [eax + 0x18], 8
jb 0x10028faa
mov eax, dword [eax + 4]
jmp 0x10028fad
add eax, 4
cmp dword [ebp - 0x21c], 8
mov ecx, dword [ebp - 0x230]
jae 0x10028fc2
lea ecx, [ebp - 0x230]
push ebx
push eax
push str.Altitude
push ecx
push esi
call fcn.10004305
test eax, eax
je 0x10029001
cmp dword [ebp - 0x21c], 8
mov eax, dword [ebp - 0x230]
jae 0x10028fe9
lea eax, [ebp - 0x230]
push ebx
push ebx
push str.Flags
push eax
push esi
call fcn.10004254
mov byte [ebp - 0x26d], bl
test eax, eax
jne 0x10029008
mov byte [ebp - 0x26d], 1
push ebx
push edi
lea ecx, [ebp - 0x2b4]
call fcn.10005a26
lea ecx, [ebp - 0x250]
cmp byte [ebp - 0x26d], bl
jne 0x10028f62
push ebx
push edi
xor esi, esi
call fcn.10005a26
push ebx
push edi
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], bl
call fcn.10005a26
jmp 0x1002906f
push 0xb
pop esi
push ebx
push edi
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], bl
call fcn.10005a26
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [ebp - 0x278], ebx
je 0x1002906f
call fcn.100048d9
push dword [ebp - 0x274]
call fcn.10002a48
jmp 0x10028d8e