Function at 0x40d550
Capabilities:
Get common file path

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xce0
mov ecx, dword [str.ecf1236909c49a73c6a1502a1f7614b9]
mov dword [esp + 0xc0], 0x7b370340
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], 0
mov byte [esp + 0xcc], 0
mov eax, 0xfccce7ef
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edx, byte [esp + eax + 0x33318d1]
mov esi, eax
and esi, edx
add esi, esi
sub edx, esi
add edx, eax
mov dword [esp + 0x1c0], edx
mov edx, dword [esp + 0x1c0]
add dl, 0x77
mov byte [esp + eax + 0x33318d1], dl
cmp eax, 0xfccce7fb
je 0x40d602
movzx edx, byte [esp + eax + 0x33318d2]
lea esi, [eax + 1]
and esi, edx
add esi, esi
sub edx, esi
add edx, eax
inc edx
mov dword [esp + 0x1c0], edx
mov edx, dword [esp + 0x1c0]
add dl, 0x77
mov byte [esp + eax + 0x33318d2], dl
add eax, 2
jmp 0x40d5a0
mov edx, dword [str.MhMcwl__GAS]
mov dword [esp + 0x1c0], 0xd4ecfcf5
mov dword [esp + 0x1c4], 0xf4f1f2e0
mov dword [esp + 0x1c8], 0xecf9f6e0
mov dword [esp + 0x1cc], 0xc4d9d8f5
mov dword [esp + 0x1d0], 0xdd0ececf
mov dword [esp + 0x1d4], 0x13ebdfcd
mov dword [esp + 0x1d8], 0xdf061918
mov dword [esp + 0x1dc], 0x37f3d9c1
mov dword [esp + 0x1e0], 0
mov byte [esp + 0x1e4], 0
mov eax, 0x657b2053
nop
nop
nop
nop
nop
nop
nop
nop
movzx esi, byte [esp + eax - 0x657b1e93]
mov edi, eax
and edi, esi
add edi, edi
sub esi, edi
add esi, eax
mov dword [esp + 0x18], esi
mov ebx, dword [esp + 0x18]
add bl, 0xbb
mov byte [esp + eax - 0x657b1e93], bl
cmp eax, 0x657b2077
je 0x40d6d6
movzx esi, byte [esp + eax - 0x657b1e92]
lea edi, [eax + 1]
and edi, esi
add edi, edi
sub esi, edi
add esi, eax
inc esi
mov dword [esp + 0x18], esi
mov ebx, dword [esp + 0x18]
add bl, 0xbb
mov byte [esp + eax - 0x657b1e92], bl
add eax, 2
jmp 0x40d680
movzx ebx, byte [esp + 0x1c0]
lea eax, [esp + 0xa50]
test bl, bl
je 0x40d6fb
lea esi, [esp + 0x1c1]
mov byte [eax], bl
inc eax
movzx ebx, byte [esi]
inc esi
test bl, bl
jne 0x40d6f0
mov byte [eax], 0
movzx ebx, byte [edx]
test bl, bl
je 0x40d71b
inc edx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], bl
inc eax
movzx ebx, byte [edx]
inc edx
test bl, bl
jne 0x40d710
mov byte [eax], 0
movzx edx, byte [esp + 0xc0]
test dl, dl
je 0x40d74b
lea esi, [esp + 0xc1]
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [esi]
inc esi
test dl, dl
jne 0x40d740
mov byte [eax], 0
movzx edx, byte [ecx]
test dl, dl
je 0x40d76b
inc ecx
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
mov byte [eax], dl
inc eax
movzx edx, byte [ecx]
inc ecx
test dl, dl
jne 0x40d760
mov byte [eax], 0
lea ecx, [esp + 0xa50]
mov edx, ecx
not edx
and edx, eax
add edx, edx
mov dword [esp + 0x1c0], 0x8375854b
mov dword [esp + 0x1c4], 0x8f7c8170
mov dword [esp + 0x1c8], 0x8b7e8d65
mov dword [esp + 0x1cc], 0x97bb8976
mov dword [esp + 0x1d0], 0x9313954a
mov dword [esp + 0x1d4], 0x9f7b9162
mov dword [esp + 0x1d8], 0x9bbc9d58
mov dword [esp + 0x1dc], 0xa7689975
mov dword [esp + 0x1e0], 0xa350a556
mov dword [esp + 0x1e4], 0xaf4da155
mov dword [esp + 0x1e8], 0xab50ad41
mov dword [esp + 0x1ec], 0xb759a95d
mov dword [esp + 0x1f0], 0xb385b544
mov dword [esp + 0x1f4], 0xbf83b14a
mov dword [esp + 0x1f8], 0xbb45bd47
mov dword [esp + 0x1fc], 0x478bb943
mov dword [esp + 0x200], 0x43b545ac
mov dword [esp + 0x204], 0x4fb341bc
mov dword [esp + 0x208], 0x4bb74d7d
mov dword [esp + 0x20c], 0x57bc49b4
mov dword [esp + 0x210], 0x53a655bd
mov dword [esp + 0x214], 0x5fa151bf
mov dword [esp + 0x218], 0x5bb75db2
mov dword [esp + 0x21c], 0x674b59b6
mov dword [esp + 0x220], 0x63646570
mov dword [esp + 0x22c], 0
mov dword [esp + 0x228], 0
mov dword [esp + 0x224], 0
mov esi, 0xf697adc1
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
movzx edi, byte [esp + esi + 0x96853ff]
mov ebx, esi
and ebx, edi
add ebx, ebx
sub edi, ebx
add edi, esi
mov dword [esp + 0xc0], edi
mov ebx, dword [esp + 0xc0]
add bl, 0xb9
mov byte [esp + esi + 0x96853ff], bl
movzx edi, byte [esp + esi + 0x9685400]
lea ebx, [esi + 1]
and ebx, edi
add ebx, ebx
sub edi, ebx
add edi, esi
inc edi
mov dword [esp + 0xc0], edi
mov ebx, dword [esp + 0xc0]
add bl, 0xb9
mov byte [esp + esi + 0x9685400], bl
add esi, 2
cmp esi, 0xf697ae31
jne 0x40d8c0
xor eax, ecx
mov dword [esp + 0xc0], 0xeb3395e7
mov dword [esp + 0xc4], 0xef57e95a
mov word [esp + 0xc8], 0xedee
mov dword [esp + 0xce], 0
mov dword [esp + 0xca], 0
mov esi, 0x6a043a3e
nop
nop
movzx edi, byte [esp + esi - 0x6a04397e]
lea ebx, [esi - 1]
and ebx, edi
add ebx, ebx
sub edi, ebx
add edi, esi
dec edi
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
add bl, 0x55
mov byte [esp + esi - 0x6a04397e], bl
movzx edi, byte [esp + esi - 0x6a04397d]
mov ebx, esi
and ebx, edi
add ebx, ebx
sub edi, ebx
add edi, esi
mov dword [esp + 0x18], edi
mov ebx, dword [esp + 0x18]
add bl, 0x55
mov byte [esp + esi - 0x6a04397d], bl
add esi, 2
cmp esi, 0x6a043a50
jne 0x40d960
sub edx, eax
lea eax, [esp + 0xbc]
lea esi, [esp + 0xac]
lea ebx, [esp + 0x1c0]
lea edi, [esp + 0xc0]
push eax
push esi
push edx
push ecx
push ebx
push edi
push 0x44ac24
call fcn.0040c1d0
add esp, 0x1c
movzx eax, al
jmp dword [eax*4 + 0x445980]