Function at 0x4af5c0
Capabilities:
Get common file path

Disassembly:
sub esp, 0x220
mov eax, dword [0x5bd254]
xor eax, esp
mov dword [esp + 0x21c], eax
push ebx
push ebp
push esi
push edi
mov ebx, ecx
push 0x583738
xor ebp, ebp
push ebx
mov dword [esp + 0x18], ebp
call fcn.00515a07
mov esi, eax
add esp, 8
cmp esi, ebp
jne 0x4af6cc
lea eax, [esp + 0x128]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
lea ecx, [esp + 0x128]
push ecx
call sym.convertifd.exe_UtTerminatePath
lea eax, [esp + 0x12c]
add esp, 4
lea edx, [eax + 1]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x4af625
sub eax, edx
lea edx, [esp + eax + 0x128]
push edx
push ebx
call sym.convertifd.exe_UtGetName
lea edi, [esp + 0x130]
add esp, 8
add edi, 0xffffffff
jmp 0x4af650
mov al, byte [edi + 1]
add edi, 1
test al, al
jne 0x4af650
mov ax, word [0x581818]
mov word [edi], ax
lea eax, [esp + 0x128]
lea edx, [eax + 1]
lea ecx, [ecx]
mov cl, byte [eax]
add eax, 1
test cl, cl
jne 0x4af670
sub eax, edx
lea ecx, [esp + eax + 0x128]
push ecx
push ebx
call sym.convertifd.exe_UtGetExt
lea edx, [esp + 0x130]
push 0x583738
push edx
call fcn.00515a07
mov esi, eax
add esp, 0x10
cmp esi, ebp
jne 0x4af6b4
push ebx
push 0xffffffffffffff9c
call sym.convertifd.exe_IpCMessage
add esp, 8
jmp 0x4aff59
lea eax, [esp + 0x128]
mov ecx, eax
sub ebx, ecx
nop
mov cl, byte [eax]
mov byte [ebx + eax], cl
add eax, 1
test cl, cl
jne 0x4af6c0
mov edx, dword [0x6a2d10]
xor eax, eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x58], eax
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], eax
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], eax
mov dword [esp + 0x94], eax
mov dword [esp + 0x98], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0xa0], eax
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], eax
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], eax
lea eax, [edx*4]
push eax
call sym.convertifd.exe_IpMalloc
mov ebx, eax
add esp, 4
cmp ebx, ebp
mov dword [esp + 0x14], ebx
jne 0x4af79a
push esi
call fcn.005158c7
push 0xfffffffffffffff9
call sym.convertifd.exe_IpMessage
add esp, 8
jmp 0x4aff59
xor eax, eax
cmp dword [0x6a2d10], ebp
jle 0x4af7b2
mov dword [ebx + eax*4], ebp
add eax, 1
cmp eax, dword [0x6a2d10]
jl 0x4af7a4
mov ecx, dword [0x6a2da8]
lea edx, [ecx*4]
push edx
call sym.convertifd.exe_IpMalloc
mov edi, eax
add esp, 4
cmp edi, ebp
mov dword [esp + 0x18], edi
jne 0x4af7ed
push esi
call fcn.005158c7
push ebx
call sym.convertifd.exe_IpFree
push 0xfffffffffffffff9
call sym.convertifd.exe_IpMessage
add esp, 0xc
jmp 0x4aff59
xor eax, eax
cmp dword [0x6a2da8], ebp
jle 0x4af80e
jmp 0x4af800
mov dword [edi + eax*4], ebp
add eax, 1
cmp eax, dword [0x6a2da8]
jl 0x4af800
mov eax, dword [0x6a12d4]
cmp eax, ebp
jle 0x4af862
add eax, eax
add eax, eax
push eax
call sym.convertifd.exe_IpMalloc
add esp, 4
cmp eax, ebp
mov dword [esp + 0x10], eax
jne 0x4af84a
push esi
call fcn.005158c7
push ebx
call sym.convertifd.exe_IpFree
push edi
call sym.convertifd.exe_IpFree
push 0xfffffffffffffff9
call sym.convertifd.exe_IpMessage
jmp 0x4aff56
xor ecx, ecx
cmp dword [0x6a12d4], ebp
jle 0x4af862
mov dword [eax + ecx*4], ebp
add ecx, 1
cmp ecx, dword [0x6a12d4]
jl 0x4af854
mov eax, dword [0x6a2d00]
movsx ecx, byte [eax + 9]
movsx edx, byte [eax + 8]
push ecx
movsx ecx, byte [eax + 7]
push edx
movsx edx, byte [eax + 6]
push ecx
movsx ecx, byte [eax + 5]
push edx
movsx edx, byte [eax + 4]
push ecx
movsx ecx, byte [eax + 3]
push edx
movsx edx, byte [eax + 2]
push ecx
movsx ecx, byte [eax + 1]
push edx
movsx edx, byte [eax]
push ecx
push edx
lea edi, [eax + 0xe]
lea eax, [esp + 0x84]
push str._c_c__c_c__c_c__c_c:_c_c
push eax
call fcn.005135ca
movsx ecx, byte [edi + 9]
movsx edx, byte [edi + 8]
movsx eax, byte [edi + 7]
push ecx
movsx ecx, byte [edi + 6]
push edx
movsx edx, byte [edi + 5]
push eax
movsx eax, byte [edi + 4]
push ecx
movsx ecx, byte [edi + 3]
push edx
movsx edx, byte [edi + 2]
push eax
movsx eax, byte [edi + 1]
push ecx
movsx ecx, byte [edi]
push edx
push eax
push ecx
lea edx, [esp + 0x138]
push str._c_c__c_c__c_c__c_c:_c_c
push edx
call fcn.005135ca
add esp, 0x60
lea eax, [esp + 0xe0]
push eax
lea ecx, [esp + 0x60]
push ecx
push sym.convertifd.exe_i_ifd
push 0xfffffa87
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push esi
call fcn.00517e58
push 0x581760
push esi
call fcn.00517e58
mov ecx, 0x257e
mov edx, esi
call fcn.004ae560
mov ecx, 0x257d
mov edx, esi
call fcn.004ae560
mov ecx, 0x257c
mov edx, esi
call fcn.004ae560
mov ecx, 0x257b
mov edx, esi
call fcn.004ae560
mov ecx, 0x257a
mov edx, esi
call fcn.004ae560
mov ecx, 0x2579
mov edx, esi
call fcn.004ae560
mov ecx, 0x2578
mov edx, esi
call fcn.004ae560
mov ecx, 0x1e24
mov edx, esi
call fcn.004ae560
mov ecx, 0x1a01
mov edx, esi
call fcn.004ae560
push 0x581760
push esi
call fcn.00517e58
mov edx, dword [0x6a2cf4]
mov eax, dword [0x6a1bd0]
mov dword [esp + 0x94], edx
mov byte [esp + 0x98], 0
mov byte [esp + 0x80], 0
mov eax, dword [eax + 0x48]
add esp, 0x24
cmp eax, ebp
jl 0x4af9ee
cmp eax, 0xe
jae 0x4af9ee
mov eax, dword [eax*4 + 0x5ac0e0]
lea edx, [esp + 0x5c]
sub edx, eax
lea esp, [esp]
mov cl, byte [eax]
mov byte [eax + edx], cl
add eax, 1
test cl, cl
jne 0x4af9e0
jmp 0x4afa26
cmp eax, 0x62
jne 0x4af9fd
mov dword [esp + 0x5c], 0x464450
jmp 0x4afa26
mov ecx, dword [str.Label_Printer]
mov edx, dword [0x5825d4]
mov eax, dword [0x5825d8]
mov dword [esp + 0x5c], ecx
mov cx, word [0x5825dc]
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], eax
mov word [esp + 0x68], cx
lea edx, [esp + 0x70]
push edx
lea eax, [esp + 0x60]
push eax
push 0xfffffa86
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push esi
call fcn.00517e58
push 0x581760
push esi
call fcn.00517e58
mov ecx, dword [0x6a2d98]
add esp, 0x18
xor edi, edi
cmp dword [0x6a2d08], ebp
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ebp
jle 0x4afbea
mov edi, edi
cmp edi, dword [0x6a2d98]
je 0x4afa8e
push edi
push sym.convertifd.exe_i_ifd
call sym.convertifd.exe_ReadPage
add esp, 8
test eax, eax
jne 0x4afc87
mov edx, dword [0x6a2d14]
cmp dword [edx + 0x3c], 0
jne 0x4afaa2
mov dword [esp + 0x20], 1
push 0x581760
push esi
call fcn.00517e58
mov eax, dword [0x6a2d04]
add esp, 8
lea ecx, [eax + ebp + 0x6c]
push ecx
lea ebx, [edi + 1]
push ebx
push 0xfffffa85
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push esi
call fcn.00517e58
push 0x581760
push esi
call fcn.00517e58
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ecx
lea edi, [esp + 0xa0]
call fcn.004ad530
add esp, 0x24
xor eax, eax
lea ecx, [ecx]
mov edx, dword [esp + eax + 0x7c]
mov ecx, dword [esp + eax + 0x80]
add dword [esp + eax + 0x24], edx
add dword [esp + eax + 0x28], ecx
add eax, 8
cmp eax, 0x34
jle 0x4afb00
cmp dword [esp + 0x234], 0
je 0x4afb3a
push esi
call fcn.004ae020
push esi
call fcn.004ae3d0
push esi
call fcn.004ae690
add esp, 0xc
mov edx, dword [esp + 0x9c]
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x84]
push edx
mov edx, dword [esp + 0x84]
push eax
push ecx
push edx
push 0xfffffa84
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push esi
call fcn.00517e58
push 0x581760
push esi
call fcn.00517e58
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0xc8]
mov edx, dword [esp + 0xac]
add esp, 0x20
push eax
mov eax, dword [esp + 0xa4]
push eax
sub ecx, eax
mov eax, dword [esp + 0x9c]
push ecx
mov ecx, dword [esp + 0x9c]
push edx
push eax
sub ecx, eax
push ecx
push 0xfffffa83
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push esi
call fcn.00517e58
push 0x581760
push esi
call fcn.00517e58
mov edi, ebx
add esp, 0x28
add ebp, 0xa8
cmp edi, dword [0x6a2d08]
jl 0x4afa70
mov ebx, dword [esp + 0x14]
push 0x581760
push esi
call fcn.00517e58
push 0xfffffa82
call sym.convertifd.exe_IpGMessage
push eax
push esi
call fcn.00517e58
push 0x581760
push esi
call fcn.00517e58
mov edx, dword [0x6a1bd0]
add esp, 0x1c
cmp dword [edx + 0x48], 0x14
mov ebp, 1
jne 0x4afc95
mov edi, ebp
cmp dword [0x6a2d10], edi
jle 0x4afd0d
lea eax, [esp + 0xf4]
push eax
push edi
push sym.convertifd.exe_i_ifd
call sym.convertifd.exe_FormatFontInfo
mov ecx, dword [ebx + edi*4]
add esp, 0xc
push edi
push ecx
lea edx, [esp + 0xfc]
push edx
push 0xfffffa81
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push esi
call fcn.00517e58
push 0x581760
push esi
call fcn.00517e58
add edi, ebp
add esp, 0x1c
cmp edi, dword [0x6a2d10]
jl 0x4afc33
jmp 0x4afd0d
push eax
call sym.convertifd.exe_IpMessage
add esp, 4
jmp 0x4aff32
xor edi, edi
cmp dword [0x6a2d10], edi
jle 0x4afd0d
nop
cmp dword [ebx + edi*4], 0
jne 0x4afcba
mov eax, dword [0x6a2d00]
cmp edi, dword [eax + 0x130]
jne 0x4afd02
cmp dword [esp + 0x20], 0
je 0x4afd02
lea ecx, [esp + 0xf4]
push ecx
push edi
push sym.convertifd.exe_i_ifd
call sym.convertifd.exe_FormatFontInfo
mov edx, dword [ebx + edi*4]
add esp, 0xc
push ebp
push edx
lea eax, [esp + 0xfc]
push eax
push 0xfffffa81
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push esi
call fcn.00517e58
push 0x581760
push esi
call fcn.00517e58
add esp, 0x1c
add ebp, 1
add edi, 1
cmp edi, dword [0x6a2d10]
jl 0x4afca0
xor edi, edi
cmp dword [0x6a2da8], edi
jle 0x4afd66
xor ebx, ebx
lea esp, [esp]
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx + edi*4]
test eax, eax
je 0x4afd58
mov edx, dword [0x6a2da4]
push eax
lea eax, [ebx + edx]
push eax
push 0xfffffa80
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push esi
call fcn.00517e58
push 0x581760
push esi
call fcn.00517e58
add esp, 0x18
add edi, 1
add ebx, 0x5c
cmp edi, dword [0x6a2da8]
jl 0x4afd20
xor edi, edi
cmp dword [0x6a12d4], edi
jle 0x4afdb8
xor ebx, ebx
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + edi*4]
test eax, eax
je 0x4afdaa
mov edx, dword [0x6a12d0]
push eax
mov eax, dword [edx + ebx]
push eax
push 0xfffffa7f
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push esi
call fcn.00517e58
push 0x581760
push esi
call fcn.00517e58
add esp, 0x18
add edi, 1
add ebx, 0x28
cmp edi, dword [0x6a12d4]
jl 0x4afd72
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x30]
mov eax, dword [esp + 0x2c]
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
push ecx
push 0xfffffa84
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push esi
call fcn.00517e58
push 0x581760
push esi
call fcn.00517e58
mov edx, dword [esp + 0x74]
mov ecx, dword [esp + 0x68]
mov eax, dword [esp + 0x70]
add esp, 0x20
push edx
push ecx
sub eax, ecx
mov ecx, dword [esp + 0x44]
push eax
mov eax, dword [esp + 0x40]
push eax
mov eax, dword [esp + 0x48]
push ecx
sub eax, ecx
push eax
push 0xfffffa83
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push esi
call fcn.00517e58
push 0x581760
push esi
call fcn.00517e58
mov eax, dword [esp + 0x44]
add esp, 0x28
cmp dword [0x6a2d98], eax
je 0x4afe54
push eax
push sym.convertifd.exe_i_ifd
call sym.convertifd.exe_ReadPage
add esp, 8
test eax, eax
jne 0x4afc87
mov ecx, dword [0x6a2eb4]
push ecx
push 0xfffffa5f
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push str._n_s:__d_n
push esi
call fcn.00517e58
xor edi, edi
add esp, 0x10
cmp dword [0x6a2eb4], edi
jle 0x4aff0e
jmp 0x4afe90
mov eax, dword [0x6a2eb0]
movzx ebp, byte [eax + edi*4]
movzx ebx, byte [eax + edi*4 + 1]
movzx eax, byte [eax + edi*4 + 2]
push eax
push ebx
push ebp
lea edx, [esp + 0x30]
push 0x58371c
push edx
mov dword [esp + 0x30], eax
call fcn.005135ca
add esp, 0x14
push 0x64
lea eax, [esp + 0x80]
push eax
push 0x580cbb
lea ecx, [esp + 0x30]
push ecx
push 0x583710
call sym.convertifd.exe_GetJetFormIniStr
mov eax, dword [esp + 0x1c]
lea edx, [esp + 0x7c]
push edx
push eax
push ebx
push ebp
push edi
push 0xfffffa5e
call sym.convertifd.exe_IpGMessage
add esp, 4
push eax
push str._s__d:__d__d__d___s_n
push esi
call fcn.00517e58
add edi, 1
add esp, 0x20
cmp edi, dword [0x6a2eb4]
jl 0x4afe90
cmp dword [esp + 0x234], 0
je 0x4aff1f
mov ecx, esi
call fcn.004ade10
call sym.convertifd.exe_UnlockDocVars
push 0x581760
push esi
call fcn.00517e58
add esp, 8
mov ecx, dword [esp + 0x14]
push ecx
call sym.convertifd.exe_IpFree
mov edx, dword [esp + 0x1c]
push edx
call sym.convertifd.exe_IpFree
mov eax, dword [esp + 0x18]
push eax
call sym.convertifd.exe_IpFree
push esi
call fcn.005158c7
add esp, 0x10
mov ecx, dword [esp + 0x22c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00511a80
add esp, 0x220
ret