Function at 0x49a910
Capabilities:
Read file on windows

Disassembly:
sub esp, 0x7c0
mov eax, dword [0x5bd254]
xor eax, esp
mov dword [esp + 0x7bc], eax
mov eax, dword [sym.convertifd.exe_i_control]
cmp eax, 0x2500
push ebx
push ebp
push esi
mov esi, dword [esp + 0x7d4]
push edi
mov edi, dword [esp + 0x7d4]
mov ebx, 0x580cbb
mov dword [esp + 0x1c], edi
mov dword [esp + 0x10], esi
mov ebp, ebx
jg 0x49a9b0
je 0x49a9a0
cmp eax, 0x1e45
jg 0x49a979
je 0x49aa59
sub eax, 0x1e0b
je 0x49aa59
sub eax, 0x16
je 0x49aa59
jmp 0x49aede
cmp eax, 0x2334
je 0x49a990
cmp eax, 0x24f8
je 0x49aa59
jmp 0x49aede
push edi
mov edi, esi
call fcn.0049a0d0
add esp, 4
jmp 0x49aede
push edi
mov ecx, esi
call fcn.0049a0a0
add esp, 4
jmp 0x49aede
cmp eax, 0x2686
jg 0x49aa4e
je 0x49aa59
cmp eax, 0x250a
jl 0x49aede
cmp eax, 0x250b
jle 0x49a9de
cmp eax, 0x2510
jne 0x49aede
lea edx, [esp + 0x4c8]
mov eax, esi
sub edx, esi
lea esp, [esp]
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
test cl, cl
jne 0x49a9f0
mov edx, dword [0x6a29ac]
lea eax, [esp + 0x120]
push eax
lea ecx, [esp + 0x4cc]
push ecx
push edx
call sym.convertifd.exe_SfGetPrivateInfo
test eax, eax
je 0x49aede
lea eax, [esp + 0x135]
push 0xffffffffffffffff
push eax
mov ecx, eax
push ecx
call sym.convertifd.exe_Roman8ToAnsiBuff
add esp, 0xc
lea edx, [esp + 0x135]
push edx
push 0x257d
push edi
call dword [sym.imp.USER32.dll_SetDlgItemTextA]
jmp 0x49aede
cmp eax, 0x26e2
jne 0x49aede
call sym.convertifd.exe_PushDocVars
mov edi, 0x580cbb
mov ecx, 1
xor eax, eax
repe cmpsb byte [esi], byte es:[edi]
je 0x49ae56
cmp dword [0x6a2918], eax
je 0x49ab94
mov eax, dword [sym.convertifd.exe_i_control]
cmp eax, 0x1e45
je 0x49ab94
cmp eax, 0x1e21
je 0x49ab94
cmp eax, 0x1e0b
je 0x49ab94
mov eax, dword [esp + 0x10]
lea edx, [esp + 0x4c8]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
test cl, cl
jne 0x49aab1
lea ecx, [esp + 0x4c8]
push 0x58226c
push ecx
call sym.convertifd.exe_UtAddExt
call sym.convertifd.exe_UnlockEntitySegments
push 1
push 1
lea edx, [esp + 0x4d8]
push edx
push sym.convertifd.exe_i_tmpifd
call sym.convertifd.exe_OpenIFD
add esp, 0x18
mov esi, eax
call sym.convertifd.exe_LockEntitySegments
test esi, esi
jne 0x49ab46
push sym.convertifd.exe_i_tmpifd
call sym.convertifd.exe_LoadIFDDocVars
add esp, 4
test eax, eax
jne 0x49ab39
push 0x257e
call sym.convertifd.exe_GetDocVarByResource
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x49ab21
mov ebx, 0x580cbb
push 0x257d
call sym.convertifd.exe_GetDocVarByResource
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x49ab39
mov ebp, 0x580cbb
push sym.convertifd.exe_i_tmpifd
call sym.convertifd.exe_CloseIFD
add esp, 4
push 0xffffffffffffffff
push ebx
push ebx
call sym.convertifd.exe_Roman8ToAnsiBuff
mov edi, dword [esp + 0x28]
mov esi, dword [sym.imp.USER32.dll_SetDlgItemTextA]
add esp, 0xc
push ebx
push 0x257e
push edi
call esi
push 0xffffffffffffffff
push ebx
push ebx
call sym.convertifd.exe_AnsiToRoman8Buff
push 0xffffffffffffffff
push ebp
push ebp
call sym.convertifd.exe_Roman8ToAnsiBuff
add esp, 0x18
push ebp
push 0x257d
push edi
call esi
push 0xffffffffffffffff
push ebp
push ebp
call sym.convertifd.exe_AnsiToRoman8Buff
add esp, 0xc
jmp 0x49aed9
mov eax, dword [esp + 0x10]
mov edi, 0x580cbb
mov esi, eax
mov ecx, 1
xor edx, edx
repe cmpsb byte [esi], byte es:[edi]
mov byte [esp + 0x6cc], 0
mov byte [esp + 0x5cc], 0
lea ebp, [esp + 0x5cc]
lea ebx, [esp + 0x6cc]
je 0x49ae56
lea edx, [esp + 0x4c8]
sub edx, eax
mov cl, byte [eax]
mov byte [edx + eax], cl
add eax, 1
test cl, cl
jne 0x49abd5
lea eax, [esp + 0x4c8]
push 0x581ac4
push eax
call sym.convertifd.exe_UtAddExt
lea ecx, [esp + 0x4d0]
push 0x581e84
push ecx
call fcn.00515a07
mov esi, eax
add esp, 0x10
test esi, esi
je 0x49ae56
push esi
push 1
lea edx, [esp + 0x30]
push 0xf8
push edx
call fcn.00515cb6
add esp, 0x10
cmp eax, 1
je 0x49ac3a
push esi
call fcn.005158c7
add esp, 4
jmp 0x49ae56
cmp byte [esp + 0x28], 0x69
jne 0x49ada2
cmp byte [esp + 0x29], 0x4d
jne 0x49ada2
cmp byte [esp + 0x2a], 0x66
jne 0x49ada2
cmp byte [esp + 0x2b], 0x20
jne 0x49ada2
cmp byte [esp + 0x118], 0
je 0x49acba
lea eax, [esp + 0x118]
push eax
call fcn.00511d2f
push 0
push eax
push esi
call fcn.00515def
movzx ecx, byte [esp + 0x4f]
push 0
push 1
push 3
push ecx
push 0
push 0xffffffffffffffff
lea edx, [esp + 0x278]
push esi
push edx
call sym.convertifd.exe_UtObjRead
add esp, 0x30
cmp eax, 1
je 0x49acd1
push esi
call fcn.005158c7
add esp, 4
jmp 0x49ae56
push 0x278
lea eax, [esp + 0x254]
push 0
push eax
call fcn.00511e90
add esp, 0xc
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x29c]
push 0x5831c0
push edx
call fcn.00511af7
add esp, 0xc
cmp eax, 1
jne 0x49ac2c
mov eax, dword [esp + 0x18]
test eax, eax
jle 0x49ac2c
push 0
push eax
push esi
call fcn.00515def
call sym.convertifd.exe_ClearDocVars
movzx ecx, byte [esp + 0x4b]
mov edx, dword [esp + 0x24]
lea eax, [esp + 0x30]
push eax
push ecx
push edx
push esi
call sym.convertifd.exe_LoadDocVars
add esp, 0x1c
test eax, eax
jne 0x49ad39
push esi
call fcn.005158c7
add esp, 4
jmp 0x49ae56
call sym.convertifd.exe_UnlockDocVars
push esi
call fcn.005158c7
push 0x257e
call sym.convertifd.exe_GetDocVarByResource
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x49ad5c
mov ebx, 0x580cbb
push 0x257d
call sym.convertifd.exe_GetDocVarByResource
mov ebp, eax
add esp, 4
test ebp, ebp
jne 0x49ad74
mov ebp, 0x580cbb
cmp dword [0x606c80], 0
je 0x49ae56
lea eax, [esp + 0xc4]
push eax
call fcn.00511d40
mov ecx, dword [0x606c80]
add esp, 4
mov dword [ecx + 0x43c], eax
jmp 0x49ae56
push esi
call fcn.005158c7
push str.jfmdf50.dll
call sym.convertifd.exe_JfLoadLibrary
mov esi, eax
add esp, 8
cmp esi, 0x20
jbe 0x49ae56
mov edi, dword [sym.imp.KERNEL32.dll_GetProcAddress]
push str.JFOpenMDF
push esi
call edi
push str.JFGetMDFString
push esi
mov dword [esp + 0x28], eax
call edi
push str.JFCloseMDF
push esi
mov dword [esp + 0x1c], eax
call edi
mov edi, eax
mov eax, dword [esp + 0x20]
test eax, eax
je 0x49ae4f
cmp dword [esp + 0x14], 0
je 0x49ae4f
test edi, edi
je 0x49ae4f
push str.IOEORJ
push 0x583180
lea edx, [esp + 0x4d0]
push edx
lea ecx, [esp + 0x1c]
push ecx
call eax
test eax, eax
jne 0x49ae4f
mov eax, dword [esp + 0x10]
push pe_nt_image_headers32
lea edx, [esp + 0x6d0]
push edx
push 0x18
push eax
call dword [esp + 0x24]
mov edx, dword [esp + 0x10]
push pe_nt_image_headers32
lea ecx, [esp + 0x5d0]
push ecx
push 0x19
push edx
call dword [esp + 0x24]
mov eax, dword [esp + 0x10]
push eax
call edi
push esi
call dword [sym.imp.KERNEL32.dll_FreeLibrary]
push 0xffffffffffffffff
push ebp
push ebp
call sym.convertifd.exe_Roman8ToAnsiBuff
mov edi, dword [esp + 0x28]
mov esi, dword [sym.imp.USER32.dll_SetDlgItemTextA]
add esp, 0xc
push ebp
push 0x257d
push edi
call esi
push 0xffffffffffffffff
push ebp
push ebp
call sym.convertifd.exe_AnsiToRoman8Buff
push 0xffffffffffffffff
push ebx
push ebx
call sym.convertifd.exe_Roman8ToAnsiBuff
add esp, 0x18
push ebx
push 0x257e
push edi
call esi
push 0xffffffffffffffff
push ebx
push ebx
call sym.convertifd.exe_AnsiToRoman8Buff
mov ecx, dword [0x606c8c]
push ecx
call sym.convertifd.exe_IpFree
push ebx
call sym.convertifd.exe_StrlenFar
add eax, 1
push eax
call sym.convertifd.exe_IpMalloc
add esp, 0x18
test eax, eax
mov dword [0x606c8c], eax
jne 0x49aecf
push 0xfffffffffffffff9
call sym.convertifd.exe_IpMessage
add esp, 4
jmp 0x49aed9
push ebx
push eax
call sym.convertifd.exe_StrcpyFarToFar
add esp, 8
call sym.convertifd.exe_PopDocVars
mov ecx, dword [esp + 0x7cc]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00511a80
add esp, 0x7c0
ret