Function at 0x1008b78
Capabilities:
Accept command line arguments
Check os version
Get common file path
Resolve function by parsing pe exports

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x12ac
call fcn.0100b530
mov eax, dword [0x1011360]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
xor ebx, ebx
xor eax, eax
inc eax
push esi
mov dword [ebp - 0x1274], eax
mov dword [ebp - 0x129c], eax
mov dword [ebp - 0x12a4], eax
mov dword [ebp - 0x12a8], eax
mov dword [ebp - 0x128c], eax
push edi
lea eax, [ebp - 0x1238]
push eax
mov dword [ebp - 0x124c], 0xb
mov dword [ebp - 0x123c], ebx
mov dword [ebp - 0x1260], ebx
mov dword [ebp - 0x125c], ebx
mov dword [ebp - 0x1268], ebx
mov dword [ebp - 0x1294], ebx
mov dword [ebp - 0x1290], ebx
mov dword [ebp - 0x1298], ebx
mov dword [ebp - 0x1278], ebx
mov dword [ebp - 0x1280], ebx
mov dword [ebp - 0x127c], ebx
mov dword [ebp - 0x1288], ebx
mov dword [ebp - 0x1284], ebx
mov dword [ebp - 0x1250], ebx
mov dword [ebp - 0x126c], ebx
mov dword [ebp - 0x1270], ebx
mov dword [ebp - 0x1238], 0x114
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
je 0x1008c67
cmp dword [ebp - 0x1234], 5
ja 0x1008c51
jne 0x1008c49
cmp dword [ebp - 0x1230], ebx
ja 0x1008c51
mov byte [0x10116a0], bl
jmp 0x1008c58
mov byte [0x10116a0], 1
cmp dword [ebp - 0x1234], 5
seta al
mov byte [0x10116a1], al
push 0xa
xor eax, eax
cmp byte [0x10116a0], bl
pop ecx
mov edi, 0x1011a20
rep stosd dword es:[edi], eax
je 0x1008ce5
push 0x1006a4c
call dword [sym.imp.KERNEL32.dll_LoadLibraryW]
cmp eax, ebx
mov dword [0x1011a48], eax
je 0x1008ce5
mov esi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x1006a40
push eax
call esi
push 0x1006a2c
push dword [0x1011a48]
mov dword [0x1011a20], eax
call esi
cmp byte [0x10116a1], bl
mov dword [0x1011a24], eax
je 0x1008ce5
call fcn.01006ba5
push 0x1006a1c
push dword [0x1011a48]
call esi
push 0x1006a04
push dword [0x1011a48]
mov dword [0x1011a28], eax
call esi
mov dword [0x1011a2c], eax
mov edi, 0x10f0
push edi
call dword [sym.imp.msvcrt.dll_malloc]
mov esi, eax
cmp esi, ebx
pop ecx
mov dword [ebp - 0x1244], esi
jne 0x1008d16
mov eax, dword [0x1011a48]
cmp eax, ebx
je 0x1008d0e
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push 0xe
pop eax
jmp 0x100b130
push edi
push ebx
push esi
call sub.msvcrt.dll_memset
push 0x10045ec
lea eax, [esi + 0x78]
push 0x400
push eax
mov dword [esi], edi
mov dword [esi + 0x2c], 0x20000
mov dword [esi + 0x70], 0x78
mov dword [esi + 0x6c], 0x878
call fcn.0100b6c1
push 0xa00
call dword [sym.imp.msvcrt.dll_malloc]
add esp, 0x1c
cmp eax, ebx
jne 0x1008d64
push esi
call dword [sym.imp.msvcrt.dll_free]
pop ecx
jmp 0x1008cfe
mov ecx, eax
mov dword [ebp - 0x12a0], eax
mov dword [ebp - 0x1240], ecx
add eax, 0x200
mov dword [ecx + ebx*4], eax
add eax, 0x10
inc ebx
cmp ebx, 0x80
jl 0x1008d77
and dword [ebp - 0x1258], 0
lea eax, [ebp + 8]
push eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov ebx, eax
test ebx, ebx
jne 0x1008dd2
push esi
mov esi, dword [sym.imp.msvcrt.dll_free]
call esi
push dword [ebp - 0x12a0]
call esi
mov eax, dword [0x1011a48]
test eax, eax
pop ecx
pop ecx
je 0x1008dc7
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x100b130
dec dword [ebp + 8]
cmp dword [ebp + 8], 0
mov edi, dword [sym.imp.msvcrt.dll__wcsicmp]
lea eax, [esi + 0x48]
mov dword [ebp - 0x12ac], ebx
mov dword [ebp - 0x1264], eax
jle 0x100a059
add ebx, 4
mov eax, dword [ebx]
movzx ecx, word [eax]
cmp cx, 0x2d
je 0x1008e0c
cmp cx, 0x2f
jne 0x100a08b
cmp cx, 0x2f
jne 0x1008e17
mov word [eax], 0x2d
push 0x10069f4
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1008e6d
inc eax
cmp dword [ebp + 8], eax
mov dword [ebp - 0x124c], eax
jle 0x100a040
lea eax, [ebx + 4]
mov ecx, dword [eax]
movzx ecx, word [ecx]
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
dec dword [ebp + 8]
mov ebx, eax
mov ecx, dword [ebx]
mov eax, ecx
lea edx, [eax + 2]
mov di, word [eax]
inc eax
inc eax
test di, di
jne 0x1008e5e
jmp 0x10091f1
push 0x10069e4
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1008ec7
cmp dword [ebp + 8], 1
mov dword [ebp - 0x124c], 5
jle 0x100a040
lea eax, [ebx + 4]
mov ecx, dword [eax]
movzx ecx, word [ecx]
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
dec dword [ebp + 8]
mov ebx, eax
mov ecx, dword [ebx]
mov eax, ecx
lea edx, [eax + 2]
mov di, word [eax]
inc eax
inc eax
test di, di
jne 0x1008eb8
jmp 0x10091f1
push 0x10069d0
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1008f27
and dword [ebp - 0x1274], eax
cmp dword [ebp + 8], 1
mov dword [ebp - 0x124c], 5
jle 0x100a040
lea eax, [ebx + 4]
mov ecx, dword [eax]
movzx ecx, word [ecx]
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
dec dword [ebp + 8]
mov ebx, eax
mov ecx, dword [ebx]
mov eax, ecx
lea edx, [eax + 2]
mov di, word [eax]
inc eax
inc eax
test di, di
jne 0x1008f18
jmp 0x10091f1
push 0x10069bc
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1008f81
cmp dword [ebp + 8], 1
mov dword [ebp - 0x124c], 0xa
jle 0x100a040
lea eax, [ebx + 4]
mov ecx, dword [eax]
movzx ecx, word [ecx]
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
dec dword [ebp + 8]
mov ebx, eax
mov ecx, dword [ebx]
mov eax, ecx
lea edx, [eax + 2]
mov di, word [eax]
inc eax
inc eax
test di, di
jne 0x1008f72
jmp 0x10091f1
push 0x10069a4
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1008fe1
and dword [ebp - 0x1274], eax
cmp dword [ebp + 8], 1
mov dword [ebp - 0x124c], 0xa
jle 0x100a040
lea eax, [ebx + 4]
mov ecx, dword [eax]
movzx ecx, word [ecx]
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
dec dword [ebp + 8]
mov ebx, eax
mov ecx, dword [ebx]
mov eax, ecx
lea edx, [eax + 2]
mov di, word [eax]
inc eax
inc eax
test di, di
jne 0x1008fd2
jmp 0x10091f1
push 0x1006998
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x100903b
cmp dword [ebp + 8], 1
mov dword [ebp - 0x124c], 2
jle 0x100a040
lea eax, [ebx + 4]
mov ecx, dword [eax]
movzx ecx, word [ecx]
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
dec dword [ebp + 8]
mov ebx, eax
mov ecx, dword [ebx]
mov eax, ecx
lea edx, [eax + 2]
mov di, word [eax]
inc eax
inc eax
test di, di
jne 0x100902c
jmp 0x10091f1
push 0x1006988
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009095
cmp dword [ebp + 8], 1
mov dword [ebp - 0x124c], 3
jle 0x100a040
lea eax, [ebx + 4]
mov ecx, dword [eax]
movzx ecx, word [ecx]
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
dec dword [ebp + 8]
mov ebx, eax
mov ecx, dword [ebx]
mov eax, ecx
lea edx, [eax + 2]
mov di, word [eax]
inc eax
inc eax
test di, di
jne 0x1009086
jmp 0x10091f1
push 0x1006978
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x10090ef
cmp dword [ebp + 8], 1
mov dword [ebp - 0x124c], 9
jle 0x100a040
lea eax, [ebx + 4]
mov ecx, dword [eax]
movzx ecx, word [ecx]
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
dec dword [ebp + 8]
mov ebx, eax
mov ecx, dword [ebx]
mov eax, ecx
lea edx, [eax + 2]
mov di, word [eax]
inc eax
inc eax
test di, di
jne 0x10090e0
jmp 0x10091f1
push 0x1006958
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009149
cmp dword [ebp + 8], 1
mov dword [ebp - 0x124c], 0xd
jle 0x100a040
lea eax, [ebx + 4]
mov ecx, dword [eax]
movzx ecx, word [ecx]
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
dec dword [ebp + 8]
mov ebx, eax
mov ecx, dword [ebx]
mov eax, ecx
lea edx, [eax + 2]
mov di, word [eax]
inc eax
inc eax
test di, di
jne 0x100913a
jmp 0x10091f1
push 0x1006950
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x100919c
and dword [ebp - 0x124c], eax
cmp dword [ebp + 8], 1
jle 0x100a040
lea eax, [ebx + 4]
mov ecx, dword [eax]
movzx ecx, word [ecx]
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
dec dword [ebp + 8]
mov ebx, eax
mov ecx, dword [ebx]
mov eax, ecx
lea edx, [eax + 2]
mov di, word [eax]
inc eax
inc eax
test di, di
jne 0x1009190
jmp 0x10091f1
push 0x1006940
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009218
cmp dword [ebp + 8], 1
mov dword [ebp - 0x124c], 7
jle 0x100a040
lea eax, [ebx + 4]
mov ecx, dword [eax]
movzx ecx, word [ecx]
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
dec dword [ebp + 8]
mov ebx, eax
mov ecx, dword [ebx]
mov eax, ecx
lea edx, [eax + 2]
mov di, word [eax]
inc eax
inc eax
test di, di
jne 0x10091e7
sub eax, edx
sar eax, 1
lea edx, [eax + 1]
mov eax, 0x400
cmp edx, eax
ja 0x100a097
push ecx
push eax
lea eax, [esi + 0x78]
push eax
call fcn.0100b6c1
add esp, 0xc
jmp 0x100a040
push 0x100692c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009236
mov dword [ebp - 0x124c], 8
jmp 0x100a040
push 0x1006914
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009299
xor edi, edi
inc edi
cmp dword [ebp + 8], edi
mov dword [ebp - 0x124c], 0xc
jle 0x100a040
add ebx, 4
mov eax, dword [ebx]
movzx ecx, word [eax]
cmp cx, 0x23
jne 0x1009284
lea ecx, [ebp - 0x1114]
push ecx
add eax, 2
push eax
call fcn.01006cd6
mov dword [ebp - 0x1258], edi
jmp 0x1009df2
cmp cx, 0x2e
jne 0x1009df2
mov dword [ebp - 0x1270], edi
jmp 0x1009df2
push 0x100690c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x100930e
cmp dword [ebp + 8], 1
jle 0x100a040
add ebx, 4
cmp byte [0x10116a0], al
je 0x10092f2
mov edx, dword [ebx]
mov eax, edx
lea edi, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
test cx, cx
jne 0x10092c4
sub eax, edi
sar eax, 1
lea ecx, [eax + 1]
mov eax, 0x400
cmp ecx, eax
ja 0x100a0b2
push edx
push eax
lea eax, [esi + 0x878]
push eax
call fcn.0100b6c1
jmp 0x1009306
push 0x400
push dword [ebx]
lea eax, [esi + 0x878]
push eax
call dword [sym.imp.msvcrt.dll__wfullpath]
add esp, 0xc
jmp 0x1009df2
push 0x10068fc
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009326
or dword [esi + 0x40], 4
jmp 0x100a040
push 0x10068e8
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x100933e
or dword [esi + 0x40], 0x20
jmp 0x100a040
push 0x10068cc
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009359
or dword [esi + 0x40], 0x1200
jmp 0x100a040
push 0x10068c4
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009374
or dword [esi + 0x40], 0x2000
jmp 0x100a040
push 0x10068b8
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x100944a
cmp dword [ebp + 8], 1
jle 0x100a040
lea edi, [ebx + 4]
mov eax, dword [edi]
movzx ecx, word [eax]
cmp cx, 0x23
jne 0x10093c4
mov ecx, dword [ebp - 0x1240]
push dword [ecx]
add eax, 2
push eax
call fcn.01006cd6
dec dword [ebp + 8]
mov ebx, edi
mov dword [ebp - 0x1258], 1
jmp 0x100a040
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
push 0x400
push eax
lea eax, [ebp - 0x904]
push eax
call dword [sym.imp.msvcrt.dll__wfullpath]
add esp, 0xc
dec dword [ebp + 8]
push 0x80
push dword [ebp - 0x1240]
lea eax, [ebp - 0x904]
push eax
mov ebx, edi
call fcn.01008841
test eax, eax
mov dword [ebp - 0x1258], eax
jge 0x100942c
lea eax, [ebp - 0x904]
push eax
push 0x1006884
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
jmp 0x1009fc6
jne 0x100a040
lea eax, [ebp - 0x904]
push eax
push 0x1006858
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
jmp 0x100a0a2
push 0x100683c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x10094a9
cmp dword [ebp + 8], 1
jle 0x100a040
lea eax, [ebx + 4]
mov dword [ebp - 0x1248], eax
mov eax, dword [eax]
cmp word [eax], 0x23
jne 0x100a040
lea ecx, [ebp - 0x1124]
push ecx
add eax, 2
push eax
call fcn.01006cd6
mov edi, dword [ebp - 0x1244]
mov ebx, dword [ebp - 0x1248]
add edi, 0x18
lea esi, [ebp - 0x1124]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
dec dword [ebp + 8]
jmp 0x1009bce
push 0x100682c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x10094c4
or dword [esi + 0x40], 0x80
jmp 0x100a040
push 0x100680c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x10094df
mov dword [esi + 0x28], 1
jmp 0x100a040
push 0x10067ec
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x10094fa
mov dword [esi + 0x28], 2
jmp 0x100a040
push 0x10067d0
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009515
mov dword [esi + 0x28], 3
jmp 0x100a040
push 0x10067c4
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009545
cmp dword [ebp + 8], 1
jle 0x100a040
or dword [esi + 0x40], 1
add ebx, 4
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wtoi]
mov dword [esi + 0x3c], eax
jmp 0x1009df1
push 0x10067b0
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009564
cmp dword [ebp + 8], 1
jle 0x100a040
or dword [esi + 0x40], 8
jmp 0x1009532
push 0x100679c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x100957f
or dword [esi + 0x40], 0x40000
jmp 0x100a040
push 0x1006790
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x100959e
cmp dword [ebp + 8], 1
jle 0x100a040
or dword [esi + 0x40], 2
jmp 0x1009532
push 0x1006788
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x10095e8
cmp dword [ebp + 8], 1
jle 0x100a040
add ebx, 4
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wtoi]
cmp byte [0x10116a2], 0
pop ecx
je 0x10095e0
cmp eax, 3
jbe 0x10095e0
push 0x10066f8
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
push 3
pop eax
mov dword [esi + 0x30], eax
jmp 0x1009df2
push 0x10066d4
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009639
cmp dword [ebp + 8], 1
jle 0x100a040
add ebx, 4
mov eax, dword [ebx]
movzx ecx, word [eax + 2]
cmp cx, 0x78
je 0x1009628
cmp cx, 0x58
je 0x1009628
push eax
call dword [sym.imp.msvcrt.dll__wtoi]
mov dword [ebp - 0x1278], eax
jmp 0x1009df1
push eax
call fcn.01006c20
or dword [ebp - 0x1278], eax
jmp 0x1009df2
push 0x10066bc
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009678
cmp dword [ebp + 8], 1
jle 0x100a040
lea edi, [ebx + 4]
mov eax, dword [edi]
cmp word [eax], 0x23
jne 0x100a040
lea ecx, [ebp - 0x1114]
push ecx
add eax, 2
push eax
call fcn.01006cd6
mov ebx, edi
jmp 0x1009df2
push 0x10066a4
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x10096d5
cmp dword [ebp + 8], 1
jle 0x100a040
add ebx, 4
mov eax, dword [ebx]
movzx ecx, word [eax + 2]
cmp cx, 0x78
je 0x10096be
cmp cx, 0x58
je 0x10096be
push eax
call dword [sym.imp.msvcrt.dll__wtoi64]
mov dword [ebp - 0x1280], eax
mov dword [ebp - 0x127c], edx
jmp 0x1009df1
push eax
call fcn.01006c20
or dword [ebp - 0x1280], eax
or dword [ebp - 0x127c], edx
jmp 0x1009df2
push 0x100668c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009732
cmp dword [ebp + 8], 1
jle 0x100a040
add ebx, 4
mov eax, dword [ebx]
movzx ecx, word [eax + 2]
cmp cx, 0x78
je 0x100971b
cmp cx, 0x58
je 0x100971b
push eax
call dword [sym.imp.msvcrt.dll__wtoi64]
mov dword [ebp - 0x1288], eax
mov dword [ebp - 0x1284], edx
jmp 0x1009df1
push eax
call fcn.01006c20
or dword [ebp - 0x1288], eax
or dword [ebp - 0x1284], edx
jmp 0x1009df2
push 0x1006680
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
je 0x1009ff9
push 0x1006670
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
je 0x1009ff9
push 0x1006660
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009902
lea edi, [esi + 0x48]
cmp dword [ebp - 0x1264], edi
jne 0x100a0b9
cmp byte [0x10116a1], al
je 0x10097c9
cmp dword [ebp + 8], 1
jle 0x10097c9
lea eax, [ebx + 4]
mov dword [ebp - 0x1248], eax
mov eax, dword [eax]
movzx eax, word [eax]
push 0x103
push eax
call dword [sym.imp.msvcrt.dll_iswctype]
test eax, eax
pop ecx
pop ecx
je 0x10097c9
mov ebx, dword [ebp - 0x1248]
push dword [ebx]
call fcn.010089ff
test eax, eax
jbe 0x100a0a3
mov byte [0x10116a5], 1
jmp 0x1009df2
cmp dword [ebp + 8], 2
jle 0x100a040
add ebx, 4
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wtoi]
dec dword [ebp + 8]
movzx edx, ax
lea eax, [edx - 1]
cmp ax, 7
pop ecx
ja 0x100a0c0
and dword [ebp - 0x1248], 0
cmp byte [0x10116a1], 0
je 0x1009868
push 8
xor eax, eax
pop ecx
mov edi, 0x1012260
rep stosd dword es:[edi], eax
movzx eax, dx
test eax, eax
mov dword [ebp - 0x1254], eax
jbe 0x100985c
cmp dword [ebp + 8], 1
jle 0x100985c
lea edi, [ebx + 4]
mov eax, dword [edi]
movzx ecx, word [eax]
cmp cx, 0x2f
je 0x100985c
cmp cx, 0x2d
je 0x100985c
push eax
call fcn.01006c20
mov ecx, dword [ebp - 0x1248]
dec dword [ebp + 8]
mov dword [ecx*4 + 0x1012260], eax
inc ecx
cmp ecx, dword [ebp - 0x1254]
mov ebx, edi
mov dword [ebp - 0x1248], ecx
jb 0x100981b
mov byte [0x10116a5], 1
jmp 0x100a040
lea eax, [esi + 0x10d0]
mov dword [ebp - 0x1264], eax
movzx eax, dx
test eax, eax
mov dword [edi], 0x80000000
mov word [edi], 0x10d0
mov byte [edi + 2], dl
mov dword [ebp - 0x1254], eax
jbe 0x10098d7
cmp dword [ebp + 8], 1
jle 0x10098d7
lea edi, [ebx + 4]
mov eax, dword [edi]
movzx ecx, word [eax]
cmp cx, 0x2f
je 0x10098d7
cmp cx, 0x2d
je 0x10098d7
push eax
call fcn.01006c20
mov ecx, dword [ebp - 0x1248]
mov edx, dword [ebp - 0x1264]
mov dword [edx + ecx*4], eax
dec dword [ebp + 8]
inc dword [ebp - 0x1248]
mov eax, dword [ebp - 0x1248]
cmp eax, dword [ebp - 0x1254]
mov ebx, edi
jb 0x100988f
mov eax, dword [ebp - 0x1248]
cmp eax, 8
jae 0x10098f4
mov ecx, dword [ebp - 0x1264]
lea edi, [ecx + eax*4]
push 8
pop ecx
sub ecx, eax
xor eax, eax
rep stosd dword es:[edi], eax
mov al, byte [ebp - 0x1248]
cmp byte [esi + 0x4a], al
jmp 0x1009aed
push 0x1006650
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x100999a
cmp byte [0x10116a1], al
je 0x1009954
cmp byte [0x10116a5], al
je 0x100992f
push 0x10065c8
jmp 0x1009fc0
push 8
pop ecx
xor eax, eax
mov edi, 0x1012260
rep stosd dword es:[edi], eax
mov dword [0x1012260], 0x307
mov dword [0x1012264], 0x4084
jmp 0x100985c
lea eax, [esi + 0x48]
cmp dword [ebp - 0x1264], eax
jne 0x100a0c7
mov dword [eax], 0x80000000
mov word [eax], 0x10d0
mov byte [eax + 2], 2
lea eax, [esi + 0x10d0]
mov dword [eax], 0x307
mov dword [eax + 4], 0x4084
lea edi, [eax + 8]
push 6
mov dword [ebp - 0x1264], eax
pop ecx
xor eax, eax
rep stosd dword es:[edi], eax
jmp 0x100a040
push 0x10065bc
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009b01
cmp dword [ebp + 8], 2
jle 0x100a040
add ebx, 4
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wtoi]
dec dword [ebp + 8]
movzx eax, ax
pop ecx
lea ecx, [eax - 1]
cmp cx, 1
ja 0x100a0ce
and dword [ebp - 0x1248], 0
cmp byte [0x10116a1], 0
je 0x1009a5a
movzx eax, ax
test eax, eax
mov dword [ebp - 0x1254], eax
jbe 0x1009a41
cmp dword [ebp + 8], 1
jle 0x1009a41
lea edi, [ebx + 4]
mov eax, dword [edi]
movzx ecx, word [eax]
cmp cx, 0x2f
je 0x1009a41
cmp cx, 0x2d
je 0x1009a41
push eax
call dword [sym.imp.msvcrt.dll__wtol]
inc dword [0x10116ac]
dec dword [ebp + 8]
pop ecx
mov ecx, dword [ebp - 0x1248]
inc dword [ebp - 0x1248]
mov dword [ecx*4 + 0x1011a00], eax
mov eax, dword [ebp - 0x1248]
cmp eax, dword [ebp - 0x1254]
mov ebx, edi
jb 0x10099f3
cmp dword [0x10116ac], 0
jbe 0x100a040
mov byte [0x10116a3], 1
jmp 0x100a040
mov dword [esi + 0x48], 0x80000000
mov byte [esi + 0x4a], al
movzx eax, ax
test eax, eax
lea ecx, [esi + 0x10d0]
mov word [esi + 0x48], 0x10d0
mov dword [ebp - 0x1264], ecx
mov dword [ebp - 0x1254], eax
jbe 0x1009acd
cmp dword [ebp + 8], 1
jle 0x1009acd
lea edi, [ebx + 4]
mov eax, dword [edi]
movzx ecx, word [eax]
cmp cx, 0x2f
je 0x1009acd
cmp cx, 0x2d
je 0x1009acd
push eax
call dword [sym.imp.msvcrt.dll__wtol]
mov edx, dword [ebp - 0x1264]
pop ecx
mov ecx, dword [ebp - 0x1248]
mov dword [edx + ecx*4], eax
dec dword [ebp + 8]
inc dword [ebp - 0x1248]
mov eax, dword [ebp - 0x1248]
cmp eax, dword [ebp - 0x1254]
mov ebx, edi
jb 0x1009a83
mov edx, dword [ebp - 0x1248]
cmp edx, 8
jae 0x1009aea
mov eax, dword [ebp - 0x1264]
push 8
pop ecx
lea edi, [eax + edx*4]
sub ecx, edx
xor eax, eax
rep stosd dword es:[edi], eax
cmp byte [esi + 0x4a], dl
je 0x100a040
mov al, byte [ebp - 0x1248]
mov byte [esi + 0x4a], al
jmp 0x100a040
push 0x10065a4
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009b69
cmp dword [ebp + 8], 1
jle 0x100a040
push 0x400
add ebx, 4
push dword [ebx]
lea eax, [ebp - 0x904]
push eax
call dword [sym.imp.msvcrt.dll__wfullpath]
add esp, 0xc
lea eax, [ebp - 0x904]
push eax
call fcn.01007f6a
test eax, eax
mov dword [0x10116a8], eax
jne 0x1009b57
push dword [ebx]
call fcn.01008927
mov dword [0x10116a8], eax
test eax, eax
jbe 0x1009df2
mov byte [0x10116a4], 1
jmp 0x1009df2
push 0x1006598
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009b95
mov esi, 0x1001d24
cmp byte [0x10116a1], 0
je 0x1009bab
mov edi, dword [ebp - 0x1244]
add edi, 0x18
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
jmp 0x1009bce
push 0x1006584
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009bd9
mov esi, 0x1001d34
jmp 0x1009b7d
mov eax, dword [ebp - 0x1240]
mov edi, dword [eax]
mov eax, dword [ebp - 0x1244]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
or dword [eax + 0x40], 0x800
mov dword [ebp - 0x1258], 1
mov esi, dword [ebp - 0x1244]
jmp 0x100a040
push 0x100657c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009bf4
or dword [esi + 0x40], 0x8000
jmp 0x100a040
push 0x1006574
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009c0f
or dword [esi + 0x40], 0x4000
jmp 0x100a040
push 0x1006568
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009c3b
cmp dword [ebp + 8], 1
jle 0x100a040
add ebx, 4
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wtoi]
mov dword [esi + 0x34], eax
jmp 0x1009df1
push 0x100655c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009c67
cmp dword [ebp + 8], 1
jle 0x100a040
add ebx, 4
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wtoi]
mov dword [esi + 0x38], eax
jmp 0x1009df1
push 0x100654c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009cb5
cmp dword [ebp + 8], 1
jle 0x100a040
add ebx, 4
mov eax, dword [ebx]
movzx ecx, word [eax + 2]
cmp cx, 0x78
je 0x1009c9f
cmp cx, 0x58
je 0x1009c9f
push eax
call dword [sym.imp.msvcrt.dll__wtoi]
pop ecx
jmp 0x1009caa
push eax
call fcn.01006c20
and eax, 0xff
mov dword [ebp - 0x1290], eax
jmp 0x1009df2
push 0x1006544
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009ce1
cmp dword [ebp + 8], 1
jle 0x100a040
add ebx, 4
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wtoi]
mov dword [esi + 0x44], eax
jmp 0x1009df1
push 0x100653c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009cfc
or dword [esi + 0x40], 0x800
jmp 0x100a040
push 0x100652c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009d17
or dword [esi + 0x40], 0x1000000
jmp 0x100a040
push 0x1006524
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009d6e
or dword [esi + 0x40], 0x100
cmp dword [ebp + 8], 1
jle 0x100a040
lea eax, [ebx + 4]
mov ecx, dword [eax]
movzx ecx, word [ecx]
cmp cx, 0x2d
je 0x100a040
cmp cx, 0x2f
je 0x100a040
dec dword [ebp + 8]
mov ebx, eax
mov eax, dword [ebx]
cmp word [eax], 0x62
jne 0x100a040
push 0x1006490
jmp 0x100a09c
push 0x1006488
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009d97
or dword [esi + 0x40], 0x80000
mov dword [esi + 0x30], 3
mov byte [0x10116a2], 1
jmp 0x100a040
push 0x1006470
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009dca
or dword [esi + 0x40], 0x400
cmp byte [0x10116a1], 0
mov eax, dword [esi + 0x40]
jne 0x100a040
or eax, 0x100
mov dword [esi + 0x40], eax
jmp 0x100a040
push 0x1006464
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009dfa
cmp dword [ebp + 8], 1
jle 0x100a040
add ebx, 4
push dword [ebx]
call dword [sym.imp.msvcrt.dll__wtoi]
mov dword [esi + 0x4c], eax
pop ecx
dec dword [ebp + 8]
jmp 0x100a040
push 0x100645c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009e1e
and dword [ebp - 0x1268], eax
mov dword [ebp - 0x124c], 4
jmp 0x100a040
push 0x1006454
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009e46
mov dword [ebp - 0x124c], 4
mov dword [ebp - 0x1268], 1
jmp 0x100a040
push 0x100644c
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009e71
inc eax
mov dword [ebp - 0x124c], 4
mov dword [ebp - 0x1268], eax
mov dword [ebp - 0x1294], eax
jmp 0x100a040
push 0x1006434
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009e8b
and dword [ebp - 0x129c], eax
jmp 0x100a040
push 0x1006420
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009ea5
and dword [ebp - 0x12a4], eax
jmp 0x100a040
push 0x1006410
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009ebf
and dword [ebp - 0x12a8], eax
jmp 0x100a040
push 0x1006400
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009ed9
and dword [ebp - 0x128c], eax
jmp 0x100a040
push 0x10063f4
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009f0a
mov ecx, dword [ebp - 0x1264]
lea eax, [esi + 0x48]
cmp ecx, eax
jne 0x1009f00
or dword [ecx], 0x200
jmp 0x100a040
push 0x1006390
jmp 0x1009fc0
push 0x1006384
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009f3b
mov ecx, dword [ebp - 0x1264]
lea eax, [esi + 0x48]
cmp ecx, eax
jne 0x1009f31
or dword [ecx], 0x1000
jmp 0x100a040
push 0x1006320
jmp 0x1009fc0
push 0x1006314
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009f69
mov ecx, dword [ebp - 0x1264]
lea eax, [esi + 0x48]
cmp ecx, eax
jne 0x1009f62
or dword [ecx], 0x2000
jmp 0x100a040
push 0x10062b0
jmp 0x1009fc0
push 0x10062a4
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009f94
mov ecx, dword [ebp - 0x1264]
lea eax, [esi + 0x48]
cmp ecx, eax
jne 0x1009f8d
or dword [ecx], 4
jmp 0x100a040
push 0x1006240
jmp 0x1009fc0
push 0x1006234
push dword [ebx]
call edi
test eax, eax
pop ecx
pop ecx
jne 0x1009fc9
mov ecx, dword [ebp - 0x1264]
lea eax, [esi + 0x48]
cmp ecx, eax
jne 0x1009fbb
or dword [ecx], 0x20000
jmp 0x100a040
push 0x10061d0
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
jmp 0x100a040
mov eax, dword [ebx]
movzx eax, word [eax + 2]
cmp ax, 0x68
je 0x100a0d5
cmp ax, 0x48
je 0x100a0d5
cmp ax, 0x3f
je 0x100a0d5
mov dword [ebp - 0x124c], 0xb
jmp 0x100a040
cmp dword [ebp + 8], 1
jle 0x100a040
add ebx, 4
mov eax, dword [ebx]
movzx ecx, word [eax + 2]
cmp cx, 0x78
je 0x100a01e
cmp cx, 0x58
je 0x100a01e
push eax
call dword [sym.imp.msvcrt.dll__wtoi]
pop ecx
jmp 0x100a024
push eax
call fcn.01006c20
or dword [esi + 0x48], eax
mov eax, dword [esi + 0x48]
dec dword [ebp + 8]
test dword [esi + 0x48], 0x80000000
mov dword [ebp - 0x1298], eax
jne 0x100a0df
dec dword [ebp + 8]
cmp dword [ebp + 8], 0
mov edi, dword [sym.imp.msvcrt.dll__wcsicmp]
jg 0x1008df4
mov eax, dword [ebp - 0x1264]
mov edx, 0x10045ec
lea ecx, [esi + 0x78]
mov bx, word [ecx]
cmp bx, word [edx]
jne 0x100a0f4
test bx, bx
je 0x100a087
mov bx, word [ecx + 2]
cmp bx, word [edx + 2]
jne 0x100a0f4
add ecx, 4
add edx, 4
test bx, bx
jne 0x100a061
xor ecx, ecx
jmp 0x100a0f9
push dword [ebx]
push 0x100619c
jmp 0x100943e
push 0x1006160
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
mov dword [ebp - 0x123c], 0x57
jmp 0x100b0e6
push 0x1006120
jmp 0x100a09c
push 0x1006098
jmp 0x100a09c
push 0x1006048
jmp 0x100a09c
push 0x10065c8
jmp 0x100a09c
push 0x1006004
jmp 0x100a09c
call fcn.01006fcf
jmp 0x100b0e6
mov eax, dword [esi + 0x48]
push eax
push eax
push 0x1005fcc
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 0xc
jmp 0x100a0a3
sbb ecx, ecx
sbb ecx, 0xffffffff
xor edx, edx
cmp ecx, edx
jne 0x100a163
add esi, 0x48
cmp eax, esi
jne 0x100a138
cmp dword [ebp - 0x129c], edx
je 0x100a111
or dword [eax], 1
cmp dword [ebp - 0x12a4], edx
je 0x100a11c
or dword [eax], 2
cmp dword [ebp - 0x12a8], edx
je 0x100a12a
or dword [eax], 0x100
cmp dword [ebp - 0x128c], edx
je 0x100a138
or dword [eax], 0x10000
mov eax, dword [ebp - 0x1244]
lea edi, [eax + 0x18]
mov esi, 0x1001cf4
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov edi, dword [sym.imp.msvcrt.dll__wcsicmp]
mov dword [eax + 0x30], 0x40
mov dword [ebp - 0x1250], 1
mov esi, eax
push 0x10040b0
lea ebx, [esi + 0x78]
push ebx
call edi
test eax, eax
pop ecx
pop ecx
jne 0x100a185
mov esi, 0x1001d04
mov dword [ebp - 0x1250], 3
jmp 0x100a1a2
push 0x1005fa8
push ebx
call edi
test eax, eax
pop ecx
pop ecx
jne 0x100a1b5
mov esi, 0x1001d14
mov dword [ebp - 0x1250], 2
mov edi, dword [ebp - 0x1244]
add edi, 0x18
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x1244]
test word [esi + 0x40], 0x500
mov edi, dword [sym.imp.msvcrt.dll_wprintf]
jne 0x100a22a
cmp dword [ebp - 0x1250], 3
je 0x100a22a
lea eax, [esi + 0x878]
lea edx, [eax + 2]
mov cx, word [eax]
inc eax
inc eax
test cx, cx
jne 0x100a1d5
sub eax, edx
sar eax, 1
jne 0x100a22a
cmp word [ebp - 0x124c], 1
jne 0x100a22a
lea eax, [esi + 0x878]
push eax
mov ebx, 0x400
push ebx
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryW]
cmp eax, ebx
jae 0x100a222
sub ebx, eax
push 0x1005f8c
lea ecx, [esi + 0x878]
lea eax, [ecx + eax*2]
push ebx
push eax
call fcn.0100b6c1
add esp, 0xc
jmp 0x100a22a
push 0x1005f48
call edi
pop ecx
movzx eax, word [ebp - 0x124c]
cmp eax, 0xd
ja case.0x100a23a.11
jmp dword [eax*4 + 0x100b140]
mov eax, dword [esi + 0x40]
test ax, 0x800
je 0x100a28b
cmp dword [ebp - 0x1258], 1
je 0x100a26a
push 0x1005ef0
call edi
pop ecx
mov dword [ebp - 0x123c], 0x57
jmp 0x100b0a0
mov edi, dword [ebp - 0x1244]
mov ecx, dword [ebp - 0x1240]
mov esi, dword [ecx]
add edi, 0x18
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x1244]
mov edi, dword [sym.imp.msvcrt.dll_wprintf]
test al, 8
je 0x100a2e9
push 0x25
lea ebx, [esi + 0x878]
push ebx
call dword [sym.imp.msvcrt.dll_wcschr]
push 0x25
push ebx
mov dword [ebp - 0x1294], eax
call dword [sym.imp.msvcrt.dll_wcsrchr]
mov ecx, dword [ebp - 0x1294]
add esp, 0x10
cmp eax, ecx
jne 0x100a2d2
lea eax, [esi + 0x878]
push 0x1005ee4
push eax
call dword [sym.imp.msvcrt.dll_wcsstr]
test eax, eax
pop ecx
pop ecx
jne 0x100a2e9
push 0x1005e68
call edi
pop ecx
mov dword [ebp - 0x123c], 0x7b
jmp 0x100b0a0
test byte [esi + 0x40], 8
je 0x100a2ff
cmp dword [esi + 0x3c], 0
jne 0x100a2ff
push 0x1005e10
jmp 0x100a258
cmp dword [ebp - 0x1250], 3
jne 0x100a343
mov ebx, 0x10040b0
push ebx
lea edi, [esi + 0x28]
push dword [edi]
push esi
push 1
call fcn.0100731d
test eax, eax
mov dword [ebp - 0x123c], eax
jne 0x100b0a0
push ebx
lea eax, [ebp - 0x126c]
push eax
push edi
push esi
call fcn.01007854
mov dword [ebp - 0x123c], eax
jmp 0x100b0a0
cmp byte [0x10116a1], 1
jne 0x100a352
push esi
call fcn.01008133
add esi, 0x48
test dword [esi], 0x80000000
je 0x100a398
mov eax, dword [ebp - 0x1240]
mov eax, dword [eax]
push 4
pop ecx
mov edi, eax
mov esi, 0x1001d34
xor edx, edx
repe cmpsd dword [esi], dword es:[edi]
je 0x100a385
push 4
mov edi, eax
pop ecx
mov esi, 0x1001d24
xor eax, eax
repe cmpsd dword [esi], dword es:[edi]
jne 0x100a398
mov eax, dword [ebp - 0x1244]
and dword [eax + 0xc], 0
mov dword [eax + 8], 0x1000001
jmp 0x100a39e
mov eax, dword [ebp - 0x1244]
push eax
lea esi, [eax + 0x78]
push esi
lea eax, [ebp - 0x1260]
push eax
call dword [sym.imp.ADVAPI32.dll_StartTraceW]
mov edi, eax
test edi, edi
mov dword [ebp - 0x123c], edi
je 0x100a3d8
push edi
call fcn.01006be1
push eax
push edi
push esi
push 0x1005d98
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 0x10
jmp 0x100b0a0
push 0x1005d70
call dword [sym.imp.msvcrt.dll_wprintf]
mov esi, dword [ebp - 0x1244]
mov edi, dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
cmp word [ebp - 0x124c], 5
je 0x100a408
cmp word [ebp - 0x124c], 0xa
jne 0x100a4be
test word [esi + 0x40], 0x800
je 0x100a43e
cmp dword [ebp - 0x1258], 1
je 0x100a423
push 0x1005d28
jmp 0x100a258
mov edi, dword [ebp - 0x1244]
mov eax, dword [ebp - 0x1240]
mov esi, dword [eax]
add edi, 0x18
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x1244]
xor edi, edi
push edi
push esi
add esi, 0x78
push esi
push edi
push edi
call dword [sym.imp.ADVAPI32.dll_ControlTraceW]
mov dword [ebp - 0x123c], eax
cmp eax, edi
mov eax, dword [ebp - 0x1244]
je 0x100a4a6
lea edx, [eax + 0x18]
push 4
pop ecx
mov edi, edx
mov esi, 0x1001d24
xor ebx, ebx
repe cmpsd dword [esi], dword es:[edi]
je 0x100a4a6
push 4
mov edi, edx
pop ecx
mov esi, 0x1001d34
xor edx, edx
repe cmpsd dword [esi], dword es:[edi]
je 0x100a4a6
push dword [ebp - 0x123c]
call fcn.01006be1
push eax
push dword [ebp - 0x123c]
push 0x1005cb8
call dword [sym.imp.msvcrt.dll_wprintf]
add esp, 0xc
jmp 0x100b0a0
mov ecx, dword [eax + 8]
mov edi, dword [sym.imp.msvcrt.dll_wprintf]
mov dword [ebp - 0x1260], ecx
mov eax, dword [eax + 0xc]
mov dword [ebp - 0x125c], eax
mov ebx, dword [ebp - 0x1258]
xor esi, esi
cmp ebx, esi
jle 0x100a62c
cmp dword [ebp - 0x1250], esi
jne 0x100a634
cmp dword [ebp - 0x1274], esi
mov eax, 0x1005ca4
jne 0x100a4ec
mov eax, 0x1005c90
push dword [ebp - 0x125c]
push dword [ebp - 0x1260]
push eax
push 0x1005c60
call edi
add esp, 0x10
cmp ebx, esi
jbe 0x100b0a0
mov ebx, dword [ebp - 0x1240]
cmp word [ebp - 0x124c], 0xa
jne 0x100a56c
mov eax, dword [0x1011a28]
test eax, eax
je 0x100a56c
movzx ecx, byte [ebp - 0x1290]
push 0
push dword [ebp - 0x1278]
push dword [ebp - 0x1284]
push dword [ebp - 0x1288]
push dword [ebp - 0x127c]
push dword [ebp - 0x1280]
push ecx
push dword [ebp - 0x1274]
lea ecx, [ebp - 0x1114]
push dword [ebp - 0x125c]
push dword [ebp - 0x1260]
push ecx
push dword [ebx + esi*4]
call eax
jmp 0x100a593
push dword [ebp - 0x125c]
push dword [ebp - 0x1260]
push dword [ebx + esi*4]
push dword [ebp - 0x1290]
push dword [ebp - 0x1298]
push dword [ebp - 0x1274]
call dword [sym.imp.ADVAPI32.dll_EnableTrace]
cmp eax, 0x10dd
mov dword [ebp - 0x123c], eax
jne 0x100a5cc
cmp dword [ebp - 0x1274], 0
mov eax, 0x1005c50
jne 0x100a5b3
mov eax, 0x1005c40
push eax
push 0x1005bf8
call edi
push 0x1005bc4
call edi
add esp, 0xc
and dword [ebp - 0x123c], 0
cmp dword [ebp - 0x123c], 0
jne 0x100a5e7
inc esi
cmp esi, dword [ebp - 0x1258]
jb 0x100a511
jmp 0x100b0a0
cmp dword [ebp - 0x1274], 0
mov eax, 0x1005c50
jne 0x100a5fa
mov eax, 0x1005c40
push esi
push eax
push 0x1005b80
call edi
push dword [ebp - 0x123c]
push 0x1005b44
call edi
add esp, 0x14
push dword [ebp - 0x123c]
call fcn.01006be1
push eax
push 0x1004f48
call edi
pop ecx
jmp 0x100aa55
cmp dword [ebp - 0x1250], esi
je 0x100a642
cmp ebx, esi
jle 0x100a644
push 0x1005ad0
jmp 0x100a258
cmp ebx, esi
jne 0x100b0a0
cmp word [ebp - 0x124c], 5
jne 0x100b0a0
push 0x1005a70
jmp 0x100a258
and dword [ebp - 0x1260], 0
and dword [ebp - 0x125c], 0
test word [esi + 0x40], 0x800
je 0x100a6a0
cmp dword [ebp - 0x1258], 1
jne 0x100a253
mov edi, dword [ebp - 0x1244]
mov eax, dword [ebp - 0x1240]
mov esi, dword [eax]
add edi, 0x18
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x1244]
cmp dword [ebp - 0x1250], 3
jne 0x100a6bf
push 0x10040b0
lea eax, [ebp - 0x126c]
push eax
lea eax, [esi + 0x28]
push eax
push esi
call fcn.01007854
cmp dword [ebp - 0x1258], 0
mov ebx, dword [sym.imp.ADVAPI32.dll_ControlTraceW]
jle 0x100a7d3
mov eax, dword [ebp - 0x1240]
mov eax, dword [eax]
push 4
pop ecx
mov edi, eax
mov esi, 0x1001d24
xor edx, edx
repe cmpsd dword [esi], dword es:[edi]
je 0x100a7d3
push 4
mov edi, eax
pop ecx
mov esi, 0x1001d34
xor eax, eax
repe cmpsd dword [esi], dword es:[edi]
je 0x100a7d3
mov eax, dword [ebp - 0x1244]
test word [eax + 0x40], 0x800
push edx
push eax
je 0x100a765
add eax, 0x78
push eax
push dword [ebp - 0x125c]
push dword [ebp - 0x1260]
call ebx
test eax, eax
mov dword [ebp - 0x123c], eax
jne 0x100b0a0
mov eax, dword [ebp - 0x1244]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x1260], ecx
mov eax, dword [eax + 0xc]
push eax
push ecx
mov dword [ebp - 0x125c], eax
mov eax, dword [ebp - 0x1240]
push dword [eax]
push 0
push 0x800
push 0
call dword [sym.imp.ADVAPI32.dll_EnableTrace]
jmp 0x100a7d3
add eax, 0x78
push eax
push dword [ebp - 0x125c]
push dword [ebp - 0x1260]
call ebx
cmp eax, 0x1069
mov dword [ebp - 0x123c], eax
je 0x100b0a0
mov eax, dword [ebp - 0x1244]
mov ecx, dword [eax + 8]
mov dword [ebp - 0x1260], ecx
mov eax, dword [eax + 0xc]
xor esi, esi
cmp dword [ebp - 0x1258], esi
mov dword [ebp - 0x125c], eax
jbe 0x100a7d3
xor edi, edi
push dword [ebp - 0x125c]
mov eax, dword [ebp - 0x1240]
push dword [ebp - 0x1260]
push dword [eax + esi*4]
push edi
push edi
push edi
call dword [sym.imp.ADVAPI32.dll_EnableTrace]
inc esi
cmp esi, dword [ebp - 0x1258]
jb 0x100a7ac
mov eax, dword [ebp - 0x1244]
push 1
push eax
add eax, 0x78
push eax
push dword [ebp - 0x125c]
push dword [ebp - 0x1260]
call ebx
jmp 0x100a338
lea ebx, [esi + 0x78]
push ebx
lea edi, [esi + 0x28]
push dword [edi]
push esi
push 0
jmp 0x100a316
mov esi, 0x41e00
push esi
call dword [sym.imp.msvcrt.dll_malloc]
mov edi, eax
test edi, edi
pop ecx
mov dword [ebp - 0x128c], edi
jne 0x100a82c
mov dword [ebp - 0x123c], 0xe
jmp 0x100b0a0
push esi
push 0
push edi
call sub.msvcrt.dll_memset
add esp, 0xc
mov eax, edi
xor ecx, ecx
mov dword [eax], 0x1078
mov dword [eax + 0x6c], 0x878
mov dword [eax + 0x70], 0x78
mov dword [ebp + ecx*4 - 0x104], eax
add eax, dword [eax]
inc ecx
cmp ecx, 0x40
jb 0x100a83c
cmp byte [0x10116a0], 0
lea eax, [ebp - 0x1254]
push eax
lea eax, [ebp - 0x104]
je 0x100a879
push 0x40
jmp 0x100a87b
push 0x20
push eax
call dword [sym.imp.ADVAPI32.dll_QueryAllTracesW]
test eax, eax
mov dword [ebp - 0x123c], eax
jne 0x100aa49
and dword [ebp - 0x1250], eax
cmp dword [ebp - 0x1254], eax
jbe 0x100aa49
xor esi, esi
cmp dword [ebp - 0x1268], esi
mov dword [ebp - 0x1240], 0x3f
je 0x100a9cd
mov eax, dword [ebp - 0x1250]
mov eax, dword [ebp + eax*4 - 0x104]
mov ebx, dword [eax + 0x70]
add ebx, eax
cmp dword [ebp - 0x1294], esi
push 0x79
pop edi
jne 0x100a93d
cmp word [ebp - 0x1240], 0x6e
je 0x100a943
push ebx
push 0x1005a10
call dword [sym.imp.msvcrt.dll_wprintf]
push 1
lea eax, [ebp - 0x1240]
push eax
push 0x1005a08
call fcn.0100b805
add esp, 0x14
cmp eax, esi
je 0x100a92a
cmp eax, 0xffffffff
je 0x100a92a
cmp word [ebp - 0x1240], 0x59
je 0x100a935
cmp word [ebp - 0x1240], 0x4e
jne 0x100a92a
mov dword [ebp - 0x1240], 0x6e
cmp word [ebp - 0x1240], di
jne 0x100a8d7
jmp 0x100a94c
mov dword [ebp - 0x1240], edi
jmp 0x100a94c
mov dword [ebp - 0x1240], edi
cmp word [ebp - 0x1240], di
jne 0x100a9bf
mov eax, dword [ebp - 0x1250]
mov eax, dword [ebp + eax*4 - 0x104]
push 4
lea esi, [eax + 0x18]
pop ecx
mov edi, 0x1001cf4
xor edx, edx
repe cmpsd dword [esi], dword es:[edi]
je 0x100a995
mov ecx, dword [eax + 8]
mov dword [ebp - 0x1260], ecx
mov edx, dword [eax + 0xc]
push edx
push ecx
lea ecx, [eax + 0x18]
push ecx
mov dword [ebp - 0x125c], edx
mov eax, dword [eax + 0x40]
push 0
and eax, 0x800
push eax
push 0
call dword [sym.imp.ADVAPI32.dll_EnableTrace]
mov eax, dword [ebp - 0x1250]
xor esi, esi
inc esi
push esi
push dword [ebp + eax*4 - 0x104]
push ebx
push 0
push 0
call dword [sym.imp.ADVAPI32.dll_ControlTraceW]
push ebx
mov dword [ebp - 0x123c], eax
push 0x10059c0
jmp 0x100a9c5
push ebx
push 0x1005948
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
pop ecx
mov edi, dword [ebp - 0x1250]
cmp edi, 1
jne 0x100aa15
mov eax, dword [ebp - 0x1244]
mov ecx, 0x10045ec
add eax, 0x78
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x100aa0c
test dx, dx
je 0x100aa08
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x100aa0c
add eax, 4
add ecx, 4
test dx, dx
jne 0x100a9e6
xor eax, eax
jmp 0x100aa11
sbb eax, eax
sbb eax, 0xffffffff
test eax, eax
je 0x100aa36
push esi
push dword [ebp - 0x123c]
push 0
push dword [ebp + edi*4 - 0x104]
call fcn.0100833d
push 0x1001f34
call dword [sym.imp.msvcrt.dll_wprintf]
pop ecx
inc edi
cmp edi, dword [ebp - 0x1254]
mov dword [ebp - 0x1250], edi
jb 0x100a8a2
push dword [ebp - 0x128c]
call dword [sym.imp.msvcrt.dll_free]
pop ecx
jmp 0x100b0a0
test word [esi + 0x40], 0x800
je 0x100aa91
cmp dword [ebp - 0x1258], 1
jne 0x100a253
mov edi, dword [ebp - 0x1244]
mov eax, dword [ebp - 0x1240]
mov esi, dword [eax]
add edi, 0x18
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0x1244]
mov edi, dword [sym.imp.msvcrt.dll_wprintf]
xor ebx, ebx
cmp word [ebp - 0x124c], bx
jne 0x100aad8
cmp dword [ebp - 0x1250], 3
jne 0x100aabb
push 0x10040b0
lea eax, [ebp - 0x126c]
push eax
lea eax, [esi + 0x28]
push eax
push esi
call fcn.01007854
push ebx
push esi
add esi, 0x78
push esi
push dword [ebp - 0x125c]
push dword [ebp - 0x1260]
call dword [sym.imp.ADVAPI32.dll_ControlTraceW]
jmp 0x100ab74
cmp word [ebp - 0x124c], 3
jne 0x100ab14
cmp dword [ebp - 0x1250], 3
jne 0x100ab01
push 0x10040b0
lea eax, [ebp - 0x126c]
push eax
lea eax, [esi + 0x28]
push eax
push esi
call fcn.01007854
cmp byte [0x10116a1], 1
jne 0x100ab10
push esi
call fcn.01008133
push 2
jmp 0x100aabc
cmp word [ebp - 0x124c], 7
jne 0x100b0a0
cmp dword [ebp - 0x1250], 3
jne 0x100ab41
push 0x10040b0
lea eax, [ebp - 0x126c]
push eax
lea eax, [esi + 0x28]
push eax
push esi
call fcn.01007854
mov eax, dword [0x1011a20]
cmp eax, ebx
jne 0x100ab61
push 0x10058e8
call edi
pop ecx
mov dword [ebp - 0x123c], 0x57
jmp 0x100b0ca
push esi
add esi, 0x78
push esi
push dword [ebp - 0x125c]
push dword [ebp - 0x1260]
call eax
cmp eax, 0x1069
mov dword [ebp - 0x123c], eax
jne 0x100b0a0
cmp dword [ebp - 0x1250], 3
jne 0x100b0a0
push 0x10058ac
call edi
pop ecx
mov dword [ebp - 0x123c], ebx
jmp 0x100b0a0
mov eax, dword [0x1011a2c]
xor ecx, ecx
cmp eax, ecx
mov dword [ebp - 0x1240], ecx
jne 0x100abc0
push 0x1005828
jmp 0x100a258
cmp dword [ebp - 0x1258], 1
jne 0x100ae18
lea edx, [ebp - 0x1240]
push edx
push ecx
push ecx
push 0x10
lea ecx, [ebp - 0x1114]
push ecx
push 1
call eax
cmp eax, 0x7a
mov dword [ebp - 0x123c], eax
jne 0x100ae0d
push dword [ebp - 0x1240]
call dword [sym.imp.msvcrt.dll_malloc]
mov ebx, eax
test ebx, ebx
pop ecx
mov dword [ebp - 0x1268], ebx
jne 0x100ac26
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
mov dword [ebp - 0x123c], eax
push 0x10057a0
call edi
pop ecx
pop ecx
jmp 0x100b0e6
lea eax, [ebp - 0x1240]
push eax
push dword [ebp - 0x1240]
lea eax, [ebp - 0x1114]
push ebx
push 0x10
push eax
push 1
call dword [0x1011a2c]
test eax, eax
mov dword [ebp - 0x123c], eax
je 0x100ac66
push eax
push 0x1005758
call edi
push ebx
call dword [sym.imp.msvcrt.dll_free]
add esp, 0xc
jmp 0x100b0e6
push dword [ebx]
lea eax, [ebp - 0x1114]
push eax
push 0x80
lea eax, [ebp - 0x104]
push eax
call fcn.010072c2
push eax
push 0x1005710
call edi
add esp, 0xc
cmp dword [ebx], 0
jbe 0x100af23
push 0x1005688
call edi
pop ecx
lea esi, [ebx + 8]
mov dword [ebp - 0x1250], 1
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x100ace5
cmp dword [esi + 4], 0
mov edx, 0x1004f44
ja 0x100acc0
mov edx, 0x100566c
test byte [esi + 0xc], 1
mov eax, 0x100565c
jne 0x100acd0
mov eax, 0x1004f44
push edx
push ecx
push eax
push dword [ebp - 0x1250]
push 0x1005600
call edi
add esp, 0x14
jmp 0x100ad44
mov eax, dword [esi + 0xc]
test al, 2
mov ecx, 0x1004f44
je 0x100ad19
cmp dword [esi + 4], 0
ja 0x100acfc
mov ecx, 0x100566c
test al, 1
mov eax, 0x100565c
jne 0x100ad0a
mov eax, 0x1004f44
push ecx
push eax
push dword [ebp - 0x1250]
push 0x10055b0
jmp 0x100ad3f
cmp dword [esi + 4], 0
ja 0x100ad24
mov ecx, 0x100566c
test al, 1
mov eax, 0x100565c
jne 0x100ad32
mov eax, 0x1004f44
push ecx
push eax
push dword [ebp - 0x1250]
push 0x1005568
call edi
add esp, 0x10
inc dword [ebp - 0x1250]
cmp dword [esi + 4], 0
jbe 0x100adfc
push 0x10054e0
call edi
test byte [esi + 0xc], 1
pop ecx
je 0x100ad72
push 0x1005498
call edi
mov dword [esp], 0x1005450
jmp 0x100ad80
push 0x10053e0
call edi
mov dword [esp], 0x1005370
call edi
pop ecx
push 0x1005688
call edi
and dword [ebp - 0x1248], 0
cmp dword [esi + 4], 0
pop ecx
jbe 0x100adee
lea ebx, [esi + 0x20]
test byte [esi + 0xc], 1
movzx eax, byte [ebx - 0xc]
je 0x100adbc
push dword [ebx + 4]
push dword [ebx]
push eax
movzx eax, word [ebx - 0xa]
push eax
push 0x1005330
call edi
add esp, 0x14
jmp 0x100adda
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
push dword [ebx - 8]
push eax
movzx eax, word [ebx - 0xa]
push eax
push 0x10052e0
call edi
add esp, 0x20
add ebx, 0x20
inc dword [ebp - 0x1248]
mov eax, dword [ebp - 0x1248]
cmp eax, dword [esi + 4]
jb 0x100ad9b
push 0x1001f34
call edi
mov ebx, dword [ebp - 0x1268]
pop ecx
mov eax, dword [esi]
test eax, eax
je 0x100af23
add esi, eax
jmp 0x100aca9
push eax
push 0x1005758
jmp 0x100ac1d
cmp dword [ebp - 0x1270], ecx
mov dword [ebp - 0x1254], ecx
je 0x100ae30
mov dword [ebp - 0x1254], 2
lea edx, [ebp - 0x1240]
push edx
push ecx
push ecx
push ecx
push ecx
push dword [ebp - 0x1254]
call eax
cmp eax, 0x7a
mov dword [ebp - 0x123c], eax
jne 0x100ae0d
push dword [ebp - 0x1240]
call dword [sym.imp.msvcrt.dll_malloc]
mov ebx, eax
test ebx, ebx
pop ecx
mov dword [ebp - 0x1268], ebx
je 0x100ac0b
lea eax, [ebp - 0x1240]
push eax
push dword [ebp - 0x1240]
push ebx
push 0
push 0
push dword [ebp - 0x1254]
call dword [0x1011a2c]
test eax, eax
mov dword [ebp - 0x123c], eax
jne 0x100ac4f
cmp dword [ebp - 0x1270], eax
mov dword [ebp - 0x1254], ebx
mov eax, 0x10052a8
jne 0x100aeaf
mov eax, 0x1004f44
push eax
push 0x1005294
call edi
mov esi, 0x1005218
push esi
call edi
add esp, 0xc
xor ebx, ebx
test dword [ebp - 0x1240], 0xfffffff0
jbe 0x100af06
push dword [ebp - 0x1254]
lea eax, [ebp - 0x104]
push 0x80
push eax
call fcn.010072c2
push eax
push 0x100520c
call edi
add dword [ebp - 0x1254], 0x10
mov eax, dword [ebp - 0x1240]
inc ebx
shr eax, 4
cmp ebx, eax
pop ecx
pop ecx
jb 0x100aed0
push esi
call edi
mov eax, dword [ebp - 0x1240]
shr eax, 4
push eax
push 0x10051b0
call edi
mov ebx, dword [ebp - 0x1268]
add esp, 0xc
push ebx
jmp 0x100aa4f
cmp dword [0x1011a24], 0
mov dword [ebp - 0x1268], 0xa
jne 0x100af46
push 0x1005138
jmp 0x100a258
mov ebx, 0x190
push ebx
call dword [sym.imp.msvcrt.dll_malloc]
jmp 0x100afbd
push ebx
push 0
push esi
call sub.msvcrt.dll_memset
mov edx, dword [ebp - 0x1268]
add esp, 0xc
xor ecx, ecx
test edx, edx
lea eax, [esi + edx*4]
jbe 0x100af7e
mov dword [esi + ecx*4], eax
add eax, 0x24
inc ecx
cmp ecx, dword [ebp - 0x1268]
jb 0x100af6f
lea eax, [ebp - 0x1270]
push eax
push dword [ebp - 0x1268]
push esi
call dword [0x1011a24]
cmp eax, 0xea
mov dword [ebp - 0x123c], eax
jne 0x100afc9
mov ebx, dword [ebp - 0x1270]
push esi
mov dword [ebp - 0x1268], ebx
call dword [sym.imp.msvcrt.dll_free]
imul ebx, ebx, 0x28
push ebx
call dword [sym.imp.msvcrt.dll_malloc]
pop ecx
mov esi, eax
test esi, esi
pop ecx
jne 0x100af54
jmp 0x100a81d
push 0x10050c0
call edi
mov dword [esp], 0x1005218
call edi
xor ebx, ebx
cmp dword [ebp - 0x1270], ebx
pop ecx
jbe 0x100b027
mov eax, dword [esi + ebx*4]
cmp byte [eax + 0x20], 0
mov ecx, 0x10050b0
jne 0x100aff7
mov ecx, 0x10050a4
push dword [eax + 0x1c]
push dword [eax + 0x18]
push dword [eax + 0x14]
push ecx
push eax
push 0x400
lea eax, [ebp - 0x1104]
push eax
call fcn.010072c2
push eax
push 0x100506c
call edi
add esp, 0x18
inc ebx
cmp ebx, dword [ebp - 0x1270]
jb 0x100afe4
push esi
jmp 0x100aa4f
lea ebx, [esi + 0x78]
push ebx
lea edi, [esi + 0x28]
push dword [edi]
push esi
push 1
call fcn.0100731d
test eax, eax
mov dword [ebp - 0x123c], eax
jne 0x100b0a0
mov eax, dword [ebp - 0x1280]
mov ecx, dword [ebp - 0x127c]
mov edx, eax
or edx, ecx
jne 0x100b062
mov eax, dword [ebp - 0x1298]
xor ecx, ecx
push dword [ebp - 0x1290]
push dword [ebp - 0x1284]
push dword [ebp - 0x1288]
push ecx
push eax
push dword [ebp - 0x1278]
push dword [ebp - 0x1258]
push dword [ebp - 0x1240]
push ebx
call fcn.01007c28
jmp 0x100a329
push 0x1005034
call edi
pop ecx
call fcn.01006fcf
mov eax, dword [ebp - 0x124c]
cmp ax, 6
je 0x100b0e0
cmp ax, 8
je 0x100b0e0
cmp ax, 0xb
je 0x100b0e0
cmp ax, 4
je 0x100b0e0
cmp ax, 0xc
je 0x100b0e0
mov esi, dword [ebp - 0x1244]
push 1
push dword [ebp - 0x123c]
push dword [ebp - 0x126c]
push esi
call fcn.0100833d
jmp 0x100b0e6
mov esi, dword [ebp - 0x1244]
push dword [ebp - 0x123c]
call dword [sym.imp.KERNEL32.dll_SetLastError]
cmp dword [ebp - 0x12ac], 0
je 0x100b107
push dword [ebp - 0x12ac]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
push esi
mov esi, dword [sym.imp.msvcrt.dll_free]
call esi
push dword [ebp - 0x12a0]
call esi
mov eax, dword [0x1011a48]
test eax, eax
pop ecx
pop ecx
je 0x100b12a
push eax
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
mov eax, dword [ebp - 0x123c]
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0100b502
leave
ret