Function at 0x109eca1
Capabilities:
Create directory

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x24
push ebx
push esi
push edi
xor edi, edi
push 2
mov dword [ebp - 0x14], edi
mov dword [ebp - 0x10], edi
mov dword [ebp - 0xc], edi
mov dword [ebp - 0x1c], edi
mov dword [ebp - 4], edi
mov dword [ebp - 8], edi
mov dword [ebp - 0x20], edi
call dword [sym.imp.ADVAPI32.dll_ImpersonateSelf]
test eax, eax
jne 0x109ece1
call fcn.0108edc3
mov esi, eax
push esi
push 0xa170197
jmp 0x109ef39
xor eax, eax
inc eax
push eax
push 0x10027ac
mov dword [ebp - 0x1c], eax
call fcn.010a40b6
mov esi, eax
cmp esi, edi
je 0x109ed03
push esi
push 0xa1c0197
jmp 0x109ef39
mov eax, dword [ebp + 0x24]
cmp eax, edi
je 0x109ed0c
mov dword [eax], edi
mov ebx, dword [ebp + 8]
lea eax, [ebp - 4]
push eax
push ebx
jmp 0x109ed56
lea eax, [ebp - 0x18]
push eax
push edi
push dword [ebp - 4]
call fcn.010abb3f
mov esi, eax
cmp esi, 0x80070002
jne 0x109ed77
cmp dword [ebp - 8], edi
jne 0x109ed7b
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_LocalFree]
lea eax, [ebp - 8]
push eax
push ebx
mov dword [ebp - 4], edi
call fcn.01089f35
mov esi, eax
cmp esi, edi
jne 0x109ed6c
mov ebx, dword [ebp - 8]
lea eax, [ebp - 4]
push eax
push ebx
call fcn.0108d84e
mov esi, eax
cmp esi, edi
je 0x109ed16
push esi
push 0xa260197
jmp 0x109ef39
push esi
push 0xa310197
jmp 0x109ef39
cmp esi, edi
je 0x109ed86
push esi
push 0xa360197
jmp 0x109ef39
push dword [ebp + 0xc]
call fcn.0109d54f
test eax, eax
jne 0x109edba
push edi
push dword [ebp + 0xc]
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
test eax, eax
jne 0x109edba
call fcn.0108edc3
mov esi, eax
cmp esi, 0x800700b7
je 0x109edba
push esi
push 0xa490197
jmp 0x109ef39
mov eax, dword [ebp + 0xc]
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
cmp cx, di
jne 0x109edc0
sub eax, edx
sar eax, 1
mov ecx, eax
mov eax, dword [ebp - 4]
lea edx, [eax + 2]
mov si, word [eax]
inc eax
inc eax
cmp si, di
jne 0x109edd6
sub eax, edx
sar eax, 1
lea esi, [eax + ecx + 6]
lea eax, [esi + esi]
push eax
push edi
call dword [sym.imp.KERNEL32.dll_LocalAlloc]
mov ebx, eax
mov dword [ebp - 0xc], ebx
cmp ebx, edi
jne 0x109ee0c
mov esi, 0x8007000e
push esi
push 0xa530197
jmp 0x109ef39
push dword [ebp + 0xc]
push esi
push ebx
call fcn.0102d982
push 0x1008aa0
push esi
push ebx
call fcn.0102d9bc
push dword [ebp - 4]
push esi
push ebx
call fcn.0102d9bc
push 0x1001ee4
push esi
push ebx
call fcn.0102d9bc
mov esi, dword [sym.imp.CRYPT32.dll_CertOpenStore]
push 0x1009bb4
push 0x2c200
push edi
push 1
push 0xa
call esi
mov dword [ebp - 0x14], eax
cmp eax, edi
jne 0x109ee68
call fcn.0108edc3
mov esi, eax
push esi
push 0xa680197
jmp 0x109ef39
push edi
push edi
push edi
push 1
push 2
call esi
mov dword [ebp - 0x10], eax
cmp eax, edi
jne 0x109ee8a
call fcn.0108edc3
mov esi, eax
push esi
push 0xa740197
jmp 0x109ef39
xor ebx, ebx
mov dword [ebp + 0xc], edi
cmp dword [ebp - 0x18], edi
jbe 0x109eece
push dword [ebp + 0x20]
push dword [ebp - 0x10]
push dword [ebp - 0x14]
push ebx
push dword [ebp - 4]
call fcn.0109eb9d
mov esi, eax
cmp esi, edi
je 0x109eeb7
push esi
push 0xa800197
call fcn.010893e6
cmp esi, 1
je 0x109eec3
cmp esi, edi
jne 0x109eedb
inc dword [ebp + 0xc]
inc ebx
cmp ebx, dword [ebp - 0x18]
jb 0x109ee94
cmp dword [ebp + 0xc], edi
jne 0x109eee3
mov esi, 0x80092004
push esi
push 0xa8b0197
jmp 0x109ef39
push esi
push 0xa830197
jmp 0x109ef39
mov eax, dword [ebp + 0x1c]
neg eax
sbb eax, eax
and eax, 6
push eax
push dword [ebp + 0x14]
lea eax, [ebp - 0x24]
push dword [ebp + 0x10]
push eax
push dword [ebp - 0x10]
call fcn.0109da85
mov esi, eax
cmp esi, edi
je 0x109ef0e
push esi
push 0xa9b0197
jmp 0x109ef39
mov eax, dword [ebp + 0x18]
mov ebx, dword [ebp - 0xc]
neg eax
sbb eax, eax
and eax, 0x100
or eax, 2
push eax
push dword [ebp - 0x24]
push dword [ebp - 0x20]
push ebx
call sub.certcli.dll_Ordinal_225
mov esi, eax
cmp esi, edi
je 0x109ef40
push esi
push 0xaa20197
call fcn.010893e6
jmp 0x109ef4c
mov eax, dword [ebp + 0x24]
cmp eax, edi
je 0x109ef4c
mov dword [eax], ebx
mov dword [ebp - 0xc], edi
cmp dword [ebp - 4], edi
je 0x109ef5a
push dword [ebp - 4]
call dword [sym.imp.KERNEL32.dll_LocalFree]
cmp dword [ebp - 8], edi
je 0x109ef68
push dword [ebp - 8]
call dword [sym.imp.KERNEL32.dll_LocalFree]
cmp dword [ebp - 0xc], edi
je 0x109ef76
push dword [ebp - 0xc]
call dword [sym.imp.KERNEL32.dll_LocalFree]
mov ebx, dword [sym.imp.CRYPT32.dll_CertCloseStore]
cmp dword [ebp - 0x14], edi
je 0x109ef88
push 2
push dword [ebp - 0x14]
call ebx
cmp dword [ebp - 0x10], edi
je 0x109ef94
push 2
push dword [ebp - 0x10]
call ebx
cmp dword [ebp - 0x20], edi
je 0x109efa2
push dword [ebp - 0x20]
call dword [sym.imp.KERNEL32.dll_LocalFree]
cmp dword [ebp - 0x1c], edi
je 0x109efb8
push edi
push 0x10027ac
call fcn.010a40b6
call dword [sym.imp.ADVAPI32.dll_RevertToSelf]
pop edi
mov eax, esi
pop esi
pop ebx
leave
ret 0x20