Function at 0x100a794
Capabilities:
Manipulate boot configuration

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x24da8
call fcn.0100ba20
mov eax, dword [0x1011024]
mov edx, dword [0x1001898]
push ebx
push esi
push edi
mov esi, dword [0x1001894]
push 0x7e
xor ebx, ebx
pop ecx
push 0x7d
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x24990], eax
xor eax, eax
lea edi, [ebp - 0x10b4]
mov dword [ebp - 0x10b8], ebx
rep stosd dword es:[edi], eax
mov dword [ebp - 0x22abc], esi
mov dword [ebp - 0x22ab8], edx
mov ecx, 0x7fe
lea edi, [ebp - 0x22ab4]
rep stosd dword es:[edi], eax
pop ecx
push 0x7d
mov dword [ebp - 0x4c8], esi
mov dword [ebp - 0x4c4], edx
lea edi, [ebp - 0x4c0]
rep stosd dword es:[edi], eax
pop ecx
push 0x7d
mov dword [ebp - 0xebc], esi
mov dword [ebp - 0xeb8], edx
lea edi, [ebp - 0xeb4]
rep stosd dword es:[edi], eax
pop ecx
push 0x7d
mov dword [ebp - 0x12b4], esi
mov dword [ebp - 0x12b0], edx
lea edi, [ebp - 0x12ac]
rep stosd dword es:[edi], eax
pop ecx
push 0x7f
mov dword [ebp - 0x8c0], edx
pop edx
mov dword [ebp - 0x8c4], esi
lea edi, [ebp - 0x8bc]
rep stosd dword es:[edi], eax
mov ecx, edx
lea edi, [ebp - 0x2c8]
mov dword [ebp - 0x2cc], ebx
rep stosd dword es:[edi], eax
mov ecx, edx
lea edi, [ebp - 0xac0]
mov dword [ebp - 0xac4], ebx
rep stosd dword es:[edi], eax
push 0x31
mov ecx, edx
lea edi, [ebp - 0x6c4]
mov dword [ebp - 0x6c8], ebx
rep stosd dword es:[edi], eax
pop ecx
lea edi, [ebp - 0xc8]
mov dword [ebp - 0xcc], ebx
rep stosd dword es:[edi], eax
push 0x7e
pop ecx
lea edi, [ebp - 0xcbc]
mov dword [ebp - 0xcc0], ebx
rep stosd dword es:[edi], eax
mov dword [ebp - 0x249b0], ebx
mov dword [ebp - 0x249a8], ebx
mov dword [ebp - 0x24988], ebx
mov dword [ebp - 0x2498c], ebx
mov dword [ebp - 0x249a0], ebx
mov dword [ebp - 0x24994], ebx
mov dword [ebp - 0x2499c], ebx
mov dword [ebp - 0x249ac], ebx
mov esi, 0x10014ec
lea edi, [ebp - 0x23f34]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
push 0x7d
pop ecx
lea edi, [ebp - 0x23f28]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x23d34], 0x10000
mov dword [ebp - 0x23d30], 1
mov dword [ebp - 0x23d2c], ebx
mov dword [ebp - 0x23d24], ebx
lea eax, [ebp - 0x249b0]
mov dword [ebp - 0x23d28], eax
xor eax, eax
mov ecx, edx
lea edi, [ebp - 0x23d20]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x23b24], ebx
mov dword [ebp - 0x23b20], ebx
mov dword [ebp - 0x23b1c], 0x73
mov ecx, edx
lea edi, [ebp - 0x23b18]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x23918], 1
mov dword [ebp - 0x23914], ebx
lea eax, [ebp - 0x2cc]
mov dword [ebp - 0x23910], eax
xor eax, eax
mov dword [ebp - 0x2390c], ebx
mov esi, 0x2001
mov dword [ebp - 0x2391c], esi
mov ecx, edx
lea edi, [ebp - 0x23908]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x2370c], ebx
mov dword [ebp - 0x23708], ebx
mov dword [ebp - 0x23704], 0x75
mov ecx, edx
lea edi, [ebp - 0x23700]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x23504], esi
xor esi, esi
lea eax, [ebp - 0xac4]
mov dword [ebp - 0x234f8], eax
xor eax, eax
inc esi
mov dword [ebp - 0x23500], esi
mov dword [ebp - 0x234fc], ebx
mov dword [ebp - 0x234f4], ebx
mov ecx, edx
lea edi, [ebp - 0x234f0]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x232f4], ebx
mov dword [ebp - 0x232f0], ebx
mov dword [ebp - 0x232ec], 0x70
mov ecx, edx
lea edi, [ebp - 0x232e8]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x6c8]
mov dword [ebp - 0x230e0], eax
xor eax, eax
mov dword [ebp - 0x230ec], 0x1001
mov dword [ebp - 0x230e8], esi
mov dword [ebp - 0x230e4], ebx
mov dword [ebp - 0x230dc], ebx
mov ecx, edx
lea edi, [ebp - 0x230d8]
rep stosd dword es:[edi], eax
mov eax, dword [0x10014d4]
mov dword [ebp - 0x22ed4], eax
mov eax, dword [0x10014d8]
mov dword [ebp - 0x22ed0], eax
push 0x7e
pop ecx
xor eax, eax
lea edi, [ebp - 0x22ecc]
mov dword [ebp - 0x22edc], ebx
mov dword [ebp - 0x22ed8], ebx
rep stosd dword es:[edi], eax
mov dword [ebp - 0x22cd4], 0x20000
mov dword [ebp - 0x22cd0], ebx
lea eax, [ebp - 0x249a8]
mov dword [ebp - 0x22cc8], eax
xor eax, eax
mov ecx, edx
mov dword [ebp - 0x22ccc], ebx
mov dword [ebp - 0x22cc4], ebx
lea edi, [ebp - 0x22cc0]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x2cc]
push eax
mov dword [ebp - 0x22ac4], ebx
mov dword [ebp - 0x22ac0], ebx
call fcn.0100269c
cmp eax, esi
je 0x100b3bd
mov edi, dword [sym.imp.msvcrt.dll_wcscpy]
lea eax, [ebp - 0x230dc]
push 0x1001568
push eax
call edi
lea eax, [ebp - 0x6c8]
push 0x1001568
push eax
call edi
add esp, 0x10
lea eax, [ebp - 0x23f34]
push eax
push 5
push dword [ebp - 0x24990]
push dword [ebp + 8]
call fcn.0100e534
test eax, eax
jne 0x100ab06
push 0x7c
call fcn.0100d783
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d376
call fcn.0100c80a
jmp 0x100acc0
mov esi, dword [sym.imp.SHLWAPI.dll_StrCmpNW]
push 2
mov edi, 0x10012c4
push edi
lea eax, [ebp - 0x2cc]
push eax
call esi
test eax, eax
jne 0x100ab67
push 3
push 0x1001560
lea eax, [ebp - 0x2cc]
push eax
call esi
test eax, eax
je 0x100ab67
lea eax, [ebp - 0x2cc]
push edi
push eax
call dword [sym.imp.msvcrt.dll_wcstok]
cmp eax, ebx
pop ecx
pop ecx
jne 0x100ab55
push 0x829
call fcn.0100d783
jmp 0x100abcd
mov edi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
push eax
lea eax, [ebp - 0x2cc]
push eax
call edi
jmp 0x100ab6d
mov edi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
cmp dword [ebp - 0x249a8], ebx
je 0x100ab91
lea eax, [ebp - 0x2cc]
push eax
call fcn.0100269c
test eax, eax
jne 0x100abdc
call fcn.01001ed3
xor eax, eax
jmp 0x100b3bf
cmp dword [ebp - 0x23914], ebx
jne 0x100aba8
cmp dword [ebp - 0x234fc], ebx
je 0x100abb0
push 0x30b
jmp 0x100abbd
cmp dword [ebp - 0x234fc], ebx
jne 0x100abe4
cmp dword [ebp - 0x230e4], ebx
je 0x100abe4
push 0x30c
call fcn.0100d783
push eax
call fcn.0100c82e
call fcn.0100c80a
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d376
xor eax, eax
inc eax
jmp 0x100b3bf
lea eax, [ebp - 0x6c8]
push 0x1001568
push eax
call dword [sym.imp.msvcrt.dll_wcscmp]
test eax, eax
pop ecx
pop ecx
jne 0x100ac17
lea eax, [ebp - 0x2cc]
push eax
call fcn.0100db50
test eax, eax
jne 0x100ac17
xor esi, esi
inc esi
mov dword [ebp - 0x24988], esi
jmp 0x100ac1a
xor esi, esi
inc esi
cmp dword [ebp - 0x23914], ebx
je 0x100ac9d
cmp dword [ebp - 0x230e4], ebx
jne 0x100ac7d
lea eax, [ebp - 0x2cc]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
je 0x100ac51
lea eax, [ebp - 0x2cc]
push eax
call fcn.0100db50
test eax, eax
mov dword [ebp - 0x24988], esi
je 0x100ac57
mov dword [ebp - 0x24988], ebx
lea eax, [ebp - 0x6c8]
push eax
call dword [sym.imp.msvcrt.dll_wcslen]
test eax, eax
pop ecx
je 0x100ac7d
lea eax, [ebp - 0x6c8]
push 0x10011f8
push eax
call dword [sym.imp.msvcrt.dll_wcscpy]
pop ecx
pop ecx
cmp dword [ebp - 0x23914], ebx
je 0x100ac9d
lea eax, [ebp - 0x2cc]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
jne 0x100ac9d
push 0x30e
jmp 0x100acbb
cmp dword [ebp - 0x234fc], ebx
je 0x100acd4
lea eax, [ebp - 0xac4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
jne 0x100acd4
push 0x30f
call fcn.0100d783
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d376
jmp 0x100b3bd
lea eax, [ebp - 0x2cc]
push eax
call fcn.0100db50
cmp eax, esi
jne 0x100ad22
lea eax, [ebp - 0xac4]
push eax
call dword [sym.imp.KERNEL32.dll_lstrlenW]
test eax, eax
je 0x100ad22
push 0x313
call fcn.0100d783
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
push eax
call fcn.0100d376
lea eax, [ebp - 0x2cc]
push 0x10012a0
push eax
call dword [sym.imp.msvcrt.dll_wcscpy]
pop ecx
pop ecx
push esi
lea eax, [ebp - 0x24984]
push eax
push esi
call fcn.01001fd6
call fcn.0100bb22
mov dword [ebp - 0x2498c], eax
call fcn.0100bb22
cmp dword [ebp - 0x2498c], ebx
mov dword [ebp - 0x24994], eax
je 0x100b37d
cmp eax, ebx
je 0x100b37d
push 0x1001504
lea eax, [ebp - 0xcc]
push eax
call edi
lea eax, [ebp - 0x249ac]
push eax
push ebx
push dword [ebp - 0x24988]
lea eax, [ebp - 0xcc]
push eax
lea eax, [ebp - 0x6c8]
push eax
lea eax, [ebp - 0xac4]
push eax
lea eax, [ebp - 0x2cc]
push eax
call fcn.01002f60
cmp eax, esi
jne 0x100adb8
lea eax, [ebp - 0x2498c]
push eax
call fcn.0100bb96
lea eax, [ebp - 0x24994]
push eax
call fcn.0100bb96
jmp 0x100b28e
push 0x100153c
lea eax, [ebp - 0xcc]
push eax
call fcn.01001c2e
mov dword [ebp - 0x249a0], eax
push 0x1001574
lea eax, [ebp - 0xcc]
push eax
call fcn.01001ac5
cmp eax, ebx
mov dword [ebp - 0x24994], eax
je 0x100b340
cmp dword [ebp - 0x249a0], ebx
je 0x100b340
push eax
call fcn.0100bbcf
mov dword [ebp - 0x24998], eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
mov esi, 0x1001890
push esi
add eax, 0x20
push eax
call fcn.0100d376
push 0xac
call fcn.0100d783
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
push eax
call fcn.0100d376
push 0xad
call fcn.0100d783
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
push eax
call fcn.0100d376
cmp dword [ebp - 0x24998], ebx
mov dword [ebp - 0x24988], ebx
jbe 0x100aee7
lea eax, [ebp - 0x20abc]
mov dword [ebp - 0x24990], eax
push dword [ebp - 0x24988]
push dword [ebp - 0x24994]
call fcn.0100c29c
push dword [ebp - 0x24990]
mov ecx, dword [ebp - 0x24988]
push eax
mov dword [ebp - 0x249a4], eax
mov dword [ebp + ecx*4 - 0x24da8], eax
push 0x1001574
lea eax, [ebp - 0xcc]
push eax
call fcn.0100227d
cmp eax, 0xffffffff
je 0x100b181
push dword [ebp - 0x249a4]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
cmp eax, dword [ebp - 0x2499c]
jbe 0x100aec9
mov dword [ebp - 0x2499c], eax
inc dword [ebp - 0x24988]
mov eax, dword [ebp - 0x24988]
add dword [ebp - 0x24990], 0x1fc
cmp eax, dword [ebp - 0x24998]
jb 0x100ae6a
cmp dword [ebp - 0x24998], ebx
mov dword [ebp - 0x24988], ebx
jbe 0x100afc4
lea eax, [ebp - 0x20abc]
mov dword [ebp - 0x24990], eax
mov eax, dword [ebp - 0x24988]
push dword [ebp + eax*4 - 0x24da8]
call dword [sym.imp.KERNEL32.dll_lstrlenW]
mov edi, dword [ebp - 0x2499c]
sub edi, eax
mov eax, dword [ebp - 0x24988]
push dword [ebp + eax*4 - 0x24da8]
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
push eax
inc edi
call fcn.0100d376
lea eax, [ebp - 0xcc0]
push 0x100188c
push eax
call dword [sym.imp.msvcrt.dll_wcscpy]
push edi
lea eax, [ebp - 0xcc0]
push 0x1001828
push eax
call dword [sym.imp.msvcrt.dll_wcsncat]
add esp, 0x14
lea eax, [ebp - 0xcc0]
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
push eax
call fcn.0100d376
mov eax, dword [sym.imp.msvcrt.dll__iob]
push dword [ebp - 0x24990]
add eax, 0x20
push eax
call fcn.0100d376
mov eax, dword [sym.imp.msvcrt.dll__iob]
push esi
add eax, 0x20
push eax
call fcn.0100d376
inc dword [ebp - 0x24988]
mov eax, dword [ebp - 0x24988]
add dword [ebp - 0x24990], 0x1fc
cmp eax, dword [ebp - 0x24998]
jb 0x100af05
mov edi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov eax, dword [sym.imp.msvcrt.dll__iob]
push esi
add eax, 0x20
push eax
call fcn.0100d376
push dword [ebp - 0x249a0]
call fcn.0100bbcf
cmp eax, ebx
mov dword [ebp - 0x24990], eax
mov dword [ebp - 0x2499c], ebx
jbe 0x100b214
push 4
push dword [ebp - 0x2498c]
call fcn.0100c0dd
mov dword [ebp - 0x24998], eax
mov esi, 0x10011f8
push esi
lea eax, [ebp - 0x22abc]
push eax
call edi
push esi
lea eax, [ebp - 0x4c8]
push eax
call edi
push esi
lea eax, [ebp - 0x8c4]
push eax
call edi
cmp dword [ebp - 0x249a0], ebx
je 0x100b2f1
push dword [ebp - 0x2499c]
push dword [ebp - 0x249a0]
call fcn.0100c29c
cmp eax, ebx
je 0x100b2a5
push eax
lea eax, [ebp - 0x10b8]
push eax
call edi
mov esi, dword [sym.imp.msvcrt.dll_wcstok]
lea eax, [ebp - 0x10b8]
push 0x100158c
push eax
call esi
cmp eax, ebx
pop ecx
pop ecx
je 0x100b0bd
push eax
lea eax, [ebp - 0x12b4]
push eax
call edi
push 0x10011dc
push ebx
call esi
cmp eax, ebx
pop ecx
pop ecx
je 0x100b0bd
push eax
lea eax, [ebp - 0x22abc]
push eax
call edi
push 0x1001568
lea eax, [ebp - 0x10b8]
push eax
call dword [sym.imp.KERNEL32.dll_lstrcatW]
push 0x1001568
push ebx
call esi
cmp eax, ebx
pop ecx
pop ecx
je 0x100b0bd
push eax
lea eax, [ebp - 0x8c4]
push eax
call edi
mov eax, dword [ebp - 0x2499c]
push 0xa
lea ecx, [ebp - 0xebc]
inc eax
push ecx
push eax
mov dword [ebp - 0x249a4], eax
call dword [sym.imp.msvcrt.dll__ltow]
add esp, 0xc
push ebx
lea eax, [ebp - 0xebc]
push eax
push ebx
push dword [ebp - 0x24998]
push dword [ebp - 0x2498c]
call fcn.0100c675
mov esi, dword [sym.imp.KERNEL32.dll_lstrlenW]
lea eax, [ebp - 0x22abc]
push eax
call esi
test eax, eax
jne 0x100b118
push 0x1001894
lea eax, [ebp - 0x22abc]
push eax
call edi
push ebx
lea eax, [ebp - 0x22abc]
push eax
push 1
push dword [ebp - 0x24998]
push dword [ebp - 0x2498c]
call fcn.0100c675
push ebx
lea eax, [ebp - 0x12b4]
push eax
push 2
push dword [ebp - 0x24998]
push dword [ebp - 0x2498c]
call fcn.0100c675
lea eax, [ebp - 0x8c4]
push eax
call esi
test eax, eax
lea eax, [ebp - 0x4c8]
je 0x100b1d9
mov esi, dword [sym.imp.KERNEL32.dll_lstrcatW]
push 0x10011dc
push eax
call esi
lea eax, [ebp - 0x8c4]
push eax
lea eax, [ebp - 0x4c8]
push eax
call esi
jmp 0x100b1e1
push 8
call dword [sym.imp.KERNEL32.dll_SetLastError]
push 0x7c
call fcn.0100d783
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d376
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d5fe
lea eax, [ebp - 0xcc]
push eax
call fcn.01001efb
lea eax, [ebp - 0x2498c]
push eax
call fcn.0100bb96
lea eax, [ebp - 0x24994]
push eax
call fcn.0100bb96
xor esi, esi
inc esi
jmp 0x100b28e
push 0x1001894
push eax
call edi
push ebx
lea eax, [ebp - 0x4c8]
push eax
push 3
push dword [ebp - 0x24998]
push dword [ebp - 0x2498c]
call fcn.0100c675
mov eax, dword [ebp - 0x249a4]
cmp eax, dword [ebp - 0x24990]
mov dword [ebp - 0x2499c], eax
jb 0x100aff2
push 0xaa
call fcn.0100d783
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
push eax
call fcn.0100d376
push 0xab
call fcn.0100d783
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x20
push eax
call fcn.0100d376
push dword [ebp - 0x2498c]
lea eax, [ebp - 0x24984]
push 1
push eax
push 4
call fcn.0100ff3b
lea eax, [ebp - 0x2498c]
push eax
call fcn.0100bb96
lea eax, [ebp - 0x24994]
push eax
call fcn.0100bb96
lea eax, [ebp - 0x249a0]
push eax
call fcn.0100bb96
lea eax, [ebp - 0xcc]
push eax
call fcn.01001efb
mov esi, eax
push dword [ebp - 0x249ac]
lea eax, [ebp - 0x2cc]
push eax
call fcn.010026f7
jmp 0x100b3bd
push 8
call dword [sym.imp.KERNEL32.dll_SetLastError]
push 0x7c
call fcn.0100d783
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d376
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d5fe
lea eax, [ebp - 0xcc]
push eax
call fcn.01001efb
lea eax, [ebp - 0x24994]
push eax
call fcn.0100bb96
lea eax, [ebp - 0x249a0]
jmp 0x100b32f
push 8
call dword [sym.imp.KERNEL32.dll_SetLastError]
push 0x7c
call fcn.0100d783
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d376
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d5fe
lea eax, [ebp - 0xcc]
push eax
call fcn.01001efb
lea eax, [ebp - 0x24994]
push eax
call fcn.0100bb96
lea eax, [ebp - 0x2498c]
jmp 0x100b1cb
push 8
call dword [sym.imp.KERNEL32.dll_SetLastError]
push 0x7c
call fcn.0100d783
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d376
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d5fe
lea eax, [ebp - 0xcc]
push eax
call fcn.01001efb
jmp 0x100ad9b
push 8
call dword [sym.imp.KERNEL32.dll_SetLastError]
push 0x7c
call fcn.0100d783
push eax
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d376
mov eax, dword [sym.imp.msvcrt.dll__iob]
add eax, 0x40
push eax
call fcn.0100d5fe
cmp dword [ebp - 0x2498c], ebx
je 0x100b3bd
lea eax, [ebp - 0x2498c]
push eax
call fcn.0100bb96
mov eax, esi
mov ecx, dword [ebp - 4]
pop edi
pop esi
pop ebx
call fcn.0100b77c
leave
ret 8