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

Disassembly:
push 0x2ac
mov eax, 0x1004fc3e
call fcn.10037d5a
xor esi, esi
lea eax, [ebp - 0x270]
mov edi, ecx
mov ebx, edx
mov dword [ebp - 0x27c], esi
call fcn.100340e0
mov dword [ebp - 4], esi
cmp dword [ebp - 0x25c], esi
jne 0x10034222
xor edi, edi
inc edi
push esi
push 1
lea esi, [ebp - 0x270]
call fcn.100021ef
mov eax, edi
call fcn.10037ddd
ret
xor eax, eax
push 0x206
mov word [ebp - 0x21c], ax
lea eax, [ebp - 0x21a]
push esi
push eax
call fcn.10038cf0
add esp, 0xc
mov dword [ebp - 0x280], esi
call fcn.1002bdcf
mov dword [ebp - 0x27c], eax
push 0x104
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov esi, dword [sym.imp.SHLWAPI.dll_PathAppendW]
push str.drivers
lea eax, [ebp - 0x21c]
push eax
call esi
lea edx, [ebp - 0x21c]
call fcn.1003416e
push ebx
lea eax, [ebp - 0x21c]
push eax
call esi
push 0
lea eax, [ebp - 0x21c]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
jne 0x100342af
mov dword [ebp - 0x278], 8
jmp 0x10034521
push 3
lea eax, [ebp - 0x21c]
push eax
call fcn.1002de3d
test eax, eax
jne 0x100342d0
mov dword [ebp - 0x278], 0xa
jmp 0x10034501
lea eax, [ebp - 0x238]
push eax
mov dword [ebp - 0x280], 1
call fcn.10034127
pop ecx
mov byte [ebp - 4], 1
cmp dword [ebp - 0x258], 8
mov esi, dword [ebp - 0x26c]
jae 0x10034300
lea esi, [ebp - 0x26c]
cmp dword [ebp - 0x220], 8
mov ebx, dword [ebp - 0x234]
jae 0x10034315
lea ebx, [ebp - 0x234]
push str.Group
mov edi, reloc.WS2_32.dll_bind
call fcn.1002d89c
test eax, eax
je 0x100344e4
cmp dword [ebp - 0x220], 8
mov ebx, dword [ebp - 0x234]
jae 0x10034341
lea ebx, [ebp - 0x234]
push str.Description
mov esi, str.gxdte_driver
call fcn.1002d89c
test eax, eax
je 0x100344e4
push str.gxdte
lea esi, [ebp - 0x2b8]
call fcn.10001ec7
push str._Instance
push eax
lea eax, [ebp - 0x254]
push eax
mov byte [ebp - 4], 2
call fcn.10006a01
add esp, 0xc
push 0
push 1
mov byte [ebp - 4], 4
call fcn.100021ef
push str.Instances_
lea eax, [ebp - 0x238]
push eax
call fcn.10005536
cmp dword [ebp - 0x23c], 8
mov esi, dword [ebp - 0x250]
jae 0x100343b4
lea esi, [ebp - 0x250]
cmp dword [ebp - 0x220], 8
mov ebx, dword [ebp - 0x234]
jae 0x100343c9
lea ebx, [ebp - 0x234]
push str.DefaultInstance
call fcn.1002d89c
test eax, eax
jne 0x100343fa
xor ebx, ebx
push ebx
push 1
lea esi, [ebp - 0x254]
mov dword [ebp - 0x278], 0xb
call fcn.100021ef
mov byte [ebp - 4], bl
push ebx
jmp 0x100344f4
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x254]
lea ecx, [ebp - 0x238]
call fcn.10005b87
push 0x22343
push 0x1005b9f8
lea ecx, [ebp - 0x29c]
call fcn.1002d7c0
cmp dword [eax + 0x18], 8
pop ecx
pop ecx
jb 0x10034431
mov eax, dword [eax + 4]
jmp 0x10034434
add eax, 4
cmp dword [ebp - 0x220], 8
mov ebx, dword [ebp - 0x234]
jae 0x10034449
lea ebx, [ebp - 0x234]
push str.Altitude
mov esi, eax
call fcn.1002d89c
test eax, eax
je 0x10034488
cmp dword [ebp - 0x220], 8
mov eax, dword [ebp - 0x234]
jae 0x1003446e
lea eax, [ebp - 0x234]
xor ebx, ebx
push ebx
push str.Flags
push eax
call fcn.1002d878
test eax, eax
je 0x1003448a
mov byte [ebp - 0x271], bl
jmp 0x10034491
xor ebx, ebx
mov byte [ebp - 0x271], 1
xor edi, edi
push ebx
inc edi
push edi
lea esi, [ebp - 0x29c]
call fcn.100021ef
push ebx
lea esi, [ebp - 0x254]
push edi
cmp byte [ebp - 0x271], bl
je 0x100344c7
mov dword [ebp - 0x278], 0xb
call fcn.100021ef
push ebx
mov byte [ebp - 4], bl
push edi
jmp 0x100344f6
mov dword [ebp - 0x278], ebx
call fcn.100021ef
push ebx
push edi
lea esi, [ebp - 0x238]
mov byte [ebp - 4], bl
call fcn.100021ef
jmp 0x10034521
mov dword [ebp - 0x278], 0xb
mov byte [ebp - 4], 0
push 0
push 1
lea esi, [ebp - 0x238]
call fcn.100021ef
lea eax, [ebp - 0x21c]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
cmp dword [ebp - 0x280], 0
je 0x10034521
push str.gxdte
call fcn.1002e004
push dword [ebp - 0x27c]
call fcn.1002be0f
mov edi, dword [ebp - 0x278]
xor esi, esi
jmp 0x1003420c