Function at 0x1007fb5
Capabilities:
Get common file path

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x32c
mov eax, dword [0x1020104]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push 0x10024a0
mov esi, ecx
call fcn.01005858
lea edi, [esi + 0x34]
xor ebx, ebx
pop ecx
cmp byte [edi], bl
jne 0x1007ff9
push 0x1002480
push ebx
push ebx
push 0x1002460
push 0xdb
jmp 0x10084f5
mov eax, dword [esi + 0x18]
cmp eax, ebx
jne 0x1008016
push 0x1002444
push ebx
push ebx
push 0x1002460
push 0xe0
jmp 0x10084f5
cmp byte [esi + 0x260], bl
je 0x10084e4
cmp byte [esi + 0x364], bl
je 0x10084e4
mov ecx, dword [eax]
push 0x10023f0
push eax
call dword [ecx + 0x40]
cmp eax, ebx
jge 0x1008053
push ebx
push eax
push 0x10023e0
push 0x1002460
push 0xec
jmp 0x10084f5
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
push edi
push eax
call dword [ecx + 0x44]
cmp eax, ebx
jge 0x1008077
push ebx
push eax
push 0x10023cc
push 0x1002460
push 0xf1
jmp 0x10084f5
mov edi, 0x104
push edi
lea eax, [ebp - 0x108]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
jne 0x10080ab
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x10023b8
push 0x1002460
push 0xf9
jmp 0x10084f5
lea eax, [ebp - 0x108]
push 0x5c
push eax
call fcn.0100e2d0
pop ecx
pop ecx
cmp eax, ebx
je 0x10084d1
push 0x10023a8
mov byte [eax + 1], bl
push edi
lea eax, [ebp - 0x108]
push eax
call fcn.01006ad3
lea eax, [ebp - 0x108]
push eax
call fcn.0100d774
test eax, eax
jne 0x10080fe
push 0x1002384
push ebx
push ebx
push 0x1002460
push 0x107
jmp 0x10084f5
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
lea edx, [ebp - 0x108]
push edx
push eax
call dword [ecx + 0x64]
push ebx
cmp eax, ebx
jge 0x1008128
push eax
push 0x1002374
push 0x1002460
push 0x10c
jmp 0x10084f5
lea eax, [ebp - 0x32c]
push eax
call fcn.0100cd51
test eax, eax
je 0x1008502
mov eax, dword [ebp - 0x328]
movzx ecx, ax
push ecx
shr eax, 0x10
push eax
mov eax, dword [ebp - 0x32c]
movzx ecx, ax
push ecx
shr eax, 0x10
push eax
push 0x1002354
call fcn.01005858
add esp, 0x14
lea eax, [ebp - 0x32c]
push eax
lea eax, [ebp - 0x324]
push eax
mov dword [ebp - 0x324], 0x40009
mov dword [ebp - 0x320], 0x388
call fcn.0100622f
cmp eax, 1
je 0x1008489
cmp eax, ebx
je 0x1008489
lea eax, [ebp - 0x32c]
push eax
lea eax, [ebp - 0x324]
push eax
mov dword [ebp - 0x324], 0x40008
mov dword [ebp - 0x320], 0x1032a
call fcn.0100622f
cmp eax, 2
jne 0x10081f4
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
push ebx
push 1
push 0x1002344
push eax
call dword [ecx + 0x30]
cmp eax, ebx
jge 0x10081f4
push ebx
push eax
push 0x1002338
push 0x1002460
push 0x146
jmp 0x10084f5
call fcn.01007437
test eax, eax
je 0x100826b
push edi
lea eax, [ebp - 0x310]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
test eax, eax
jne 0x100822b
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x1002320
push 0x1002460
push 0x150
jmp 0x10084f5
lea eax, [ebp - 0x310]
push eax
push 0x1002304
call fcn.01006d63
test eax, eax
jne 0x100826b
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
push ebx
push 1
push 0x10022f0
push eax
call dword [ecx + 0x30]
cmp eax, ebx
jge 0x100826b
push ebx
push eax
push 0x1002338
push 0x1002460
push 0x155
jmp 0x10084f5
call fcn.0100d611
push eax
lea eax, [esi + 0x260]
push eax
push 0x10022e8
lea eax, [ebp - 0x20c]
push edi
push eax
call fcn.01006b2d
lea eax, [ebp - 0x20c]
push eax
push 0x10022d0
call fcn.01005858
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
add esp, 0x1c
push ebx
xor edi, edi
inc edi
push edi
lea edx, [ebp - 0x20c]
push edx
push eax
call dword [ecx + 0x30]
cmp eax, ebx
jge 0x10082cd
push ebx
push eax
push 0x1002338
push 0x1002460
push 0x160
jmp 0x10084f5
mov eax, dword [esi + 0x18]
mov ecx, dword [eax]
lea edx, [esi + 0x144]
push edx
lea edx, [ebp - 0x20c]
push edx
push eax
call dword [ecx + 0x3c]
cmp eax, ebx
jge 0x10082fe
push ebx
push eax
push 0x10022bc
push 0x1002460
push 0x165
jmp 0x10084f5
mov eax, dword [esi + 0x18]
lea edx, [ebp - 0x318]
push edx
mov dword [ebp - 0x318], ebx
mov dword [ebp - 0x314], ebx
mov ecx, dword [eax]
push eax
call dword [ecx + 0x68]
push ebx
cmp eax, ebx
jge 0x1008334
push eax
push 0x10022ac
push 0x1002460
push 0x16c
jmp 0x10084f5
mov eax, dword [ebp - 0x318]
push ebx
lea edx, [ebp - 0x31c]
push edx
mov dword [ebp - 0x31c], ebx
mov ecx, dword [eax]
push eax
call dword [ecx + 0xc]
cmp eax, ebx
jge 0x10083a5
push ebx
push eax
push 0x1002298
push 0x1002460
push 0x17f
jmp 0x100846e
mov eax, dword [ebp - 0x314]
push dword [ebp - 0x314]
mov eax, dword [eax]
call dword [eax + 0x80]
cmp eax, edi
jne 0x10083a5
mov eax, dword [ebp - 0x314]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x78]
test eax, eax
je 0x10083a5
mov eax, dword [ebp - 0x314]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x88]
add dword [esi + 0x14c], eax
mov eax, dword [ebp - 0x31c]
mov ecx, dword [eax]
lea edx, [ebp - 0x314]
push edx
push eax
call dword [ecx + 0xc]
cmp dword [ebp - 0x314], ebx
jne 0x1008368
mov eax, dword [ebp - 0x31c]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
cmp dword [esi + 0x14c], ebx
jne 0x10083da
mov dword [esi + 0x158], edi
mov eax, dword [ebp - 0x318]
mov ecx, dword [eax]
lea edx, [ebp - 0x314]
push edx
lea edx, [ebp - 0x20c]
push edx
push eax
call dword [ecx + 0x10]
cmp eax, ebx
jl 0x100845d
mov eax, dword [ebp - 0x314]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x30]
lea ebx, [esi + 0x154]
push ebx
mov dword [esi + 0x148], eax
mov eax, dword [ebp - 0x314]
mov ecx, dword [eax]
lea edi, [esi + 0x150]
push edi
push eax
call dword [ecx + 0x20]
movzx eax, word [ebx]
push eax
movzx eax, word [esi + 0x156]
push eax
movzx eax, word [edi]
push eax
movzx eax, word [esi + 0x152]
push eax
push 0x100227c
call fcn.01005858
mov eax, dword [ebp - 0x318]
mov ecx, dword [eax]
add esp, 0x14
push eax
call dword [ecx + 8]
xor eax, eax
inc eax
jmp 0x1008504
push ebx
push eax
push 0x100226c
push 0x1002460
push 0x18e
push 0x10019f8
call fcn.010059aa
mov eax, dword [ebp - 0x318]
mov ecx, dword [eax]
add esp, 0x18
push eax
call dword [ecx + 8]
jmp 0x1008502
push edi
lea eax, [esi + 0x15c]
push eax
push 0x1790
push ebx
call dword [sym.imp.USER32.dll_LoadStringA]
test eax, eax
jne 0x10084ba
push ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push 0x1002260
push 0x1002460
push 0x137
jmp 0x10084f5
lea eax, [esi + 0x15c]
mov dword [esi + 0x144], eax
xor eax, eax
inc eax
mov dword [esi + 0x158], eax
jmp 0x1008504
push 0x100224c
push ebx
push ebx
push 0x1002460
push 0x101
jmp 0x10084f5
push 0x100222c
push ebx
push ebx
push 0x1002460
push 0xe5
push 0x10019f8
call fcn.010059aa
add esp, 0x18
xor eax, eax
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0100e2ad
leave
ret