Function at 0x474869
Capabilities:
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4faf88
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x428
mov dword [ebp - 0x434], ecx
lea ecx, [ebp - 0x430]
call fcn.004e3ec0
mov dword [ebp - 4], 0
push 0x208
push 0
lea eax, [ebp - 0x218]
push eax
call fcn.004be790
add esp, 0xc
mov ecx, dword [ebp - 0x434]
add ecx, 0x2d4
push ecx
lea edx, [ebp - 0x218]
push edx
call fcn.004be9f0
add esp, 8
push 0x5380e0
lea eax, [ebp - 0x218]
push eax
call fcn.004bea00
add esp, 8
push 0x208
push 0
lea ecx, [ebp - 0x420]
push ecx
call fcn.004be790
add esp, 0xc
push 0x10
push 0x5433d0
lea edx, [ebp - 0x420]
push edx
call fcn.004bee30
add esp, 0xc
movsx eax, byte [ebp - 0x420]
test eax, eax
jne 0x474930
push 0x5380ec
lea ecx, [ebp - 0x420]
push ecx
call fcn.004be9f0
add esp, 8
lea edx, [ebp - 0x420]
push edx
lea eax, [ebp - 0x218]
push eax
call fcn.004bea00
add esp, 8
push 0x5380f4
lea ecx, [ebp - 0x218]
push ecx
call fcn.004bea00
add esp, 8
cmp dword [0x5433b8], 0
je 0x4749f1
push 7
push 0
mov edx, dword [ebp - 0x434]
add edx, 0x1000
push edx
call fcn.004be790
add esp, 0xc
mov eax, dword [ebp - 0x434]
add eax, 0x8ec
push eax
push 7
mov ecx, dword [ebp - 0x434]
add ecx, 0x1000
push ecx
push 0x5437b4
push str.FWTAG
push 0x538100
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x434]
movsx eax, byte [edx + 0x1000]
test eax, eax
je 0x4749f1
mov ecx, dword [ebp - 0x434]
add ecx, 0x1000
push ecx
lea edx, [ebp - 0x218]
push edx
call fcn.004bea00
add esp, 8
push 0x538108
lea eax, [ebp - 0x218]
push eax
call fcn.004bea00
add esp, 8
push 0x208
push 0
lea ecx, [ebp - 0x420]
push ecx
call fcn.004be790
add esp, 0xc
mov edx, dword [ebp - 0x434]
add edx, 0x2d4
push edx
lea eax, [ebp - 0x420]
push eax
call fcn.004be9f0
add esp, 8
push 0x53810c
lea ecx, [ebp - 0x420]
push ecx
call fcn.004bea00
add esp, 8
push 0
push 0x8040
lea edx, [ebp - 0x420]
push edx
lea ecx, [ebp - 0x430]
call fcn.004e4072
test eax, eax
je 0x474af9
lea ecx, [ebp - 0x430]
call fcn.004e436c
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13b0], 0
jne 0x474a8d
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004bf27e
add esp, 4
mov edx, dword [ebp - 0x434]
mov dword [edx + 0x13b0], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13b0], 0
je 0x474aee
mov ecx, dword [ebp - 0x10]
push ecx
push 0
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13b0]
push eax
call fcn.004be790
add esp, 0xc
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13b0]
push eax
lea ecx, [ebp - 0x430]
call fcn.004e418f
mov ecx, dword [ebp - 0x434]
mov dword [ecx + 0x13ac], eax
mov edx, dword [ebp - 0x434]
mov eax, dword [ebp - 0x10]
mov dword [edx + 0x13b4], eax
lea ecx, [ebp - 0x430]
call fcn.004e428d
push 0x208
push 0
lea ecx, [ebp - 0x420]
push ecx
call fcn.004be790
add esp, 0xc
mov edx, dword [ebp - 0x434]
add edx, 0x2d4
push edx
lea eax, [ebp - 0x420]
push eax
call fcn.004be9f0
add esp, 8
push str.DriveSettingMP_CIDtable.bin
lea ecx, [ebp - 0x420]
push ecx
call fcn.004bea00
add esp, 8
push 0
push 0x8040
lea edx, [ebp - 0x420]
push edx
lea ecx, [ebp - 0x430]
call fcn.004e4072
test eax, eax
je 0x474c01
lea ecx, [ebp - 0x430]
call fcn.004e436c
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13bc], 0
jne 0x474b95
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004bf27e
add esp, 4
mov edx, dword [ebp - 0x434]
mov dword [edx + 0x13bc], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13bc], 0
je 0x474bf6
mov ecx, dword [ebp - 0x10]
push ecx
push 0
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13bc]
push eax
call fcn.004be790
add esp, 0xc
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13bc]
push eax
lea ecx, [ebp - 0x430]
call fcn.004e418f
mov ecx, dword [ebp - 0x434]
mov dword [ecx + 0x13b8], eax
mov edx, dword [ebp - 0x434]
mov eax, dword [ebp - 0x10]
mov dword [edx + 0x13c0], eax
lea ecx, [ebp - 0x430]
call fcn.004e428d
push 0x208
push 0
lea ecx, [ebp - 0x420]
push ecx
call fcn.004be790
add esp, 0xc
mov edx, dword [ebp - 0x434]
add edx, 0x2d4
push edx
lea eax, [ebp - 0x420]
push eax
call fcn.004be9f0
add esp, 8
push str.DriveSettingMP_IDtable.bin
lea ecx, [ebp - 0x420]
push ecx
call fcn.004bea00
add esp, 8
push 0
push 0x8040
lea edx, [ebp - 0x420]
push edx
lea ecx, [ebp - 0x430]
call fcn.004e4072
test eax, eax
je 0x474d09
lea ecx, [ebp - 0x430]
call fcn.004e436c
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13c8], 0
jne 0x474c9d
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004bf27e
add esp, 4
mov edx, dword [ebp - 0x434]
mov dword [edx + 0x13c8], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13c8], 0
je 0x474cfe
mov ecx, dword [ebp - 0x10]
push ecx
push 0
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13c8]
push eax
call fcn.004be790
add esp, 0xc
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13c8]
push eax
lea ecx, [ebp - 0x430]
call fcn.004e418f
mov ecx, dword [ebp - 0x434]
mov dword [ecx + 0x13c4], eax
mov edx, dword [ebp - 0x434]
mov eax, dword [ebp - 0x10]
mov dword [edx + 0x13cc], eax
lea ecx, [ebp - 0x430]
call fcn.004e428d
push 0x208
push 0
lea ecx, [ebp - 0x420]
push ecx
call fcn.004be790
add esp, 0xc
mov edx, dword [ebp - 0x434]
add edx, 0x2d4
push edx
lea eax, [ebp - 0x420]
push eax
call fcn.004be9f0
add esp, 8
push str.DriveSettingMPINFO_Final.bin
lea ecx, [ebp - 0x420]
push ecx
call fcn.004bea00
add esp, 8
push 0
push 0x8040
lea edx, [ebp - 0x420]
push edx
lea ecx, [ebp - 0x430]
call fcn.004e4072
test eax, eax
je 0x474e11
lea ecx, [ebp - 0x430]
call fcn.004e436c
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13d4], 0
jne 0x474da5
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004bf27e
add esp, 4
mov edx, dword [ebp - 0x434]
mov dword [edx + 0x13d4], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13d4], 0
je 0x474e06
mov ecx, dword [ebp - 0x10]
push ecx
push 0
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13d4]
push eax
call fcn.004be790
add esp, 0xc
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13d4]
push eax
lea ecx, [ebp - 0x430]
call fcn.004e418f
mov ecx, dword [ebp - 0x434]
mov dword [ecx + 0x13d0], eax
mov edx, dword [ebp - 0x434]
mov eax, dword [ebp - 0x10]
mov dword [edx + 0x13d8], eax
lea ecx, [ebp - 0x430]
call fcn.004e428d
push 0x208
push 0
lea ecx, [ebp - 0x420]
push ecx
call fcn.004be790
add esp, 0xc
mov edx, dword [ebp - 0x434]
add edx, 0x2d4
push edx
lea eax, [ebp - 0x420]
push eax
call fcn.004be9f0
add esp, 8
push str.TablesTLCSeedTable1Z.bin
lea ecx, [ebp - 0x420]
push ecx
call fcn.004bea00
add esp, 8
push 0
push 0x8040
lea edx, [ebp - 0x420]
push edx
lea ecx, [ebp - 0x430]
call fcn.004e4072
test eax, eax
je 0x474f19
lea ecx, [ebp - 0x430]
call fcn.004e436c
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13e0], 0
jne 0x474ead
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004bf27e
add esp, 4
mov edx, dword [ebp - 0x434]
mov dword [edx + 0x13e0], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13e0], 0
je 0x474f0e
mov ecx, dword [ebp - 0x10]
push ecx
push 0
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13e0]
push eax
call fcn.004be790
add esp, 0xc
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13e0]
push eax
lea ecx, [ebp - 0x430]
call fcn.004e418f
mov ecx, dword [ebp - 0x434]
mov dword [ecx + 0x13dc], eax
mov edx, dword [ebp - 0x434]
mov eax, dword [ebp - 0x10]
mov dword [edx + 0x13e4], eax
lea ecx, [ebp - 0x430]
call fcn.004e428d
push 0x208
push 0
lea ecx, [ebp - 0x420]
push ecx
call fcn.004be790
add esp, 0xc
lea edx, [ebp - 0x218]
push edx
lea eax, [ebp - 0x420]
push eax
call fcn.004be9f0
add esp, 8
push str.BootISP2258.bin
lea ecx, [ebp - 0x420]
push ecx
call fcn.004bea00
add esp, 8
push 0
push 0x8040
lea edx, [ebp - 0x420]
push edx
lea ecx, [ebp - 0x430]
call fcn.004e4072
test eax, eax
je 0x47501b
lea ecx, [ebp - 0x430]
call fcn.004e436c
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13ec], 0
jne 0x474faf
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004bf27e
add esp, 4
mov edx, dword [ebp - 0x434]
mov dword [edx + 0x13ec], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13ec], 0
je 0x475010
mov ecx, dword [ebp - 0x10]
push ecx
push 0
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13ec]
push eax
call fcn.004be790
add esp, 0xc
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13ec]
push eax
lea ecx, [ebp - 0x430]
call fcn.004e418f
mov ecx, dword [ebp - 0x434]
mov dword [ecx + 0x13e8], eax
mov edx, dword [ebp - 0x434]
mov eax, dword [ebp - 0x10]
mov dword [edx + 0x13f0], eax
lea ecx, [ebp - 0x430]
call fcn.004e428d
push 0x208
push 0
lea ecx, [ebp - 0x420]
push ecx
call fcn.004be790
add esp, 0xc
lea edx, [ebp - 0x218]
push edx
lea eax, [ebp - 0x420]
push eax
call fcn.004be9f0
add esp, 8
push 0x5381bc
lea ecx, [ebp - 0x420]
push ecx
call fcn.004bea00
add esp, 8
push 0
push 0x8040
lea edx, [ebp - 0x420]
push edx
lea ecx, [ebp - 0x430]
call fcn.004e4072
test eax, eax
je 0x47511d
lea ecx, [ebp - 0x430]
call fcn.004e436c
mov dword [ebp - 0x10], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13f8], 0
jne 0x4750b1
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004bf27e
add esp, 4
mov edx, dword [ebp - 0x434]
mov dword [edx + 0x13f8], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x13f8], 0
je 0x475112
mov ecx, dword [ebp - 0x10]
push ecx
push 0
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13f8]
push eax
call fcn.004be790
add esp, 0xc
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x13f8]
push eax
lea ecx, [ebp - 0x430]
call fcn.004e418f
mov ecx, dword [ebp - 0x434]
mov dword [ecx + 0x13f4], eax
mov edx, dword [ebp - 0x434]
mov eax, dword [ebp - 0x10]
mov dword [edx + 0x13fc], eax
lea ecx, [ebp - 0x430]
call fcn.004e428d
push 0x208
push 0
lea ecx, [ebp - 0x420]
push ecx
call fcn.004be790
add esp, 0xc
lea edx, [ebp - 0x218]
push edx
lea eax, [ebp - 0x420]
push eax
call fcn.004be9f0
add esp, 8
movsx ecx, byte [0x5433b4]
test ecx, ecx
je 0x47517c
push 0x5433b4
lea edx, [ebp - 0x420]
push edx
call fcn.004bea00
add esp, 8
push 0x5381cc
lea eax, [ebp - 0x420]
push eax
call fcn.004bea00
add esp, 8
cmp dword [0x542628], 0x979
je 0x475194
cmp dword [0x542628], 0x97b
jne 0x475201
mov ecx, dword [ebp - 0x434]
cmp dword [ecx + 0x1164], 0
je 0x4751b9
push 0x5381d0
lea edx, [ebp - 0x420]
push edx
call fcn.004bea00
add esp, 8
jmp 0x4751ff
push 0x208
push 0
lea eax, [ebp - 0x420]
push eax
call fcn.004be790
add esp, 0xc
mov ecx, dword [ebp - 0x434]
add ecx, 0x2d4
push ecx
lea edx, [ebp - 0x420]
push edx
call fcn.004be9f0
add esp, 8
push str.Linux_FileISP.bin
lea eax, [ebp - 0x420]
push eax
call fcn.004bea00
add esp, 8
jmp 0x475246
cmp dword [0x542628], 0x97a
jne 0x475246
mov ecx, dword [ebp - 0x434]
cmp dword [ecx + 0x1164], 0
je 0x475232
push str.ISP2256RDT.bin
lea edx, [ebp - 0x420]
push edx
call fcn.004bea00
add esp, 8
jmp 0x475246
push str.ISP2256.bin
lea eax, [ebp - 0x420]
push eax
call fcn.004bea00
add esp, 8
push 0
push 0x8040
lea ecx, [ebp - 0x420]
push ecx
lea ecx, [ebp - 0x430]
call fcn.004e4072
test eax, eax
je 0x475358
lea ecx, [ebp - 0x430]
call fcn.004e436c
mov dword [ebp - 0x10], eax
mov edx, dword [ebp - 0x434]
cmp dword [edx + 0x1404], 0
jne 0x47529e
mov eax, dword [ebp - 0x10]
push eax
call fcn.004bf27e
add esp, 4
mov ecx, dword [ebp - 0x434]
mov dword [ecx + 0x1404], eax
jmp 0x4752ec
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x1408]
cmp eax, dword [ebp - 0x10]
je 0x4752ec
mov ecx, dword [ebp - 0x434]
mov edx, dword [ecx + 0x1404]
push edx
call fcn.004bf16d
add esp, 4
mov eax, dword [ebp - 0x434]
mov dword [eax + 0x1404], 0
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.004bf27e
add esp, 4
mov edx, dword [ebp - 0x434]
mov dword [edx + 0x1404], eax
mov eax, dword [ebp - 0x434]
cmp dword [eax + 0x1404], 0
je 0x47534d
mov ecx, dword [ebp - 0x10]
push ecx
push 0
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x1404]
push eax
call fcn.004be790
add esp, 0xc
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [ebp - 0x434]
mov eax, dword [edx + 0x1404]
push eax
lea ecx, [ebp - 0x430]
call fcn.004e418f
mov ecx, dword [ebp - 0x434]
mov dword [ecx + 0x1400], eax
mov edx, dword [ebp - 0x434]
mov eax, dword [ebp - 0x10]
mov dword [edx + 0x1408], eax
lea ecx, [ebp - 0x430]
call fcn.004e428d
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x430]
call fcn.004e3fb5
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret