Function at 0x100038b0
Capabilities:
Create directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100112e8
mov eax, dword fs:[0]
push eax
sub esp, 0x4f0
mov eax, dword [section..data]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov eax, dword [ebp + 8]
mov edi, dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
mov dword [ebp - 0x4e8], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x4ec], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x4e4], eax
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x4f4], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0x4f0], eax
lea eax, [ebp - 0x420]
push 0x104
push eax
push 0
call edi
xorps xmm0, xmm0
mov dword [ebp - 0x428], 0
lea ecx, [ebp - 0x420]
mov dword [ebp - 0x424], 0
movups xmmword [ebp - 0x438], xmm0
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10003947
sub ecx, edx
lea eax, [ebp - 0x420]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x438]
call fcn.10004ef0
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x438]
cmp dword [ebp - 0x424], 8
mov esi, dword [ebp - 0x428]
mov edx, esi
cmovae ecx, dword [ebp - 0x438]
push 1
sub esp, 8
call fcn.10004da0
add esp, 0xc
cmp eax, 0xffffffff
je 0x10003a43
lea edx, [eax + 1]
mov dword [ebp - 0x4a0], 0
mov dword [ebp - 0x49c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x4b0], xmm0
cmp esi, edx
jb 0x10004356
sub esi, edx
lea eax, [ebp - 0x438]
or ecx, 0xffffffff
cmp esi, 0xffffffff
cmovb ecx, esi
cmp dword [ebp - 0x424], 8
push ecx
cmovae eax, dword [ebp - 0x438]
lea ecx, [ebp - 0x4b0]
lea eax, [eax + edx*2]
push eax
call fcn.10004ef0
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x424]
cmp ecx, 8
jb 0x10003a61
mov edx, dword [ebp - 0x438]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003a37
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000435b
push ecx
push edx
call fcn.10005709
add esp, 8
jmp 0x10003a61
movups xmm0, xmmword [ebp - 0x438]
movups xmmword [ebp - 0x4b0], xmm0
movq xmm0, qword [ebp - 0x428]
movq qword [ebp - 0x4a0], xmm0
xor eax, eax
mov dword [ebp - 0x424], 7
mov word [ebp - 0x438], ax
mov dword [ebp - 0x428], eax
push 0x208
push eax
lea eax, [ebp - 0x218]
mov dword [ebp - 4], 1
push eax
call fcn.10006c20
add esp, 0xc
lea eax, [ebp - 0x218]
push 0x104
push eax
push 0
call edi
xorps xmm0, xmm0
mov dword [ebp - 0x440], 0
lea ecx, [ebp - 0x218]
mov dword [ebp - 0x43c], 0
movups xmmword [ebp - 0x450], xmm0
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x10003ad0
sub ecx, edx
lea eax, [ebp - 0x218]
sar ecx, 1
push ecx
push eax
lea ecx, [ebp - 0x450]
call fcn.10004ef0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x450]
cmp dword [ebp - 0x43c], 8
mov esi, dword [ebp - 0x440]
mov edx, esi
cmovae ecx, dword [ebp - 0x450]
push 1
sub esp, 8
call fcn.10004da0
mov ecx, eax
mov dword [ebp - 0x4d0], 0
add esp, 0xc
mov dword [ebp - 0x4cc], 0
cmp esi, ecx
lea eax, [ebp - 0x450]
xorps xmm0, xmm0
cmovb ecx, esi
cmp dword [ebp - 0x43c], 8
push ecx
cmovae eax, dword [ebp - 0x450]
lea ecx, [ebp - 0x4e0]
push eax
movups xmmword [ebp - 0x4e0], xmm0
call fcn.10004ef0
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x43c]
cmp ecx, 8
jb 0x10003ba9
mov edx, dword [ebp - 0x450]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003b9f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004360
push ecx
push edx
call fcn.10005709
add esp, 8
xor eax, eax
mov dword [ebp - 0x440], 0
mov dword [ebp - 0x43c], 7
mov word [ebp - 0x450], ax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x4c8]
push 0xc
xorps xmm0, xmm0
mov dword [ebp - 0x4b8], eax
push 0x10016d88
movups xmmword [ebp - 0x4c8], xmm0
mov dword [ebp - 0x4b4], eax
call fcn.10004ef0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x498]
push 0x19
xorps xmm0, xmm0
mov dword [ebp - 0x488], 0
push str.C:ProgramDataAdobeGroup
movups xmmword [ebp - 0x498], xmm0
mov dword [ebp - 0x484], 0
call fcn.10004ef0
mov byte [ebp - 4], 5
lea eax, [ebp - 0x498]
cmp dword [ebp - 0x484], 8
push 0
cmovae eax, dword [ebp - 0x498]
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
lea eax, [ebp - 0x4b0]
push eax
lea edx, [ebp - 0x4e0]
lea ecx, [ebp - 0x468]
call fcn.10003670
mov ecx, dword [ebp - 0x4e8]
add esp, 4
push eax
call fcn.10004bb0
mov ecx, dword [ebp - 0x454]
cmp ecx, 8
jb 0x10003cae
mov edx, dword [ebp - 0x468]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003ca4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004365
push ecx
push edx
call fcn.10005709
add esp, 8
lea eax, [ebp - 0x4b0]
push eax
lea edx, [ebp - 0x498]
lea ecx, [ebp - 0x468]
call fcn.10003670
mov ecx, dword [ebp - 0x4ec]
add esp, 4
push eax
call fcn.10004bb0
mov ecx, dword [ebp - 0x454]
cmp ecx, 8
jb 0x10003d15
mov edx, dword [ebp - 0x468]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003d0b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000436a
push ecx
push edx
call fcn.10005709
add esp, 8
lea eax, [ebp - 0x4c8]
push eax
lea edx, [ebp - 0x4e0]
lea ecx, [ebp - 0x468]
call fcn.10003670
mov ecx, dword [ebp - 0x4e4]
add esp, 4
push eax
call fcn.10004bb0
mov ecx, dword [ebp - 0x454]
cmp ecx, 8
jb 0x10003d7c
mov edx, dword [ebp - 0x468]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10003d72
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000436f
push ecx
push edx
call fcn.10005709
add esp, 8
push 0x104
lea eax, [ebp - 0x114]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
xorps xmm0, xmm0
mov dword [ebp - 0x428], 0
lea ecx, [ebp - 0x114]
mov dword [ebp - 0x424], 0
movups xmmword [ebp - 0x438], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10003db7
sub ecx, edx
lea eax, [ebp - 0x114]
push ecx
push eax
lea ecx, [ebp - 0x438]
call fcn.100050a0
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x438]
mov edi, dword [ebp - 0x424]
cmp edi, 0x10
mov esi, dword [ebp - 0x428]
mov edx, esi
cmovae ecx, dword [ebp - 0x438]
push 1
sub esp, 8
call fcn.10004fe0
add esp, 0xc
cmp eax, 0xffffffff
je 0x10003ea0
lea ecx, [eax + 1]
mov dword [ebp - 0x470], 0
mov dword [ebp - 0x46c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x480], xmm0
cmp esi, ecx
jb 0x10004374
sub esi, ecx
lea eax, [ebp - 0x438]
cmp esi, 0xffffffff
mov edx, 0xffffffff
cmovb edx, esi
cmp edi, 0x10
push edx
cmovae eax, dword [ebp - 0x438]
add eax, ecx
lea ecx, [ebp - 0x480]
push eax
call fcn.100050a0
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x424]
cmp ecx, 0x10
jb 0x10003ebe
mov edx, dword [ebp - 0x438]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10003e94
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004379
push ecx
push edx
call fcn.10005709
add esp, 8
jmp 0x10003ebe
movups xmm0, xmmword [ebp - 0x438]
movups xmmword [ebp - 0x480], xmm0
movq xmm0, qword [ebp - 0x428]
movq qword [ebp - 0x470], xmm0
mov byte [ebp - 0x438], 0
mov dword [ebp - 0x424], 0xf
mov dword [ebp - 0x428], 0
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x46c]
mov eax, ecx
mov edx, dword [ebp - 0x470]
sub eax, edx
cmp eax, 0x1a
jb 0x10003f79
cmp ecx, 0x10
lea esi, [ebp - 0x480]
lea eax, [edx + 0x1a]
cmovae esi, dword [ebp - 0x480]
mov dword [ebp - 0x470], eax
cmp esi, 0x10016dfa
jae 0x10003f37
lea eax, [esi + edx]
cmp eax, str.C:ProgramDataAdobeGroup_
jb 0x10003f37
cmp esi, str.C:ProgramDataAdobeGroup_
ja 0x10003f2d
xor edi, edi
jmp 0x10003f3c
mov edi, esi
sub edi, str.C:ProgramDataAdobeGroup_
jmp 0x10003f3c
mov edi, 0x1a
lea eax, [edx + 1]
push eax
lea ecx, [esi + 0x1a]
push esi
push ecx
call fcn.100080c0
push edi
push str.C:ProgramDataAdobeGroup_
push esi
call fcn.100080c0
mov eax, 0x1a
lea ecx, [esi + edi]
sub eax, edi
push eax
lea eax, [edi + 0x10016dfa]
push eax
push ecx
call fcn.100080c0
add esp, 0x24
lea eax, [ebp - 0x480]
jmp 0x10003f98
push 0x1a
sub esp, 8
mov byte [ebp - 0x4e4], 0
lea ecx, [ebp - 0x480]
push dword [ebp - 0x4e4]
push 0x1a
call fcn.10005300
mov dword [ebp - 0x440], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x450], xmm0
mov dword [ebp - 0x43c], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x450], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x440], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x43c]
mov eax, edx
mov ecx, dword [ebp - 0x440]
sub eax, ecx
push 5
cmp eax, 5
jb 0x1000402e
cmp edx, 0x10
lea esi, [ebp - 0x450]
lea eax, [ecx + 5]
cmovae esi, dword [ebp - 0x450]
add esi, ecx
mov dword [ebp - 0x440], eax
push str._Stip
push esi
call fcn.100080c0
add esp, 0xc
mov byte [esi + 5], 0
lea eax, [ebp - 0x450]
jmp 0x10004049
push ecx
mov byte [ebp - 0x4e4], 0
lea ecx, [ebp - 0x450]
push dword [ebp - 0x4e4]
push 5
call fcn.10005450
movups xmm0, xmmword [eax]
mov esi, dword [ebp - 0x4f0]
movq xmm1, qword [eax + 0x10]
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x468]
movq qword [ebp - 0x4fc], xmm1
movq qword [ebp - 0x458], xmm1
movups xmmword [ebp - 0x430], xmm0
movups xmmword [ebp - 0x468], xmm0
cmp esi, eax
je 0x100040e8
mov ecx, dword [esi + 0x14]
cmp ecx, 0x10
jb 0x100040d2
mov eax, dword [esi]
inc ecx
cmp ecx, 0x1000
jb 0x100040b9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000437e
mov eax, edx
push ecx
push eax
call fcn.10005709
movups xmm0, xmmword [ebp - 0x430]
add esp, 8
movq xmm1, qword [ebp - 0x4fc]
movups xmmword [esi], xmm0
mov ecx, 0xf
mov byte [ebp - 0x468], 0
movq qword [esi + 0x10], xmm1
jmp 0x100040ee
mov ecx, dword [ebp - 0x454]
cmp ecx, 0x10
jb 0x10004122
mov edx, dword [ebp - 0x468]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10004118
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000437e
push ecx
push edx
call fcn.10005709
add esp, 8
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x43c]
cmp ecx, 0x10
jb 0x10004160
mov edx, dword [ebp - 0x450]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10004156
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000437e
push ecx
push edx
call fcn.10005709
add esp, 8
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x46c]
mov dword [ebp - 0x440], 0
mov dword [ebp - 0x43c], 0xf
mov byte [ebp - 0x450], 0
cmp ecx, 0x10
jb 0x100041b9
mov edx, dword [ebp - 0x480]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100041af
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000437e
push ecx
push edx
call fcn.10005709
add esp, 8
lea eax, [ebp - 0x4c8]
push eax
lea edx, [ebp - 0x498]
lea ecx, [ebp - 0x468]
call fcn.10003670
mov ecx, dword [ebp - 0x4f4]
add esp, 4
push eax
call fcn.10004bb0
mov ecx, dword [ebp - 0x454]
cmp ecx, 8
jb 0x10004220
mov edx, dword [ebp - 0x468]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10004216
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004383
push ecx
push edx
call fcn.10005709
add esp, 8
mov ecx, dword [ebp - 0x484]
cmp ecx, 8
jb 0x10004260
mov edx, dword [ebp - 0x498]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x10004256
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004388
push ecx
push edx
call fcn.10005709
add esp, 8
mov ecx, dword [ebp - 0x4b4]
xor eax, eax
mov dword [ebp - 0x488], 0
mov dword [ebp - 0x484], 7
mov word [ebp - 0x498], ax
cmp ecx, 8
jb 0x100042bd
mov edx, dword [ebp - 0x4c8]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100042b3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004388
push ecx
push edx
call fcn.10005709
add esp, 8
mov ecx, dword [ebp - 0x4cc]
cmp ecx, 8
jb 0x100042fd
mov edx, dword [ebp - 0x4e0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x100042f3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004388
push ecx
push edx
call fcn.10005709
add esp, 8
mov ecx, dword [ebp - 0x49c]
cmp ecx, 8
jb 0x10004339
mov edx, dword [ebp - 0x4b0]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1000432f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10004388
push ecx
push edx
call fcn.10005709
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100055a9
mov esp, ebp
pop ebp
ret 0x14
call fcn.10004d90
call fcn.10008cd4
call fcn.10008cd4
call fcn.10008cd4
call fcn.10008cd4
call fcn.10008cd4
call fcn.10004d90
call fcn.10008cd4
call fcn.10008cd4
call fcn.10008cd4
call fcn.10008cd4
int3