Function at 0x10b132e
Capabilities:
Create directory
Delete directory
Move file

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x378
push ebx
push esi
xor ebx, ebx
push edi
lea ecx, [ebp - 0x378]
mov dword [ebp - 8], ebx
call fcn.0107e139
lea ecx, [ebp - 0x264]
call fcn.0107e139
lea ecx, [ebp - 0x1ac]
call fcn.0107e139
lea ecx, [ebp - 0x208]
call fcn.0107e139
lea ecx, [ebp - 0x31c]
call fcn.0107e139
lea ecx, [ebp - 0x2c0]
call fcn.0107e139
lea ecx, [ebp - 0x70]
call fcn.010424ee
lea ecx, [ebp - 0x7c]
call fcn.010424ee
lea ecx, [ebp - 0x2c]
call fcn.010424ee
lea ecx, [ebp - 0x54]
call fcn.010424ee
lea ecx, [ebp - 0x88]
call fcn.010424ee
xor eax, eax
lea edi, [ebp - 0x64]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
lea edi, [ebp - 0x20]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor ecx, ecx
stosd dword es:[edi], eax
mov eax, dword [ebp + 8]
inc ecx
cmp eax, ebx
mov dword [ebp - 0xc], ecx
je 0x10b1a61
mov esi, dword [ebp + 0xc]
cmp esi, ebx
je 0x10b1a61
cmp dword [ebp + 0x10], ebx
je 0x10b1a61
mov edx, dword [ebp + 0x1c]
cmp edx, ebx
je 0x10b13ee
mov byte [edx], bl
lea edx, [ebp - 0xc]
push edx
lea edx, [ebp - 0x64]
push edx
push ebx
push ebx
push 0x10256ec
mov dword [ebp - 0xc], ecx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x20]
cmp dword [ebp - 0xc], ebx
je 0x10b141e
cmp word [ebp - 0x64], 8
jne 0x10b141e
mov eax, dword [ebp - 0x5c]
cmp eax, ebx
je 0x10b141e
cmp word [eax], bx
jne 0x10b1443
lea eax, [ebp - 0x64]
push eax
call fcn.01082281
push dword [esi + 0x3c]
mov dword [ebp - 0x5c], ebx
mov word [ebp - 0x64], 8
call fcn.01042188
cmp eax, ebx
mov dword [ebp - 0x5c], eax
je 0x10b1655
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
lea edx, [ebp - 0xc]
push edx
lea edx, [ebp - 0x20]
push edx
push ebx
push ebx
push 0x10256e0
push eax
mov dword [ebp - 0xc], 1
call dword [ecx + 0x20]
mov esi, eax
cmp esi, ebx
jl 0x10b1a72
mov eax, dword [ebp + 0xc]
push dword [eax + 0x18]
lea ecx, [ebp - 0x264]
push ebx
call fcn.0107f141
mov esi, eax
cmp esi, ebx
jl 0x10b1a72
push 0x20
push dword [ebp - 0x5c]
lea eax, [ebp - 0x264]
push eax
call fcn.0107a4dc
cmp eax, ebx
jge 0x10b14dc
lea ecx, [ebp - 0x38]
call fcn.010424ee
push ebx
push 0x394
lea ecx, [ebp - 0x38]
call fcn.0104336d
mov esi, eax
cmp esi, ebx
jl 0x10b14cc
push 0x20
push dword [ebp - 0x38]
lea eax, [ebp - 0x264]
push eax
call fcn.0107a4dc
mov esi, eax
lea ecx, [ebp - 0x38]
call fcn.01042e75
cmp esi, ebx
jl 0x10b1a72
lea eax, [ebp - 0x1ac]
push eax
lea ecx, [ebp - 0x264]
call fcn.0107f6be
mov esi, eax
cmp esi, ebx
jl 0x10b1a72
cmp word [ebp - 0x20], 8
jne 0x10b1616
push dword [ebp - 0x18]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
jbe 0x10b1616
push 0x20
push dword [ebp - 0x18]
lea eax, [ebp - 0x1ac]
push eax
call fcn.0107a4dc
mov esi, eax
cmp esi, 0xc00d1325
jne 0x10b1609
lea ecx, [ebp - 0x38]
mov dword [ebp - 0x10], 1
call fcn.010424ee
or dword [ebp - 0x3c], 0xffffffff
xor eax, eax
lea edi, [ebp - 0x98]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea edx, [ebp - 0x10]
push edx
lea edx, [ebp - 0x98]
push edx
stosd dword es:[edi], eax
push ebx
push ebx
lea edx, [ebp - 0x44]
stosd dword es:[edi], eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push edx
push eax
mov dword [ebp - 0x44], 0xc0000004
mov dword [ebp - 0x40], 0x400300a
call dword [ecx + 0x20]
mov esi, eax
cmp esi, ebx
jl 0x10b15d1
cmp word [ebp - 0x98], 0x48
jne 0x10b159f
push 8
push ebx
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0x20]
push eax
call fcn.0109da53
mov esi, eax
cmp esi, ebx
jl 0x10b15d1
cmp word [ebp - 0x20], 8
jne 0x10b15d1
push dword [ebp - 0x18]
call dword [sym.imp.OLEAUT32.dll_VariantInit]
test eax, eax
jbe 0x10b15d1
push 0xffffffffffffffff
push dword [ebp - 0x18]
lea ecx, [ebp - 0x38]
call fcn.01042ec9
push 0x1023f0c
lea ecx, [ebp - 0x38]
call fcn.01042754
mov ecx, dword [ebp - 0x38]
xor eax, eax
cmp ecx, ebx
je 0x10b15e0
cmp word [ecx], bx
setne al
cmp al, bl
je 0x10b15f5
push 0x20
push ecx
lea eax, [ebp - 0x1ac]
push eax
call fcn.0107a4dc
mov esi, eax
lea eax, [ebp - 0x98]
push eax
call fcn.01082281
lea ecx, [ebp - 0x38]
call fcn.01042e75
cmp esi, ebx
jge 0x10b1616
lea eax, [ebp - 0x20]
push eax
call fcn.01082281
cmp dword [ebp - 0xc], ebx
je 0x10b162e
cmp word [ebp - 0x20], 8
jne 0x10b162e
mov eax, dword [ebp - 0x18]
cmp eax, ebx
je 0x10b162e
cmp word [eax], bx
jne 0x10b1697
lea eax, [ebp - 0x20]
push eax
mov dword [ebp - 4], ebx
call fcn.01082281
mov eax, dword [ebp + 0xc]
push dword [eax + 0x48]
mov dword [ebp - 0x18], ebx
mov word [ebp - 0x20], 8
call fcn.01042188
cmp eax, ebx
mov dword [ebp - 4], eax
jne 0x10b165f
mov esi, 0x8007000e
jmp 0x10b1a72
lea ecx, [ebp - 0x18]
push ecx
push eax
call fcn.010afdbd
cmp dword [ebp - 4], ebx
mov esi, eax
je 0x10b167c
lea eax, [ebp - 4]
push eax
call fcn.01042199
mov dword [ebp - 4], ebx
cmp esi, ebx
jl 0x10b1a72
push 0x20
push dword [ebp - 0x18]
lea eax, [ebp - 0x1ac]
push eax
call fcn.0107a4dc
mov esi, eax
cmp esi, ebx
jl 0x10b1a72
mov eax, dword [ebp + 0x10]
push dword [eax]
lea ecx, [ebp - 0x2c0]
push ebx
call fcn.0107f141
mov esi, eax
cmp esi, ebx
jl 0x10b1a72
lea eax, [ebp - 0x88]
push eax
lea ecx, [ebp - 0x2c0]
call fcn.0107cd51
mov esi, eax
cmp esi, ebx
jl 0x10b1a72
lea eax, [ebp - 0x208]
push eax
lea ecx, [ebp - 0x1ac]
call fcn.0107f6be
mov esi, eax
cmp esi, ebx
jl 0x10b1a72
push 0xffffffffffffffff
push dword [ebp - 0x88]
lea ecx, [ebp - 0x208]
call fcn.0107e578
mov esi, eax
cmp esi, ebx
jl 0x10b1a72
lea eax, [ebp - 0x31c]
push eax
lea eax, [ebp - 0x208]
push eax
call fcn.0107a8b8
mov esi, eax
cmp esi, ebx
jl 0x10b1a72
lea eax, [ebp - 0x31c]
push eax
lea ecx, [ebp - 0x208]
call fcn.0107f7dd
lea eax, [ebp - 0x2c]
push eax
push ebx
lea ecx, [ebp - 0x208]
call fcn.0107f08b
mov esi, eax
cmp esi, ebx
jl 0x10b1a72
lea eax, [ebp - 0x54]
push eax
push ebx
lea ecx, [ebp - 0x2c0]
call fcn.0107f08b
mov esi, eax
cmp esi, ebx
jl 0x10b1a72
push dword [ebp - 0x54]
lea ecx, [ebp - 0x2c]
call fcn.010428ff
test eax, eax
je 0x10b1a2a
lea ecx, [ebp - 0xf4]
mov dword [ebp - 4], ebx
mov dword [ebp - 0x10], ebx
call fcn.0107e139
cmp byte [ebp + 0x18], bl
mov edi, dword [sym.imp.SHELL32.dll_SHChangeNotify]
jne 0x10b180b
lea eax, [ebp - 0x70]
push eax
push ebx
lea ecx, [ebp - 0x264]
call fcn.0107f08b
mov esi, eax
cmp esi, ebx
jl 0x10b192e
push ebx
push dword [ebp - 0x70]
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
cmp eax, ebx
mov dword [ebp - 4], eax
je 0x10b17d6
push ebx
push dword [ebp - 0x70]
push 5
push 8
call edi
lea eax, [ebp - 0x7c]
push eax
push ebx
lea ecx, [ebp - 0x1ac]
call fcn.0107f08b
mov esi, eax
cmp esi, ebx
jl 0x10b192e
push ebx
push dword [ebp - 0x7c]
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
cmp eax, ebx
mov dword [ebp - 0x10], eax
je 0x10b180b
push ebx
push dword [ebp - 0x7c]
push 5
push 8
call edi
lea eax, [ebp - 0xf4]
push eax
lea eax, [ebp - 0x208]
push eax
call fcn.0107c4e1
mov esi, eax
cmp esi, ebx
jl 0x10b192e
lea ecx, [ebp - 0x2c]
call fcn.01042c9c
lea eax, [ebp - 0x2c]
push eax
push ebx
lea ecx, [ebp - 0xf4]
call fcn.0107f08b
mov esi, eax
cmp esi, ebx
jl 0x10b192e
push dword [ebp - 0x54]
push 0x1025678
call fcn.010a163c
push dword [ebp - 0x2c]
push 0x1025610
call fcn.010a163c
push dword [ebp - 0x2c]
push dword [ebp - 0x54]
call dword [sym.imp.KERNEL32.dll_MoveFileW]
test eax, eax
je 0x10b197f
push dword [ebp - 0x2c]
push dword [ebp - 0x54]
push 5
push 1
call dword [sym.imp.SHELL32.dll_SHChangeNotify]
lea ecx, [ebp - 0x150]
call fcn.0107e139
xor eax, eax
lea edi, [ebp - 0x48]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x40]
push eax
lea ecx, [ebp - 0x2c]
mov word [ebp - 0x48], 8
call fcn.010429a5
mov esi, eax
cmp esi, ebx
jl 0x10b1923
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
sub esp, 0x10
mov edi, esp
lea esi, [ebp - 0x48]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 0x800000c
push eax
movsd dword es:[edi], dword [esi]
call dword [ecx + 0x1c]
mov esi, eax
cmp esi, ebx
jge 0x10b18df
lea eax, [ebp - 0x40]
push eax
call fcn.01042199
jmp 0x10b1923
mov eax, dword [ebp + 0x1c]
cmp eax, ebx
je 0x10b18e9
mov byte [eax], 1
lea eax, [ebp - 0x40]
push eax
call fcn.01042199
mov edi, dword [ebp + 0x10]
push dword [edi]
lea ecx, [ebp - 0x150]
push ebx
mov word [ebp - 0x48], bx
call fcn.0107f141
mov esi, eax
cmp esi, ebx
lea ecx, [ebp - 0x150]
jl 0x10b1929
push 0x1002298
call fcn.0107f28d
mov esi, eax
cmp esi, ebx
jge 0x10b193e
lea ecx, [ebp - 0x150]
call fcn.0104163c
lea ecx, [ebp - 0xf4]
call fcn.0104163c
jmp 0x10b1a66
lea eax, [ebp - 0x2c]
push eax
lea eax, [ebp - 0x54]
push eax
push dword [ebp + 8]
call fcn.0109f2bc
push 1
push dword [ebp + 0xc]
lea eax, [ebp - 0x150]
push eax
call fcn.010b018f
lea ecx, [ebp - 0x2c]
call fcn.0104356e
push eax
mov ecx, edi
call fcn.01042d41
lea ecx, [ebp - 0x150]
call fcn.0104163c
jmp 0x10b1a1f
mov edi, dword [sym.imp.KERNEL32.dll_GetLastError]
call edi
cmp eax, ebx
jne 0x10b1990
push 0x57
pop eax
cmp eax, ebx
jg 0x10b199d
call edi
cmp eax, ebx
jne 0x10b19b0
push 0x57
pop eax
jmp 0x10b19b0
call edi
cmp eax, ebx
jne 0x10b19a6
push 0x57
pop eax
and eax, 0xffff
or eax, 0x80070000
cmp eax, 0x80070002
mov dword [ebp - 8], eax
je 0x10b19da
cmp eax, 0x80070003
je 0x10b19da
cmp eax, 0x80070035
je 0x10b19da
cmp eax, 0x80070037
je 0x10b19da
cmp eax, 0x800700b7
jne 0x10b19e1
xor esi, esi
jmp 0x10b19e1
mov dword [ebp - 8], 1
cmp dword [ebp - 4], ebx
mov edi, dword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
je 0x10b1a03
push dword [ebp - 0x70]
call edi
test eax, eax
je 0x10b1a03
push ebx
push dword [ebp - 0x70]
push 5
push 0x10
call dword [sym.imp.SHELL32.dll_SHChangeNotify]
cmp dword [ebp - 0x10], ebx
je 0x10b1a1f
push dword [ebp - 0x7c]
call edi
test eax, eax
je 0x10b1a1f
push ebx
push dword [ebp - 0x7c]
push 5
push 0x10
call dword [sym.imp.SHELL32.dll_SHChangeNotify]
lea ecx, [ebp - 0xf4]
call fcn.0104163c
call fcn.0109e649
test eax, eax
je 0x10b1a66
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + 0x30]
mov esi, dword [ecx + 0x24]
mov edi, dword [ecx + 0x18]
mov ecx, dword [ebp + 0x10]
mov ecx, dword [ecx]
xor edx, edx
cmp byte [ebp + 0x18], bl
sete dl
push edx
push dword [ebp + 0x14]
push eax
push esi
push edi
push ecx
call fcn.010b10b8
mov esi, eax
cmp esi, ebx
jl 0x10b1a72
jmp 0x10b1a66
mov esi, 0x80004003
cmp esi, ebx
jl 0x10b1a72
cmp dword [ebp - 8], ebx
je 0x10b1a72
mov esi, dword [ebp - 8]
lea eax, [ebp - 0x64]
push eax
call fcn.01082281
lea eax, [ebp - 0x20]
push eax
call fcn.01082281
lea ecx, [ebp - 0x88]
call fcn.01042e75
lea ecx, [ebp - 0x54]
call fcn.01042e75
lea ecx, [ebp - 0x2c]
call fcn.01042e75
lea ecx, [ebp - 0x7c]
call fcn.01042e75
lea ecx, [ebp - 0x70]
call fcn.01042e75
lea ecx, [ebp - 0x2c0]
call fcn.0104163c
lea ecx, [ebp - 0x31c]
call fcn.0104163c
lea ecx, [ebp - 0x208]
call fcn.0104163c
lea ecx, [ebp - 0x1ac]
call fcn.0104163c
lea ecx, [ebp - 0x264]
call fcn.0104163c
lea ecx, [ebp - 0x378]
call fcn.0104163c
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret 0x18