Function at 0x59a75c
Capabilities:
Get common file path

Disassembly:
push 0x1800480c
add ah, bh
cmpsb byte [esi], byte es:[edi]
pop ecx
add al, bh
add al, byte [eax]
add byte [eax], al
add byte [edx], cl
inc ebx
push 0x49646c69
insd dword es:[edi], dx
popal
cld
add al, byte [eax]
add byte [ecx], al
add byte [edx], cl
inc ebx
push 0x54646c69
imul ebp, dword [ebp + 0x65], 0x30072
add byte [edx], al
add byte [0x656e6150], cl
insb byte es:[edi], dx
push edx
arpl word gs:[ecx + ecx*2 + 0x6e], si
outsw dx, word [esi]
add al, 3
add byte [eax], al
add eax, dword [eax]
push es
dec esp
popal
bound esp, qword [ebp + 0x6c]
xor ecx, dword [eax]
add eax, dword [eax]
add byte [ebx], al
add byte [esi], al
dec esp
popal
bound esp, qword [ebp + 0x6c]
or al, 3
add byte [eax], al
add al, byte [eax]
adc byte [eax + 0x61], dl
outsb dx, byte [esi]
insb byte es:[edi], dx
push edx
arpl word gs:[esp + edx*2 + 0x6f], si
outsd dx, dword [esi]
insb byte es:[edi], dx
bound esp, qword [ecx + 0x72]
adc byte [ebx], al
add byte [eax], al
add eax, dword [eax]
or dword [ecx + 0x62], ecx
insb byte es:[edi], dx
push edx
arpl word gs:[esp + edx + 3], si
add byte [eax], al
add al, 0
or byte [eax + 0x58], bl
dec ecx
insd dword es:[edi], dx
popal
xor ebx, dword gs:[bx + si]
add eax, dword [eax]
add byte [ebx], al
add byte [esi], al
dec esp
popal
bound esp, qword [ebp + 0x6c]
xor dword [ebx + eax], ebx
add byte [eax], al
add al, 0
or byte [eax + 0x58], bl
dec ecx
insd dword es:[edi], dx
popal
xor dword gs:[bx + si], esp
add eax, dword [eax]
add byte [ebx], al
add byte [esi], al
dec esp
popal
bound esp, qword [ebp + 0x6c]
xor ah, byte [ebx + eax]
add byte [eax], al
add al, 0
or byte [eax + 0x58], bl
dec ecx
insd dword es:[edi], dx
popal
xor ch, byte gs:[bx + si]
add eax, dword [eax]
add byte [ebx], al
add byte [esi], al
dec esp
popal
bound esp, qword [ebp + 0x6c]
xor al, 0x2c
add eax, dword [eax]
add byte [eax + eax], al
or byte [eax + 0x58], bl
dec ecx
insd dword es:[edi], dx
popal
xor al, 0x30
add eax, dword [eax]
add byte [ebx], al
add byte [esi], al
dec esp
popal
bound esp, qword [ebp + 0x6c]
xor eax, 0x334
add byte [eax], al
adc ecx, dword [ecx + 0x6d]
popal
inc edx
outsd dx, dword [esi]
je 0x59a55d
outsd dx, dword [esi]
insd dword es:[edi], dx
inc ecx
insb byte es:[edi], dx
jo 0x59a557
popal
inc edx
popal
jb 0x59a52c
add eax, dword [eax]
add byte [0x6f500a00], al
jo 0x59a573
jo 0x59a54d
outsb dx, byte gs:[esi]
jne 0x59a535
cmp al, 3
add byte [eax], al
push es
add byte [edx], al
dec esi
xor dword [eax + 3], eax
add byte [eax], al
push es
add byte [edx], al
dec esi
xor al, byte [ebx + eax]
add byte [esi], al
add byte [edx], al
dec esi
xor ecx, dword [eax + 3]
add byte [eax], al
push es
add byte [edx], al
dec esi
xor al, 0x4c
add eax, dword [eax]
add byte [esi], al
push es
add byte [edx], al
dec esi
xor eax, 0x350
pop es
add byte [edx], cl
dec ecx
insd dword es:[edi], dx
popal
dec esp
imul esi, dword [ebx + 0x74], 0x35431
add byte [eax], cl
add byte [edx], cl
push ebx
popal
jbe 0x59a5b2
inc esp
imul esp, dword [ecx + 0x6c], 0x15676f
push ss
add byte [eax - 0x4c], bl
pop ecx
pop eax
mov ah, 0x59
add byte [edi], cl
inc ebx
push 0x54646c69
imul ebp, dword [ebp + 0x65], 0x6d695472
jb 0x59a586
add byte [esi + esi*4], al
pop ecx
add byte [ebx], dl
inc ebx
push 0x49646c69
insd dword es:[edi], dx
popal
dec ebp
outsd dx, dword [esi]
jne 0x59a5f3
dec ebp
outsd dx, dword [esi]
jbe 0x59a5ea
sbb al, byte [eax]
sar byte [edx + 0x43130059], 0x68
imul ebp, dword [esp + 0x49], 0x6567616d
dec ebp
add al, al
mov edx, 0x43130059
push 0x49646c69
insd dword es:[edi], dx
popal
dec ebp
outsd dx, dword [esi]
jne 0x59a60d
inc esp
outsd dx, dword [esi]
ja 0x59a60d
adc byte [eax], al
cld
mov ebx, 0x46090059
outsd dx, dword [esi]
jb 0x59a617
inc ebx
insb byte es:[edi], dx
outsd dx, dword [esi]
jae 0x59a614
adc dword [eax], eax
or byte [ecx + ebx*2 + 0x6f460a00], bh
mov esp, 0x460a0059
outsd dx, dword [esi]
jb 0x59a627
inc ebx
jb 0x59a622
popal
je 0x59a625
sbb byte [eax], al
and byte [ecx + ebx*2 + 0x68431100], bh
imul ebp, dword [esp + 0x49], 0x6567616d
dec ebp
outsd dx, dword [esi]
jne 0x59a648
push ebp
jo 0x59a5f0
add al, al
rcr dword [ecx], 0x10
dec esp
popal
bound esp, qword [ebp + 0x6c]
xor cl, byte [ebp + 0x6f]
jne 0x59a65c
inc ebp
inc ebp
outsb dx, byte [esi]
je 0x59a653
jb 0x59a607
add ah, bh
rcr dword [ecx], 0x10
pop ecx
add byte [eax], dl
dec esp
popal
bound esp, qword [ebp + 0x6c]
xor cl, byte [ebp + 0x6f]
jne 0x59a673
dec esp
popal
jbe 0x59a66b
adc al, byte [eax]
or al, 0xc2
add byte [edx + eax*8], cl
pop ecx
add byte [ebx], cl
dec esp
popal
bound esp, qword [ebp + 0x6c]
xor eax, 0x63696c43
insb byte es:[edi], dx
imul esp, dword [ebx + 0x6b], 0xaef80015
pop ecx
add byte [esi], cl
imul edx, dword [0x59aef800], 0
push cs
dec ebp
popal
jae 0x59a699
jb 0x59a68b
push ebx
push ebx
jne 0x59a68b
dec ecx
je 0x59a691
insd dword es:[edi], dx
adc al, byte [eax]
or al, 0xaf
pop ecx
add byte [ebx], cl
inc esp
jb 0x59a698
ja 0x59a68c
jne 0x59a69d
dec ecx
je 0x59a6a3
insd dword es:[edi], dx
push cs
add byte [edx + eax*8], ah
pop ecx
add byte [edi], al
dec esi
xor eax, 0x63696c43
imul ecx, dword [esi], 0
cmp al, 0xc2
inc ebx
insb byte es:[edi], dx
imul esp, dword [ebx + 0x6b], 0xc23c000e
pop ecx
add byte [edi], al
pop es
dec esi
xor al, 0x43
insb byte es:[edi], dx
imul esp, dword [ebx + 0x6b], 0xc5780019
add byte [eax - 0x3b], bh
pop ecx
add byte [edx], dl
inc ebx
push 0x49646c69
insd dword es:[edi], dx
popal
inc esp
inc esp
bound ebp, qword [ebx + eax*2 + 0x6c]
imul esp, dword [ebx + 0x6b], 0xc79c000e
pop ecx
add byte [edi], al
dec esi
xor eax, dword [ebx + 0x6c]
imul esp, dword [ebx + 0x6b], 0xc7b8000e
pop ecx
add byte [edi], al
dec esi
xor al, byte [ebx + 0x6c]
imul ecx, dword [esi], 0
pushfd
invalid
inc ebx
insb byte es:[edi], dx
imul esp, dword [ebx + 0x6b], 0xc828000e
pop ecx
add byte [edi], al
add byte [eax], ch
enter 0x59, 7
dec esi
xor dword [ebx + 0x6c], eax
inc ebx
insb byte es:[edi], dx
imul esp, dword [ebx + 0x6b], 0xca640012
pop ecx
imul edx, dword [edx], 0
retf 0x59
add byte [ebx], cl
dec esp
popal
bound esp, qword [ebp + 0x6c]
xor al, 0x43
insb byte es:[edi], dx
imul esp, dword [ebx + 0x6b], 0xca700012
pop ecx
add byte [ebx], cl
dec esp
popal
bound esp, qword [ebp + 0x6c]
xor al, byte [ebx + 0x6c]
imul esp, dword [ebx + 0x6b], 0xca7c0012
pop ecx
add byte [ebx], cl
dec esp
popal
bound esp, qword [ebp + 0x6c]
xor dword [ebx + 0x6c], eax
imul esp, dword [ebx + 0x6b], 0xca880013
pop ecx
add byte [esi + eax*2], cl
outsd dx, dword [esi]
jb 0x59a74c
dec ebx
jns 0x59a733
jb 0x59a74a
jae 0x59a75a
adc al, 0x54
inc ebx
popal
je 0x59a750
push 0x65726353
outsb dx, byte gs:[esi]
push ebx
push 0x6f46776f
jb 0x59a769
or dword [eax], eax
sbb al, 0x8a
inc ebx
add byte [eax + 0x3000438f], ah
xchg edx, eax
inc ebx
add byte [eax + 0x64], al
inc ebp
add al, dl
push esi
dec ecx
add byte [edi + ebx*2 + 0x47], bl
add byte [eax + 0x57], ah
inc edi
add al, al
das
inc esi
add byte [esi - 0x3f74ffbd], dl
sub byte [edi + 0x14070059], ah
push esp
inc ebx
popal
je 0x59a792
push 0x65726353
outsb dx, byte gs:[esi]
outsb dx, byte gs:[esi]
push ebx
push 0x6f46776f
jb 0x59a7ab
clc
mov byte [0xd1a00059], al
inc edi
add byte [esi], bl
adc byte [ebp + 0x43], dl
inc ebx
popal
je 0x59a7b1
push 0x65726353
arpl word [edx + 0x65], si
outsb dx, byte gs:[esi]
push ebx
push 0x776f
nop
add byte [eax - 0x7e1374ab], dl
invalid
invalid
sar byte [eax - 0x7a720017], cl
clc
invalid
clc
invalid
cld
out 0xff, al