Function at 0x10014600
Capabilities:
Create process on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008a521
mov eax, dword fs:[0]
push eax
sub esp, 0x13c
mov eax, dword [0x100a5428]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
xor ebx, ebx
mov dword [ebp - 0xd8], esi
mov dword [ebp - 0xec], ebx
mov dword [ebp - 4], ebx
push ebx
xor eax, eax
mov edi, 7
push 0x10091f98
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x88], edi
mov dword [ebp - 0x8c], ebx
mov word [ebp - 0x9c], ax
call fcn.10001a60
mov byte [ebp - 4], 1
xor ecx, ecx
push 0xa
mov word [ebp - 0x2c], cx
push str.dir_tokens
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], ebx
call fcn.10001a60
lea edx, [ebp - 0xec]
push edx
lea eax, [ebp - 0x9c]
push eax
push esi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 2
call fcn.10008bc0
cmp dword [ebp - 0x18], 8
jb 0x100146b8
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.10076031
add esp, 4
xor edx, edx
cmp dword [ebp - 0x88], 8
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], dx
jb 0x100146dc
mov eax, dword [ebp - 0x9c]
push eax
call fcn.10076031
add esp, 4
mov dword [ebp - 0xf0], ebx
mov byte [ebp - 4], 3
xor ecx, ecx
push ebx
mov word [ebp - 0x9c], cx
push 0x10091f98
lea ecx, [ebp - 0x9c]
mov dword [ebp - 0x88], edi
mov dword [ebp - 0x8c], ebx
call fcn.10001a60
mov byte [ebp - 4], 4
push 5
xor edx, edx
push 0x10096d14
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], dx
call fcn.10001a60
lea eax, [ebp - 0xf0]
push eax
lea ecx, [ebp - 0x9c]
push ecx
push esi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 5
call fcn.10008bc0
mov esi, 8
cmp dword [ebp - 0x18], esi
jb 0x1001475c
mov edx, dword [ebp - 0x2c]
push edx
call fcn.10076031
add esp, 4
xor eax, eax
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], ax
cmp dword [ebp - 0x88], esi
jb 0x1001477f
mov ecx, dword [ebp - 0x9c]
push ecx
call fcn.10076031
add esp, 4
xor edx, edx
mov dword [ebp - 0x34], 7
mov dword [ebp - 0x38], ebx
mov word [ebp - 0x48], dx
lea esi, [ebp - 0x48]
mov byte [ebp - 4], 6
call fcn.10004230
mov edi, dword [ebp - 0xf0]
test al, al
je 0x1001481f
push 0x11
xor eax, eax
mov esi, 7
push str.AdobeProgramFiles
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], ax
call fcn.10001a60
push ecx
mov byte [ebp - 4], 7
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x100147e0
mov ecx, dword [edi]
mov edx, dword [ecx + 4]
push edi
call edx
mov ecx, dword [ebp - 0xd8]
lea eax, [ebp - 0x48]
push eax
push ecx
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], 8
jb 0x10014809
mov edx, dword [ebp - 0x2c]
push edx
call fcn.10076031
add esp, 4
cmp dword [ebp - 0x34], 8
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
jae 0x10014818
lea eax, [ebp - 0x48]
xor ecx, ecx
mov word [eax], cx
jmp 0x1001483b
push str.Failed_to_get_AdobeProgramFilesPath
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
lea esi, [ebx + 7]
lea ecx, [ebp - 0x48]
call fcn.10004600
test al, al
je 0x10014922
push 0xb
xor edx, edx
push str.AdobeCommon
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], dx
call fcn.10001a60
push ecx
mov byte [ebp - 4], 8
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10014881
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x48]
push edx
push eax
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], 8
jb 0x100148aa
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.10076031
add esp, 4
push 9
xor edx, edx
push str.Utilities
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], dx
call fcn.10001a60
push ecx
mov byte [ebp - 4], 9
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x100148e0
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x48]
push edx
push eax
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x1001490d
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x1001491b
lea eax, [ebp - 0x48]
xor edx, edx
mov word [eax], dx
jmp 0x1001493b
push str.Failed_to_get_Common_files_Path
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
push 0x2b
lea esi, [ebp - 0x48]
call fcn.10006000
add esp, 4
test al, al
je 0x100149c8
push 6
xor eax, eax
push str.Common
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], ax
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0xa
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10014986
mov ecx, dword [edi]
mov edx, dword [ecx + 4]
push edi
call edx
mov ecx, dword [ebp - 0xd8]
lea eax, [ebp - 0x48]
push eax
push ecx
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x100149b3
mov edx, dword [ebp - 0x2c]
push edx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x100149c1
lea eax, [ebp - 0x48]
xor ecx, ecx
mov word [eax], cx
jmp 0x100149e1
push str.Failed_to_ProgramFiles_Common_Path
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
lea esi, [ebp - 0x48]
call fcn.10004300
test al, al
je 0x10014a69
push 0xc
xor edx, edx
push str.ProgramFiles
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], dx
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0xb
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10014a27
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x48]
push edx
push eax
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x10014a54
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x10014a62
lea eax, [ebp - 0x48]
xor edx, edx
mov word [eax], dx
jmp 0x10014a82
push str.Failed_to_ProgramFilesPath
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
lea esi, [ebp - 0x48]
call fcn.10004390
test al, al
je 0x10014b0a
push 0x15
xor eax, eax
push str.SharedApplicationData
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], ax
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0xc
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10014ac8
mov ecx, dword [edi]
mov edx, dword [ecx + 4]
push edi
call edx
mov ecx, dword [ebp - 0xd8]
lea eax, [ebp - 0x48]
push eax
push ecx
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x10014af5
mov edx, dword [ebp - 0x2c]
push edx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x10014b03
lea eax, [ebp - 0x48]
xor ecx, ecx
mov word [eax], cx
jmp 0x10014b23
push str.Failed_to_getSharedApplicationData_Path
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
lea esi, [ebp - 0x48]
call fcn.10004420
test al, al
je 0x10014bab
push 0xf
xor edx, edx
push str.SharedDocuments
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], dx
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0xd
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10014b69
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x48]
push edx
push eax
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x10014b96
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x10014ba4
lea eax, [ebp - 0x48]
xor edx, edx
mov word [eax], dx
jmp 0x10014bc4
push str.Failed_to_getSharedDocuments_Path
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
lea esi, [ebp - 0x48]
call fcn.100044b0
test al, al
je 0x10014c4c
push 0xb
xor eax, eax
push str.FontsFolder
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], ax
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0xe
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10014c0a
mov ecx, dword [edi]
mov edx, dword [ecx + 4]
push edi
call edx
mov ecx, dword [ebp - 0xd8]
lea eax, [ebp - 0x48]
push eax
push ecx
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x10014c37
mov edx, dword [ebp - 0x2c]
push edx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x10014c45
lea eax, [ebp - 0x48]
xor ecx, ecx
mov word [eax], cx
jmp 0x10014c65
push str.Failed_to_getFontsFolder_Path
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
push 0x17
lea esi, [ebp - 0x48]
call fcn.10006000
add esp, 4
test al, al
je 0x10014cf2
push 9
xor edx, edx
push str.StartMenu
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], dx
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0xf
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10014cb0
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x48]
push edx
push eax
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x10014cdd
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x10014ceb
lea eax, [ebp - 0x48]
xor edx, edx
mov word [eax], dx
jmp 0x10014d0b
push str.Failed_to_getWinSPecific_Path_CSIDL_COMMON_PROGRAMS
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
push 0x25
lea esi, [ebp - 0x48]
call fcn.10006000
add esp, 4
test al, al
je 0x10014d98
push 0xe
xor eax, eax
push str.System32Folder
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], ax
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0x10
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10014d56
mov ecx, dword [edi]
mov edx, dword [ecx + 4]
push edi
call edx
mov ecx, dword [ebp - 0xd8]
lea eax, [ebp - 0x48]
push eax
push ecx
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x10014d83
mov edx, dword [ebp - 0x2c]
push edx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x10014d91
lea eax, [ebp - 0x48]
xor ecx, ecx
mov word [eax], cx
jmp 0x10014db1
push str.Failed_to_getWinSPecific_Path_CSIDL_SYSTEM
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
push 5
lea esi, [ebp - 0x48]
call fcn.10006000
add esp, 4
test al, al
je 0x10014e3e
push 0xd
xor edx, edx
push str.UserDocuments
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], dx
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0x11
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10014dfc
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x48]
push edx
push eax
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x10014e29
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x10014e37
lea eax, [ebp - 0x48]
xor edx, edx
mov word [eax], dx
jmp 0x10014e57
push str.Failed_to_getWinSPecific_Path_CSIDL_PERSONAL
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
push 0x1a
lea esi, [ebp - 0x48]
call fcn.10006000
add esp, 4
test al, al
je 0x10014ee4
push 0x12
xor eax, eax
push str.UserRoamingAppData
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], ax
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0x12
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10014ea2
mov ecx, dword [edi]
mov edx, dword [ecx + 4]
push edi
call edx
mov ecx, dword [ebp - 0xd8]
lea eax, [ebp - 0x48]
push eax
push ecx
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x10014ecf
mov edx, dword [ebp - 0x2c]
push edx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x10014edd
lea eax, [ebp - 0x48]
xor ecx, ecx
mov word [eax], cx
jmp 0x10014efd
push str.Failed_to_getWinSPecific_Path_CSIDL_APPDATA
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
push 0x1c
lea esi, [ebp - 0x48]
call fcn.10006000
add esp, 4
test al, al
je 0x10014f8a
push 0x10
xor edx, edx
push str.UserLocalAppData
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], dx
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0x13
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10014f48
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x48]
push edx
push eax
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x10014f75
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x10014f83
lea eax, [ebp - 0x48]
xor edx, edx
mov word [eax], dx
jmp 0x10014fa3
push str.Failed_to_getWinSPecific_Path_CSIDL_LOCAL_APPDATA
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
push 0x28
lea esi, [ebp - 0x48]
call fcn.10006000
add esp, 4
test al, al
je 0x1001502f
mov esi, 8
push esi
xor eax, eax
push str.UserHome
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], ax
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0x14
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10014ff2
mov ecx, dword [edi]
mov edx, dword [ecx + 4]
push edi
call edx
mov ecx, dword [ebp - 0xd8]
lea eax, [ebp - 0x48]
push eax
push ecx
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x1001501a
mov edx, dword [ebp - 0x2c]
push edx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x10015028
lea eax, [ebp - 0x48]
xor ecx, ecx
mov word [eax], cx
jmp 0x10015048
push str.Failed_to_getWinSPecific_Path_CSIDL_PROFILE
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
push 6
lea esi, [ebp - 0x48]
call fcn.10006000
add esp, 4
test al, al
je 0x100150d5
push 0xd
xor edx, edx
push str.UserFavorites
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], dx
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0x15
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10015093
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x48]
push edx
push eax
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x100150c0
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x100150ce
lea eax, [ebp - 0x48]
xor edx, edx
mov word [eax], dx
jmp 0x100150ee
push str.Failed_to_getWinSPecific_Path_CSIDL_FAVORITES
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
push 0x27
lea esi, [ebp - 0x48]
call fcn.10006000
add esp, 4
test al, al
je 0x1001517b
push 0xc
xor eax, eax
push str.UserPictures
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], ax
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0x16
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x10015139
mov ecx, dword [edi]
mov edx, dword [ecx + 4]
push edi
call edx
mov ecx, dword [ebp - 0xd8]
lea eax, [ebp - 0x48]
push eax
push ecx
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x10015166
mov edx, dword [ebp - 0x2c]
push edx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x10015174
lea eax, [ebp - 0x48]
xor ecx, ecx
mov word [eax], cx
jmp 0x10015194
push str.Failed_to_getWinSPecific_Path_CSIDL_MYPICTURES
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
push 0x15
lea esi, [ebp - 0x48]
call fcn.10006000
add esp, 4
test al, al
je 0x10015221
push 0xd
xor edx, edx
push str.UserTemplates
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x18], 7
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], dx
call fcn.10001a60
push ecx
mov byte [ebp - 4], 0x17
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x100151df
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x48]
push edx
push eax
lea ecx, [ebp - 0x2c]
call fcn.10008fa0
mov esi, 8
mov byte [ebp - 4], 6
cmp dword [ebp - 0x18], esi
jb 0x1001520c
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.10076031
add esp, 4
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x38], ebx
cmp dword [ebp - 0x34], esi
jae 0x1001521a
lea eax, [ebp - 0x48]
xor edx, edx
mov word [eax], dx
jmp 0x1001523a
push str.Failed_to_getWinSPecific_Path_CSIDL_TEMPLATES
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fa0
add esp, 4
xor ebx, ebx
mov eax, dword [ebp - 0xec]
push ecx
mov ecx, esp
mov dword [ebp - 0xe0], esp
mov dword [ecx], eax
cmp eax, ebx
je 0x10015257
mov ecx, dword [eax]
mov edx, dword [ecx + 4]
push eax
call edx
push ecx
mov eax, esp
mov dword [ebp - 0xe0], esp
mov dword [eax], edi
cmp edi, ebx
je 0x1001526e
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov edx, dword [ebp - 0xd8]
push edx
call fcn.10008e10
test al, al
jne 0x10015297
push str.Failed_to_add_child_Node_to_directoryTokens_node
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fd0
add esp, 4
xor ebx, ebx
lea eax, [ebp - 0xe5]
push eax
mov byte [ebp - 0xe5], 0
call fcn.100145a0
add esp, 4
cmp byte [ebp - 0xe5], 0
je 0x1001606f
push str.TokenGenerator64.exe
call fcn.10012f70
add eax, 0x58
push eax
lea ecx, [ebp - 0x2c]
push ecx
call fcn.10007280
add esp, 0xc
mov byte [ebp - 4], 0x18
call fcn.10012f70
push 1
xor edx, edx
push 0x10092d74
lea ecx, [ebp - 0xb8]
mov ebx, eax
mov dword [ebp - 0xa4], 7
mov dword [ebp - 0xa8], 0
mov word [ebp - 0xb8], dx
call fcn.10001a60
push 0
add ebx, 0xa8
push ebx
or eax, 0xffffffff
lea esi, [ebp - 0xb8]
mov byte [ebp - 4], 0x19
call fcn.10006b90
push 0xb
mov eax, str._token.xml_
mov ecx, esi
call fcn.10006680
push str._token.xml
lea eax, [ebp - 0x9c]
push ebx
push eax
call fcn.10007280
add esp, 0xc
push 0
mov byte [ebp - 4], 0x1a
call dword [sym.imp.ole32.dll_CoInitialize]
push 0x44
lea ecx, [ebp - 0x148]
push 0
push ecx
call fcn.100775d0
mov ecx, dword [ebp - 0xb8]
xor eax, eax
add esp, 0xc
cmp dword [ebp - 0xa4], 8
mov dword [ebp - 0x148], 0x44
mov dword [ebp - 0x100], eax
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xf8], eax
mov dword [ebp - 0xf4], eax
jae 0x100153a0
mov ecx, esi
mov eax, dword [ebp - 0x2c]
mov ebx, 8
cmp dword [ebp - 0x18], ebx
jae 0x100153b0
lea eax, [ebp - 0x2c]
lea edx, [ebp - 0x100]
push edx
lea edx, [ebp - 0x148]
push edx
push 0
push 0
push 0
push 0
push 0
push 0
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_CreateProcessW]
test eax, eax
jne 0x100154c4
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.CreateProcess_failed___d_._n
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fd0
add esp, 8
cmp dword [ebp - 0x88], 8
jb 0x10015410
mov eax, dword [ebp - 0x9c]
push eax
call fcn.10076031
add esp, 4
xor ebx, ebx
xor ecx, ecx
cmp dword [ebp - 0xa4], 8
mov esi, 7
mov dword [ebp - 0x88], esi
mov dword [ebp - 0x8c], ebx
mov word [ebp - 0x9c], cx
jb 0x10015444
mov edx, dword [ebp - 0xb8]
push edx
call fcn.10076031
add esp, 4
xor eax, eax
cmp dword [ebp - 0x18], 8
mov dword [ebp - 0xa4], esi
mov dword [ebp - 0xa8], ebx
mov word [ebp - 0xb8], ax
jb 0x1001546b
mov ecx, dword [ebp - 0x2c]
push ecx
call fcn.10076031
add esp, 4
xor edx, edx
cmp dword [ebp - 0x34], 8
mov dword [ebp - 0x18], esi
mov dword [ebp - 0x1c], ebx
mov word [ebp - 0x2c], dx
jb 0x10015489
mov eax, dword [ebp - 0x48]
push eax
call fcn.10076031
add esp, 4
mov dword [ebp - 0x34], esi
xor ecx, ecx
mov byte [ebp - 4], bl
mov word [ebp - 0x48], cx
mov dword [ebp - 0x38], ebx
cmp edi, ebx
je 0x100154a4
mov edx, dword [edi]
mov eax, dword [edx + 8]
push edi
call eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0xec]
cmp eax, ebx
je 0x100154bd
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
xor al, al
jmp 0x100161ab
mov eax, dword [ebp - 0x100]
push 0xffffffffffffffff
push eax
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov ecx, dword [ebp - 0x100]
mov esi, dword [sym.imp.KERNEL32.dll_CloseHandle]
push ecx
call esi
mov edx, dword [ebp - 0xfc]
push edx
call esi
mov dword [ebp - 0xdc], 0
lea eax, [ebp - 0xdc]
push eax
lea ecx, [ebp - 0x9c]
mov byte [ebp - 4], 0x1c
call fcn.10007ba0
test al, al
jne 0x100155ab
mov eax, dword [ebp - 0x9c]
cmp dword [ebp - 0x88], ebx
jae 0x10015527
lea eax, [ebp - 0x9c]
push eax
push str.failed_to_init_with_path_:_ls
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fd0
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0xdc]
add esp, 8
test eax, eax
je 0x10015555
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea ecx, [ebp - 0x9c]
call fcn.10001040
lea ecx, [ebp - 0xb8]
call fcn.10001040
lea ecx, [ebp - 0x2c]
call fcn.10001040
lea ecx, [ebp - 0x48]
call fcn.10001040
mov byte [ebp - 4], 0
test edi, edi
je 0x1001558b
mov eax, dword [edi]
mov ecx, dword [eax + 8]
push edi
call ecx
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0xec]
test eax, eax
je 0x100155a4
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
xor al, al
jmp 0x100161ab
xor edi, edi
mov dword [ebp - 0xe0], edi
mov edx, 0x10091f98
lea esi, [ebp - 0x80]
mov byte [ebp - 4], 0x1d
call fcn.100019e0
mov edx, str.win64
lea esi, [ebp - 0xd4]
mov byte [ebp - 4], 0x1e
call fcn.100019e0
mov eax, dword [ebp - 0xd8]
lea ecx, [ebp - 0xe0]
push ecx
lea edx, [ebp - 0x80]
push edx
push eax
mov ecx, esi
mov byte [ebp - 4], 0x1f
call fcn.10008bc0
mov ecx, esi
call fcn.10001040
lea ecx, [ebp - 0x80]
call fcn.10001040
xor ecx, ecx
mov dword [ebp - 0x50], 7
mov dword [ebp - 0x54], edi
mov word [ebp - 0x64], cx
mov edx, str.__win64_AdobeProgramFiles
lea esi, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x21
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
mov edi, dword [ebp - 0xe0]
test bl, bl
je 0x10015698
mov edx, str.AdobeProgramFiles
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x22
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x10015679
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x100156ab
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_AdobeCommon
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x23
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x1001572a
mov edx, str.AdobeCommon
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x24
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x1001570b
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x1001573d
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_Common
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x25
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x100157bc
mov edx, str.Common
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x26
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x1001579d
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x100157cf
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_ProgramFiles
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x27
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x1001584e
mov edx, str.ProgramFiles
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x28
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x1001582f
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x10015861
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_SharedApplicationData
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x29
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x100158e0
mov edx, str.SharedApplicationData
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x2a
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x100158c1
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x100158f3
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_SharedDocuments
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x2b
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x10015972
mov edx, str.SharedDocuments
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x2c
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x10015953
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x10015985
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_Utilities
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x2d
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x10015a04
mov edx, str.Utilities
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x2e
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x100159e5
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x10015a17
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_FontsFolder
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x2f
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x10015a96
mov edx, str.FontsFolder
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x30
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x10015a77
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x10015aa9
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_StartMenu
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x31
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x10015b28
mov edx, str.StartMenu
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x32
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x10015b09
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x10015b3b
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_System32Folder
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x33
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x10015bba
mov edx, str.System32Folder
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x34
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x10015b9b
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x10015bcd
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_UserDocuments
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x35
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x10015c4c
mov edx, str.UserDocuments
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x36
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x10015c2d
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x10015c5f
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_UserRoamingAppData
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x37
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x10015cde
mov edx, str.UserRoamingAppData
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x38
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x10015cbf
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x10015cf1
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_UserLocalAppData
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x39
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x10015d70
mov edx, str.UserLocalAppData
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x3a
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x10015d51
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x10015d83
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_UserFavorites
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x3b
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x10015e02
mov edx, str.UserFavorites
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x3c
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x10015de3
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x10015e15
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_UserPictures
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x3d
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x10015e94
mov edx, str.UserPictures
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x3e
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x10015e75
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x10015ea7
lea eax, [ebp - 0x64]
xor ecx, ecx
mov edx, str.__win64_UserTemplates
lea esi, [ebp - 0x80]
mov word [eax], cx
call fcn.100019e0
lea edx, [ebp - 0x64]
push edx
mov ecx, esi
lea edx, [ebp - 0xdc]
mov byte [ebp - 4], 0x3f
call fcn.100081f0
mov ecx, esi
mov bl, al
mov byte [ebp - 4], 0x20
call fcn.10001040
test bl, bl
je 0x10015f26
mov edx, str.UserTemplates
lea esi, [ebp - 0x80]
call fcn.100019e0
push ecx
mov eax, esp
mov byte [ebp - 4], 0x40
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x10015f07
mov eax, dword [edi]
mov ecx, dword [eax + 4]
push edi
call ecx
mov eax, dword [ebp - 0xd8]
lea edx, [ebp - 0x64]
push edx
push eax
lea ecx, [ebp - 0x80]
call fcn.10008fa0
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 0x20
call fcn.10001040
cmp dword [ebp - 0x50], 8
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x54], 0
jae 0x10015f39
lea eax, [ebp - 0x64]
xor ecx, ecx
mov word [eax], cx
mov eax, dword [ebp - 0xec]
push ecx
mov ecx, esp
mov dword [ebp - 0xe4], esp
mov dword [ecx], eax
test eax, eax
je 0x10015f5b
mov edx, dword [eax]
push eax
mov eax, dword [edx + 4]
call eax
push ecx
mov eax, esp
mov dword [ebp - 0xe4], esp
mov dword [eax], edi
test edi, edi
je 0x10015f72
mov ecx, dword [edi]
mov edx, dword [ecx + 4]
push edi
call edx
mov eax, dword [ebp - 0xd8]
push eax
call fcn.10008e10
test al, al
jne 0x1001601b
push str.Failed_to_add_64_child_Node_to_directoryTokens_node
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fd0
add esp, 4
lea ecx, [ebp - 0x64]
call fcn.10001040
mov byte [ebp - 4], 0x1c
test edi, edi
je 0x10015fb5
mov ecx, dword [edi]
mov edx, dword [ecx + 8]
push edi
call edx
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x10015fcb
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
lea ecx, [ebp - 0x9c]
call fcn.10001040
lea ecx, [ebp - 0xb8]
call fcn.10001040
lea ecx, [ebp - 0x2c]
call fcn.10001040
lea ecx, [ebp - 0x48]
call fcn.10001040
mov byte [ebp - 4], 0
mov eax, dword [ebp - 0xf0]
test eax, eax
je 0x10016007
mov ecx, dword [eax]
push eax
mov edx, dword [ecx + 8]
call edx
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0xec]
test eax, eax
jmp 0x100154b3
lea ecx, [ebp - 0x64]
call fcn.10001040
mov byte [ebp - 4], 0x1c
test edi, edi
je 0x10016033
mov eax, dword [edi]
mov ecx, dword [eax + 8]
push edi
call ecx
mov byte [ebp - 4], 0x1a
mov eax, dword [ebp - 0xdc]
test eax, eax
je 0x10016049
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
lea ecx, [ebp - 0x9c]
call fcn.10001040
lea ecx, [ebp - 0xb8]
call fcn.10001040
lea ecx, [ebp - 0x2c]
call fcn.10001040
mov edi, dword [ebp - 0xf0]
xor ebx, ebx
mov dword [ebp - 0xdc], ebx
mov eax, dword [ebp - 0xd8]
lea ecx, [ebp - 0xdc]
mov byte [ebp - 4], 0x41
call fcn.10008b40
test al, al
jne 0x100160db
push str.Failed_to_get_root_Node
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fd0
mov byte [ebp - 4], 6
mov eax, dword [ebp - 0xdc]
xor ebx, ebx
add esp, 4
cmp eax, ebx
je 0x100160bd
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
cmp dword [ebp - 0x34], 8
jb 0x100160cf
mov eax, dword [ebp - 0x48]
push eax
call fcn.10076031
add esp, 4
mov dword [ebp - 0x34], 7
jmp 0x1001548c
mov esi, dword [ebp - 0xdc]
push ecx
mov eax, esp
mov dword [ebp - 0xe4], esp
mov dword [eax], esi
cmp esi, ebx
je 0x100160f8
mov eax, dword [esi]
mov ecx, dword [eax + 4]
push esi
call ecx
mov eax, dword [ebp - 0xec]
push ecx
mov ecx, esp
mov dword [ebp - 0xe4], esp
mov dword [ecx], eax
cmp eax, ebx
je 0x10016115
mov edx, dword [eax]
push eax
mov eax, dword [edx + 4]
call eax
mov ecx, dword [ebp - 0xd8]
push ecx
call fcn.10008e10
test al, al
jne 0x10016168
push str.Failed_to_add_child_Node_to_root_node
call fcn.100028f0
mov ebx, str.DWANative
call fcn.10002fd0
add esp, 4
mov byte [ebp - 4], 6
test esi, esi
je 0x1001614c
mov edx, dword [esi]
mov eax, dword [edx + 8]
push esi
call eax
lea ecx, [ebp - 0x48]
call fcn.10001040
mov byte [ebp - 4], 0
test edi, edi
je 0x10016007
mov ecx, dword [edi]
push edi
jmp 0x10016002
mov byte [ebp - 4], 6
cmp esi, ebx
je 0x10016178
mov eax, dword [esi]
mov ecx, dword [eax + 8]
push esi
call ecx
lea ecx, [ebp - 0x48]
call fcn.10001040
mov byte [ebp - 4], 0
cmp edi, ebx
je 0x10016190
mov edx, dword [edi]
mov eax, dword [edx + 8]
push edi
call eax
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0xec]
cmp eax, ebx
je 0x100161a9
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10075b7f
mov esp, ebp
pop ebp
ret