Function at 0x410ef0
Capabilities:
Enumerate files on windows

Disassembly:
mov r11, rsp
sub rsp, 0x2c8
mov qword [rsp + 0x58], 0xfffffffffffffffe
mov qword [r11 + 8], rbx
mov qword [r11 + 0x10], rbp
mov qword [r11 + 0x18], rsi
mov qword [r11 + 0x20], rdi
mov qword [r11 - 8], r12
mov qword [r11 - 0x10], r13
mov qword [r11 - 0x18], r14
mov qword [r11 - 0x20], r15
mov rax, qword [0x0045c120]
xor rax, rsp
mov qword [rsp + 0x290], rax
mov ebx, ecx
mov dword [rsp + 0x30], ecx
mov qword [r11 - 0x180], 0xf
xor esi, esi
mov qword [r11 - 0x188], rsi
mov byte [rsp + 0x130], sil
lea rcx, [r11 - 0x1a0]
call fcn.004089b0
test al, al
jne 0x410f89
cmp qword [rsp + 0x148], 0x10
jb 0x410f7f
mov rcx, qword [rsp + 0x130]
call fcn.004185a4
mov eax, 0x4e2e
jmp 0x41206b
mov qword [rsp + 0xd0], 0xf
mov qword [rsp + 0xc8], rsi
mov byte [rsp + 0xb8], 0
mov qword [rsp + 0xf8], 0xf
mov qword [rsp + 0xf0], rsi
mov byte [rsp + 0xe0], 0
mov ecx, 0x7300
call fcn.00424d60
mov r13, rax
test rax, rax
jne 0x41106e
lea rcx, str.Info__:_Fail_to_allocate_memory_for_UninstallSysFileList_n
call fcn.00405500
nop
cmp qword [rsp + 0xf8], 0x10
jb 0x410ffc
mov rcx, qword [rsp + 0xe0]
call fcn.004185a4
mov qword [rsp + 0xf8], 0xf
mov qword [rsp + 0xf0], rsi
mov byte [rsp + 0xe0], 0
cmp qword [rsp + 0xd0], 0x10
jb 0x411030
mov rcx, qword [rsp + 0xb8]
call fcn.004185a4
mov qword [rsp + 0xd0], 0xf
mov qword [rsp + 0xc8], rsi
mov byte [rsp + 0xb8], 0
cmp qword [rsp + 0x148], 0x10
jb 0x411064
mov rcx, qword [rsp + 0x130]
call fcn.004185a4
mov eax, 0x4e2f
jmp 0x41206b
mov ecx, 0x1cc00
call fcn.00424d60
mov r14, rax
test rax, rax
jne 0x41111b
lea rcx, str.Info__:_Fail_to_allocate_memory_for_UninstallOldPIDList_n
call fcn.00405500
nop
cmp qword [rsp + 0xf8], 0x10
jb 0x4110a9
mov rcx, qword [rsp + 0xe0]
call fcn.004185a4
mov qword [rsp + 0xf8], 0xf
mov qword [rsp + 0xf0], rsi
mov byte [rsp + 0xe0], 0
cmp qword [rsp + 0xd0], 0x10
jb 0x4110dd
mov rcx, qword [rsp + 0xb8]
call fcn.004185a4
mov qword [rsp + 0xd0], 0xf
mov qword [rsp + 0xc8], rsi
mov byte [rsp + 0xb8], 0
cmp qword [rsp + 0x148], 0x10
jb 0x411111
mov rcx, qword [rsp + 0x130]
call fcn.004185a4
mov eax, 0x4e2f
jmp 0x41206b
xor edx, edx
mov r8d, 0x7300
mov rcx, r13
call fcn.00425320
mov r8d, dword [0x004735d4]
imul r8, r8, 0x1cc
lea rdx, [0x004735e0]
mov rcx, r13
call fcn.00425700
mov r12d, dword [0x004735d4]
xor edx, edx
mov r8d, 0x1cc00
mov rcx, r14
call fcn.00425320
mov r8d, dword [0x0045dccc]
imul r8, r8, 0x1cc
lea rdx, [0x0047ebe0]
mov rcx, r14
call fcn.00425700
mov ebp, dword [0x0045dccc]
mov rcx, rbp
imul rcx, rcx, 0x1cc
add rcx, r14
mov r8d, 0x4b78
lea rdx, str.vid_339bpid_1030
call fcn.00425700
add ebp, 0x2a
test bl, 2
je 0x4111b4
mov edx, r12d
mov rcx, r13
call fcn.0040b050
mov qword [rsp + 0x120], 0xf
mov qword [rsp + 0x118], rsi
mov byte [rsp + 0x108], 0
mov r15, rsi
lea rcx, str.Setupapi.dll
call qword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov qword [rsp + 0x50], rax
test rax, rax
jne 0x4111f8
lea rcx, str.Info__:_Cant_find_Setupapi.dll__so_use_the_raw_delete._n
call fcn.00405500
jmp 0x411210
lea rdx, str.SetupUninstallOEMInfA
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_GetProcAddress]
mov r15, rax
test rax, rax
jne 0x41121c
lea rcx, str.Info__:_Cant_find_SetupUninstallOEMInf_in_Setupapi.dll__so_use_the_raw_delete._n
call fcn.00405500
lea r8, str.infoem.inf
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x60]
call fcn.004052e0
nop
mov r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rsp + 0x100]
call fcn.00403520
nop
cmp qword [rsp + 0x80], 0x10
jb 0x411266
mov rcx, qword [rsp + 0x68]
call fcn.004185a4
lea rcx, [rsp + 0x108]
cmp qword [rsp + 0x120], 0x10
cmovae rcx, qword [rsp + 0x108]
lea rdx, [rsp + 0x150]
call qword [sym.imp.KERNEL32.dll_FindFirstFileA]
mov qword [rsp + 0x48], rax
cmp rax, 0xffffffffffffffff
je 0x411f2b
test bl, 1
je 0x411f2b
mov qword [rsp + 0xa8], 0xf
mov qword [rsp + 0xa0], rsi
mov byte [rsp + 0x90], 0
lea rbx, str.Inf_
nop
nop
mov r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rsp + 0x128]
lea rcx, [rsp + 0x88]
call fcn.00403520
lea rdx, [rsp + 0x90]
mov rcx, qword [rsp + 0x90]
mov r10, qword [rsp + 0xa8]
cmp r10, 0x10
cmovae rdx, rcx
mov r8, qword [rsp + 0xa0]
cmp rbx, rdx
jb 0x4114ba
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, rcx
add rax, r8
cmp rax, rbx
jbe 0x4114ba
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, rcx
mov rsi, rbx
sub rsi, rax
cmp r8, rsi
jae 0x41136c
call fcn.0043dc40
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
mov rax, r8
sub rax, rsi
mov ebx, 5
cmp rax, rbx
cmovb rbx, rax
mov rax, 0xffffffffffffffff
sub rax, r8
cmp rax, rbx
jbe 0x411396
lea rax, [rbx + r8]
cmp rax, r8
jae 0x4113ab
call fcn.0043db70
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
test rbx, rbx
je 0x4115d2
lea rdi, [rbx + r8]
cmp rdi, 0xfffffffffffffffe
jbe 0x4113d3
call fcn.0043db70
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
cmp r10, rdi
jae 0x4113fa
mov rdx, rdi
lea rcx, [rsp + 0x88]
call fcn.00402010
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x411436
test rdi, rdi
jne 0x411436
xor esi, esi
mov qword [rsp + 0xa0], rsi
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, qword [rsp + 0x90]
mov byte [rax], sil
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x4115d4
test rdi, rdi
je 0x4115ce
lea rdx, [rsp + 0x90]
mov rcx, qword [rsp + 0x90]
cmp r10, 0x10
cmovae rdx, rcx
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, rcx
sub r10, r8
lea rcx, [rax + r8]
lea r8, [rsi + rdx]
mov r9, rbx
mov rdx, r10
call fcn.00425d30
mov qword [rsp + 0xa0], rdi
lea rax, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rax, qword [rsp + 0x90]
mov byte [rdi + rax], 0
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
xor esi, esi
jmp 0x4115d4
mov rax, 0xffffffffffffffff
sub rax, r8
cmp rax, 5
jbe 0x4114d3
lea rax, [r8 + 5]
cmp rax, r8
jae 0x4114e8
call fcn.0043db70
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
lea rdi, [r8 + 5]
cmp rdi, 0xfffffffffffffffe
jbe 0x411507
call fcn.0043db70
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
cmp r10, rdi
jae 0x41152e
mov rdx, rdi
lea rcx, [rsp + 0x88]
call fcn.00402010
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x411565
test rdi, rdi
jne 0x411565
mov qword [rsp + 0xa0], rsi
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, qword [rsp + 0x90]
mov byte [rax], dil
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x4115d4
test rdi, rdi
je 0x4115d4
lea rcx, [rsp + 0x90]
cmp r10, 0x10
cmovae rcx, qword [rsp + 0x90]
sub r10, r8
add rcx, r8
mov r9d, 5
mov r8, rbx
mov rdx, r10
call fcn.00425d30
mov qword [rsp + 0xa0], rdi
lea rax, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rax, qword [rsp + 0x90]
mov byte [rdi + rax], 0
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x4115d4
xor esi, esi
jmp 0x4115d4
xor esi, esi
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x17c]
repne scasb al, byte [rdi]
not rcx
lea rdi, [rcx - 1]
lea rax, [rsp + 0x90]
mov rcx, qword [rsp + 0x90]
cmp r10, 0x10
cmovae rax, rcx
lea rdx, [rsp + 0x17c]
cmp rdx, rax
jb 0x4117b4
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, rcx
add rax, r8
lea rdx, [rsp + 0x17c]
cmp rax, rdx
jbe 0x4117b4
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, rcx
lea rsi, [rsp + 0x17c]
sub rsi, rax
cmp r8, rsi
jae 0x411670
call fcn.0043dc40
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
mov rax, r8
sub rax, rsi
cmp rax, rdi
cmovb rdi, rax
mov rax, 0xffffffffffffffff
sub rax, r8
cmp rax, rdi
jbe 0x411695
lea rax, [rdi + r8]
cmp rax, r8
jae 0x4116aa
call fcn.0043db70
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
test rdi, rdi
je 0x4118cf
lea rbx, [rdi + r8]
cmp rbx, 0xfffffffffffffffe
jbe 0x4116d2
call fcn.0043db70
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
cmp r10, rbx
jae 0x4116f9
mov rdx, rbx
lea rcx, [rsp + 0x88]
call fcn.00402010
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x411732
test rbx, rbx
jne 0x411732
mov qword [rsp + 0xa0], rbx
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, qword [rsp + 0x90]
mov byte [rax], bl
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x4118cf
test rbx, rbx
je 0x4118cf
lea rdx, [rsp + 0x90]
mov rcx, qword [rsp + 0x90]
cmp r10, 0x10
cmovae rdx, rcx
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, rcx
sub r10, r8
lea rcx, [rax + r8]
lea r8, [rsi + rdx]
mov r9, rdi
mov rdx, r10
call fcn.00425d30
mov qword [rsp + 0xa0], rbx
lea rax, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rax, qword [rsp + 0x90]
mov byte [rbx + rax], 0
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x4118cf
mov rax, 0xffffffffffffffff
sub rax, r8
cmp rax, rdi
jbe 0x4117cc
lea rax, [rdi + r8]
cmp rax, r8
jae 0x4117e1
call fcn.0043db70
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
test rdi, rdi
je 0x4118cf
lea rbx, [rdi + r8]
cmp rbx, 0xfffffffffffffffe
jbe 0x411809
call fcn.0043db70
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
cmp r10, rbx
jae 0x411830
mov rdx, rbx
lea rcx, [rsp + 0x88]
call fcn.00402010
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x411866
test rbx, rbx
jne 0x411866
mov qword [rsp + 0xa0], rsi
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, qword [rsp + 0x90]
mov byte [rax], bl
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x4118cf
test rbx, rbx
je 0x4118cf
lea rcx, [rsp + 0x90]
cmp r10, 0x10
cmovae rcx, qword [rsp + 0x90]
sub r10, r8
add rcx, r8
mov r9, rdi
lea r8, [rsp + 0x17c]
mov rdx, r10
call fcn.00425d30
mov qword [rsp + 0xa0], rbx
lea rax, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rax, qword [rsp + 0x90]
mov byte [rbx + rax], 0
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
xor esi, esi
xor edi, edi
test r12d, r12d
je 0x411b80
lea rbx, [r13 + 0x1c8]
cmp dword [rbx], esi
je 0x411919
mov edx, edi
imul rdx, rdx, 0x1cc
add rdx, r13
lea rcx, [rsp + 0x90]
cmp r10, 0x10
cmovae rcx, qword [rsp + 0x90]
call fcn.00408b40
cmp al, 1
je 0x41192e
mov r10, qword [rsp + 0xa8]
add edi, 1
add rbx, 0x1cc
cmp edi, r12d
jae 0x411b78
jmp 0x4118e3
lea rcx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rcx, qword [rsp + 0x90]
call fcn.0040f8d0
call fcn.00418ad4
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x411eed
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x38], rax
lea r8, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae r8, qword [rsp + 0x90]
lea rdx, str._nInfo__:_Remove_inf_file___s__n
lea rcx, [rsp + 0x38]
call fcn.00403da0
mov rdi, qword [rsp + 0x38]
mov rcx, rdi
call fcn.00405500
test r15, r15
je 0x411a26
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rsp + 0x17c]
call r15
test eax, eax
je 0x4119f7
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rdx, qword [rsp + 0x90]
lea rcx, str.Info__:_Remove_inf_file__s__OK._n
call fcn.00405500
mov esi, 1
jmp 0x411b36
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rdx, qword [rsp + 0x90]
mov r8d, eax
lea rcx, str.Info__:_Remove_inf_file__s__err:_d._n
call fcn.00405500
lea rcx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rcx, qword [rsp + 0x90]
call fcn.00401b70
test al, al
jne 0x411a71
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rdx, qword [rsp + 0x90]
lea rcx, str.Error_:_Remove_read_only_inf_file__s___err._n
call fcn.00405500
jmp 0x411a97
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rdx, qword [rsp + 0x90]
lea rcx, str.Error_:_Remove_read_only_inf_file__s__Succeed._n
call fcn.00405500
mov rdx, qword [rsp + 0xa0]
lea r8, [rdx - 1]
add rdx, 0xfffffffffffffffd
mov qword [rsp + 0x20], 3
lea r9, [0x00442248]
lea rcx, [rsp + 0x88]
call fcn.00404120
lea rcx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rcx, qword [rsp + 0x90]
call fcn.00401b70
test al, al
jne 0x411b0f
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rdx, qword [rsp + 0x90]
lea rcx, str.Remove_read_only_pnf_file__s___err._n
call fcn.00405500
jmp 0x411b36
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rdx, qword [rsp + 0x90]
lea rcx, str.Remove_read_only_pnf_file__s__Succeed._n
call fcn.00405500
nop
lea rdx, [rdi - 0x18]
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x411b66
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x411b80
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x411b80
mov r8, qword [rsp + 0xa0]
xor ebx, ebx
test ebp, ebp
je 0x411e36
nop
nop
mov edi, ebx
imul rdi, rdi, 0x1cc
add rdi, r14
lea rcx, [rsp + 0x90]
cmp r10, 0x10
cmovae rcx, qword [rsp + 0x90]
mov rdx, rdi
call fcn.00408b40
cmp al, 1
je 0x411beb
mov rcx, rdi
call fcn.00410730
add ebx, 1
cmp ebx, ebp
jae 0x411bd6
mov r10, qword [rsp + 0xa8]
jmp 0x411b90
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x411e36
lea rcx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rcx, qword [rsp + 0x90]
call fcn.0040f8d0
call fcn.00418ad4
xor ecx, ecx
test rax, rax
setne cl
test ecx, ecx
je 0x411ef8
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + 0x18]
add rax, 0x18
mov qword [rsp + 0x40], rax
lea r8, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae r8, qword [rsp + 0x90]
lea rdx, str._nInfo__:_Remove_inf_file___s__n
lea rcx, [rsp + 0x40]
call fcn.00403da0
mov rdi, qword [rsp + 0x40]
mov rcx, rdi
call fcn.00405500
test r15, r15
je 0x411ce6
xor r8d, r8d
lea edx, [r8 + 1]
lea rcx, [rsp + 0x17c]
call r15
test eax, eax
je 0x411caf
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rdx, qword [rsp + 0x90]
lea rcx, str.Info__:_Remove_inf_file__s__OK._n
call fcn.00405500
jmp 0x411df6
call qword [sym.imp.KERNEL32.dll_GetLastError]
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rdx, qword [rsp + 0x90]
mov r8d, eax
lea rcx, str.Info__:_Remove_inf_file__s__err:_d._n
call fcn.00405500
test esi, esi
jne 0x411df6
lea rcx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rcx, qword [rsp + 0x90]
call fcn.00401b70
test al, al
jne 0x411d31
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rdx, qword [rsp + 0x90]
lea rcx, str.Error_:_Remove_read_only_inf_file__s___err._n
call fcn.00405500
jmp 0x411d57
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rdx, qword [rsp + 0x90]
lea rcx, str.Error_:_Remove_read_only_inf_file__s__Succeed._n
call fcn.00405500
mov rdx, qword [rsp + 0xa0]
lea r8, [rdx - 1]
add rdx, 0xfffffffffffffffd
mov qword [rsp + 0x20], 3
lea r9, [0x00442248]
lea rcx, [rsp + 0x88]
call fcn.00404120
lea rcx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rcx, qword [rsp + 0x90]
call fcn.00401b70
test al, al
jne 0x411dcf
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rdx, qword [rsp + 0x90]
lea rcx, str.Remove_read_only_pnf_file__s___err._n
call fcn.00405500
jmp 0x411df6
lea rdx, [rsp + 0x90]
cmp qword [rsp + 0xa8], 0x10
cmovae rdx, qword [rsp + 0x90]
lea rcx, str.Remove_read_only_pnf_file__s__Succeed._n
call fcn.00405500
nop
lea rdx, [rdi - 0x18]
mov eax, 0xffffffff
lock xadd dword [rdx + 0x10], eax
add eax, 0xffffffff
test eax, eax
jg 0x411e26
mov rcx, qword [rdx]
mov rax, qword [rcx]
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
jmp 0x411e36
mov r10, qword [rsp + 0xa8]
mov r8, qword [rsp + 0xa0]
lea rax, [rsp + 0x90]
mov rcx, qword [rsp + 0x90]
cmp r10, 0x10
cmovae rax, rcx
lea rdx, [0x004404b5]
cmp rdx, rax
jb 0x411ea4
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, rcx
add rax, r8
cmp rax, rdx
jbe 0x411ea4
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, rcx
mov r8, rdx
sub r8, rax
xor r9d, r9d
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0x88]
call fcn.00403520
xor esi, esi
jmp 0x411ec6
xor esi, esi
mov qword [rsp + 0xa0], rsi
lea rax, [rsp + 0x90]
cmp r10, 0x10
cmovae rax, qword [rsp + 0x90]
mov byte [rax], sil
lea rdx, [rsp + 0x150]
mov rdi, qword [rsp + 0x48]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindNextFileA]
cmp eax, 1
jne 0x411f03
lea rbx, str.Inf_
jmp 0x4112d0
mov ecx, 0x80004005
call fcn.00401000
int3
mov ecx, 0x80004005
call fcn.00401000
int3
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_FindClose]
nop
cmp qword [rsp + 0xa8], 0x10
jb 0x411f53
mov rcx, qword [rsp + 0x90]
call fcn.004185a4
mov ebx, dword [rsp + 0x30]
jmp 0x411f57
lea rdx, [rsp + 0x108]
cmp qword [rsp + 0x120], 0x10
cmovae rdx, qword [rsp + 0x108]
lea rcx, str.Info__:_No_inf_file__s__should_be_delete._n
call fcn.00405500
jmp 0x411f57
mov ebx, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x50]
test rcx, rcx
je 0x411f67
call qword [sym.imp.KERNEL32.dll_FreeLibrary]
test bl, 4
je 0x411f98
cmp byte [0x0045db9a], 1
jne 0x411f98
mov edx, 1
lea rcx, str.WUDFUpdate_01007.dll
call fcn.0040b050
mov edx, dword [0x0045dcc8]
lea rcx, [0x0045dcd0]
call fcn.0040b050
lea rcx, str._nInfo__:_Remove_driver_file__OK._n
call fcn.00405500
mov rcx, r13
call fcn.00424e30
mov rcx, r14
call fcn.00424e30
nop
cmp qword [rsp + 0x120], 0x10
jb 0x411fcd
mov rcx, qword [rsp + 0x108]
call fcn.004185a4
mov qword [rsp + 0x120], 0xf
mov qword [rsp + 0x118], rsi
mov byte [rsp + 0x108], 0
cmp qword [rsp + 0xf8], 0x10
jb 0x412001
mov rcx, qword [rsp + 0xe0]
call fcn.004185a4
mov qword [rsp + 0xf8], 0xf
mov qword [rsp + 0xf0], rsi
mov byte [rsp + 0xe0], 0
cmp qword [rsp + 0xd0], 0x10
jb 0x412035
mov rcx, qword [rsp + 0xb8]
call fcn.004185a4
mov qword [rsp + 0xd0], 0xf
mov qword [rsp + 0xc8], rsi
mov byte [rsp + 0xb8], 0
cmp qword [rsp + 0x148], 0x10
jb 0x412069
mov rcx, qword [rsp + 0x130]
call fcn.004185a4
xor eax, eax
mov rcx, qword [rsp + 0x290]
xor rcx, rsp
call fcn.004252f0
mov rbx, qword [rsp + 0x2d0]
mov rbp, qword [rsp + 0x2d8]
mov rsi, qword [rsp + 0x2e0]
mov rdi, qword [rsp + 0x2e8]
mov r12, qword [rsp + 0x2c0]
mov r13, qword [rsp + 0x2b8]
mov r14, qword [rsp + 0x2b0]
mov r15, qword [rsp + 0x2a8]
add rsp, 0x2c8
ret