Function at 0x10019590
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffde0
mov ecx, dword [ebp + 8]
push ebx
lea edx, [eax + 0x7e8]
push esi
mov esi, dword [ebp - 4]
mov ebx, eax
push edi
mov dword [ebp - 0x10], ebx
mov dword [ebp - 0x14], edx
cmp eax, edx
ja 0x1001976e
mov edi, dword [ebp - 0xc]
jmp 0x100195c0
cmp ebx, 0x2616
ja 0x100196f1
je 0x10019677
cmp ebx, 0x178c
ja 0x10019646
je 0x10019637
mov eax, ebx
sub eax, 0x1702
je 0x10019605
sub eax, 0x2e
je 0x100195f8
sub eax, 0x2e
je 0x10019c44
jmp case.default.0x100198aa
mov eax, dword [ecx]
mov edx, dword [eax + 0x1c]
mov dword [ebp - 0x18], edx
jmp case.default.0x100198aa
mov eax, dword [ecx]
test eax, eax
je 0x1001961b
cmp dword [eax + 0x1c], 0
je 0x1001961b
cmp dword [eax + 0x24], 0
jne case.default.0x100198aa
mov eax, 0x4676
cmp eax, eax
je 0x10019cbf
sub eax, 0xffffffb4
cmp eax, 0x4676
jbe 0x10019622
jmp case.default.0x100198aa
mov eax, dword [ecx]
xor esi, esi
mov dword [eax + 0x1c], esi
mov dword [ebp - 4], esi
jmp case.default.0x100198aa
mov eax, ebx
sub eax, 0x17ba
je 0x1001976e
sub eax, 0xe00
je 0x1001966d
sub eax, 0x2e
jne case.default.0x100198aa
xor edi, edi
mov dword [ebp - 0xc], edi
jmp case.default.0x100198aa
mov edx, dword [ecx]
mov dword [ebp - 8], edx
jmp case.default.0x100198aa
mov eax, dword [ebp + 0x10]
mov edx, dword [eax]
cmp edi, edx
jae 0x100196e7
cmp dword [ebp - 8], 4
jae 0x100196e7
mov ecx, 0x397
cmp ecx, ecx
jne 0x100196d5
cmp dword [ebp - 8], 2
mov eax, dword [ebp + 0xc]
mov al, byte [edi + eax]
sbb edi, edi
and edi, 0xffffff01
movzx ebx, al
sub edi, 0xffffff01
cmp ebx, edi
jne 0x100196b3
inc dword [ebp - 8]
jmp 0x100196cb
or al, al
je 0x100196c0
mov dword [ebp - 8], 0
jmp 0x100196cb
mov eax, 4
sub eax, dword [ebp - 8]
mov dword [ebp - 8], eax
mov edi, dword [ebp - 0xc]
mov ebx, dword [ebp - 0x10]
inc edi
mov dword [ebp - 0xc], edi
add ecx, 0xa
cmp ecx, 0x397
jbe 0x1001968d
mov ecx, dword [ebp + 8]
cmp edi, edx
jb 0x10019680
mov edx, dword [ebp - 8]
mov dword [ecx], edx
jmp case.default.0x100198aa
cmp ebx, 0x4666
ja 0x10019c77
je 0x1001976e
mov eax, ebx
sub eax, 0x2644
je 0x10019c2d
sub eax, 0x1fc6
je 0x10019726
sub eax, 0x2e
jne case.default.0x100198aa
xor esi, esi
mov dword [ebp - 4], esi
jmp case.default.0x100198aa
cmp ecx, 0x10d
ja 0x10019894
je 0x10019bfa
lea eax, [ecx - 0x11]
cmp eax, 0xe6
ja case.default.0x100198aa
movzx eax, byte [eax + 0x10019ddc]
jmp dword [eax*4 + 0x10019d7c]
mov ecx, 0x5c3a
lea esp, [esp]
mov eax, ecx
sub eax, 0x5c3a
je 0x10019777
sub eax, 0x31
jne 0x1001977f
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov esi, fcn.10005720
mov dword [ebp - 4], esi
sub ecx, 0xffffffcf
cmp ecx, 0x5c6b
jbe 0x10019760
mov ecx, 0x60be
nop
mov eax, ecx
sub eax, 0x60be
je 0x100197a0
sub eax, 0x5f
je 0x1001976e
jmp 0x100197a8
mov esi, 0x10009630
mov dword [ebp - 4], esi
sub ecx, 0xffffffa1
cmp ecx, 0x611d
jbe 0x10019790
mov ecx, 0x594d
jmp 0x100197c0
mov eax, ecx
sub eax, 0x594d
je 0x100197d0
sub eax, 0x53
je 0x1001976e
jmp 0x100197d8
mov esi, fcn.10007c80
mov dword [ebp - 4], esi
add ecx, 0x53
cmp ecx, 0x59a0
jbe 0x100197c0
mov ecx, 0x401e
jmp 0x100197f0
mov eax, ecx
sub eax, 0x401e
je 0x10019804
sub eax, 0xe
je 0x1001976e
jmp 0x1001980c
mov esi, 0x1000c150
mov dword [ebp - 4], esi
add ecx, 0xe
cmp ecx, 0x402c
jbe 0x100197f0
mov ecx, 0x3476
lea esp, [esp]
mov eax, ecx
sub eax, 0x3476
je 0x10019834
sub eax, 0x4a
je 0x1001976e
jmp 0x1001983c
mov esi, fcn.10005730
mov dword [ebp - 4], esi
sub ecx, 0xffffffb6
cmp ecx, 0x34c0
jbe 0x10019820
mov ecx, 0x2035
lea esp, [esp]
mov eax, ecx
sub eax, 0x2035
je 0x10019864
sub eax, 0x64
je 0x1001976e
jmp 0x1001986c
mov esi, fcn.10008100
mov dword [ebp - 4], esi
sub ecx, 0xffffff9c
cmp ecx, 0x2099
jbe 0x10019850
mov ecx, 0x3621
lea esp, [esp]
mov eax, ecx
sub eax, 0x3621
je 0x100198b1
sub eax, 0x61
je 0x1001976e
jmp 0x100198b9
lea eax, [ecx - 0x10f]
cmp eax, 0x3e
ja case.default.0x100198aa
movzx ecx, byte [eax + 0x10019eec]
jmp dword [ecx*4 + 0x10019ec4]
mov esi, fcn.10009260
mov dword [ebp - 4], esi
add ecx, 0x61
cmp ecx, 0x3682
jbe 0x10019880
mov eax, 0x4f7
cmp eax, eax
je 0x10019ccb
add eax, 0x1d
cmp eax, 0x4f7
jbe 0x100198cb
mov eax, 0x367d
cmp eax, eax
je 0x10019cd7
sub eax, 0xffffffa8
cmp eax, 0x367d
jbe 0x100198e2
mov eax, 0x2bf9
cmp eax, eax
je 0x10019ce3
add eax, 0x10
cmp eax, 0x2bf9
jbe 0x100198f9
mov ecx, 0x792c
mov edi, edi
mov eax, ecx
sub eax, 0x792c
je 0x10019924
sub eax, 0xa
je 0x1001976e
jmp 0x1001992c
mov esi, fcn.10005720
mov dword [ebp - 4], esi
add ecx, 0xa
cmp ecx, 0x7936
jbe 0x10019910
mov eax, 0x4556
cmp eax, eax
je 0x10019cef
sub eax, 0xfffffff4
cmp eax, 0x4556
jbe 0x1001993e
mov ecx, 0x7df4
mov eax, ecx
sub eax, 0x7df4
je 0x10019967
sub eax, 0x45
je 0x1001976e
jmp 0x1001996f
mov esi, fcn.100063b0
mov dword [ebp - 4], esi
sub ecx, 0xffffffbb
cmp ecx, 0x7e39
jbe 0x10019953
mov ecx, 0x72b8
nop
mov eax, ecx
sub eax, 0x72b8
je 0x10019994
sub eax, 6
je 0x1001976e
jmp 0x1001999c
mov esi, fcn.10008d50
mov dword [ebp - 4], esi
add ecx, 6
cmp ecx, 0x72be
jbe 0x10019980
mov ecx, 0x2ec1
lea esp, [esp]
mov eax, ecx
sub eax, 0x2ec1
je 0x100199c4
sub eax, 0x5b
je 0x1001976e
jmp 0x100199cc
mov esi, 0x10005c90
mov dword [ebp - 4], esi
add ecx, 0x5b
cmp ecx, 0x2f1c
jbe 0x100199b0
mov ecx, 0x26ca
lea esp, [esp]
mov eax, ecx
sub eax, 0x26ca
je 0x100199f4
sub eax, 0x28
je 0x1001976e
jmp 0x100199fc
mov esi, fcn.1000be80
mov dword [ebp - 4], esi
add ecx, 0x28
cmp ecx, 0x26f2
jbe 0x100199e0
mov eax, 0x5470
cmp eax, eax
je 0x10019cfb
add eax, 0x4a
cmp eax, 0x5470
jbe 0x10019a0e
mov ecx, 0x70a5
mov eax, ecx
sub eax, 0x70a5
je 0x10019a37
sub eax, 0x37
je 0x1001976e
jmp 0x10019a3f
mov esi, 0x1000cb40
mov dword [ebp - 4], esi
sub ecx, 0xffffffc9
cmp ecx, 0x70dc
jbe 0x10019a23
mov ecx, 0x3266
nop
mov eax, ecx
sub eax, 0x3266
je 0x10019a64
sub eax, 0x20
je 0x1001976e
jmp 0x10019a6c
mov esi, fcn.10007b80
mov dword [ebp - 4], esi
sub ecx, 0xffffffe0
cmp ecx, 0x3286
jbe 0x10019a50
mov eax, 0x7bfa
cmp eax, eax
je 0x10019d07
sub eax, 0xffffffc7
cmp eax, 0x7bfa
jbe 0x10019a7e
mov ecx, 0x6365
mov eax, ecx
sub eax, 0x6365
je 0x10019aa7
sub eax, 0x1d
je 0x1001976e
jmp 0x10019aaf
mov esi, 0x1000a7c0
mov dword [ebp - 4], esi
sub ecx, 0xffffffe3
cmp ecx, 0x6382
jbe 0x10019a93
mov eax, 0x2654
cmp eax, eax
je 0x10019d13
add eax, 7
cmp eax, 0x2654
jbe 0x10019ac1
mov ecx, 0x6b6d
mov eax, ecx
sub eax, 0x6b6d
je 0x10019aea
sub eax, 0x23
je 0x1001976e
jmp 0x10019af2
mov esi, fcn.10005730
mov dword [ebp - 4], esi
add ecx, 0x23
cmp ecx, 0x6b90
jbe 0x10019ad6
mov eax, 0x4341
cmp eax, eax
je 0x10019d1f
add eax, 0x3e
cmp eax, 0x4341
jbe 0x10019b04
mov eax, 0x703e
cmp eax, eax
je 0x10019d2b
add eax, 0x5c
cmp eax, 0x703e
jbe 0x10019b1b
mov ecx, 0x4b95
mov eax, ecx
sub eax, 0x4b95
je 0x10019b44
sub eax, 0x47
je 0x1001976e
jmp 0x10019b4c
mov esi, fcn.100056e0
mov dword [ebp - 4], esi
sub ecx, 0xffffffb9
cmp ecx, 0x4bdc
jbe 0x10019b30
mov eax, 0x5db3
cmp eax, eax
je 0x10019d37
sub eax, 0xffffffa7
cmp eax, 0x5db3
jbe 0x10019b5e
mov eax, 0x7beb
cmp eax, eax
je 0x10019d43
sub eax, 0xffffffb9
cmp eax, 0x7beb
jbe 0x10019b75
mov ecx, 0x72d0
lea ebx, [ebx]
mov eax, ecx
sub eax, 0x72d0
je 0x10019ba4
sub eax, 7
je 0x1001976e
jmp 0x10019bac
mov esi, fcn.10005660
mov dword [ebp - 4], esi
add ecx, 7
cmp ecx, 0x72d7
jbe 0x10019b90
mov eax, 0x4959
cmp eax, eax
je 0x10019d4f
add eax, 0xc
cmp eax, 0x4959
jbe 0x10019bbe
mov ecx, 0x1640
mov eax, ecx
sub eax, 0x1640
je 0x10019be7
sub eax, 0x39
je 0x1001976e
jmp 0x10019bef
mov esi, fcn.10005730
mov dword [ebp - 4], esi
add ecx, 0x39
cmp ecx, 0x1679
jbe 0x10019bd3
mov eax, 0x5e87
cmp eax, eax
je 0x10019d5b
add eax, 0x50
cmp eax, 0x5e87
jbe 0x10019c01
mov eax, 0x18f0
cmp eax, eax
je 0x10019d67
add eax, 0x58
cmp eax, 0x18f0
jbe 0x10019c18
jmp case.0x100198aa.273
mov eax, 0x1454
cmp eax, eax
je 0x10019d73
sub eax, 0xffffffd6
cmp eax, 0x1454
jbe 0x10019c34
mov edx, dword [ebp - 0x18]
mov ecx, dword [edx + 0x34]
test ecx, ecx
je 0x10019c60
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov edx, dword [eax + 0x24]
push ecx
mov ecx, dword [eax + 0x28]
push ecx
call edx
sub esp, 0xfffffff8
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 0x1c]
mov edx, dword [eax + 0x28]
mov eax, dword [eax + 0x24]
push ecx
push edx
call eax
sub esp, 0xfffffff8
jmp case.0x100198aa.273
mov eax, ebx
sub eax, 0x4bbe
je 0x10019c8b
sub eax, 0x2e
je 0x1001976e
jmp case.default.0x100198aa
push 0x104
lea ecx, [ebp - 0x220]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryW]
mov byte [ebp - 4], 0
mov esi, dword [ebp - 4]
mov ecx, dword [ebp + 8]
sub ebx, 0xffffffd2
mov dword [ebp - 0x10], ebx
cmp ebx, dword [ebp - 0x14]
jbe 0x100195c0
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xfffffffe
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, fcn.10008400
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, fcn.1000c590
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, fcn.10008380
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, fcn.10005720
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, fcn.100059e0
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x100099b0
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, fcn.10005720
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, fcn.1000c9d0
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, fcn.100056a0
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, fcn.10005730
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x100060a0
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x10007370
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, fcn.100082d0
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, fcn.10027380
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret