Function at 0x40177b
Capabilities:
Get common file path
Read .ini file

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x44b8ad
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xa5c
mov dword [ebp - 0xa54], ecx
lea ecx, [ebp - 0x534]
call fcn.004044f0
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0xa54]
mov dword [eax + 0x4678], 0x32
push str.OPTS.DAT
mov ecx, dword [ebp - 0xa54]
add ecx, 0x340c
push ecx
push 0x45c200
lea edx, [ebp - 0x42c]
push edx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea eax, [ebp - 0x42c]
push eax
push str.Data_file_name___s
call fcn.00401000
add esp, 8
lea ecx, [ebp - 0x42c]
push ecx
mov edx, dword [ebp - 0xa54]
add edx, 0x1780
push edx
call fcn.00429bd0
add esp, 8
lea eax, [ebp - 0x42c]
push eax
push 0xff
mov ecx, dword [ebp - 0xa54]
add ecx, 0x2a8c
push ecx
push 0x467998
push 0x45c21c
push 0x45c228
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0x42c]
push edx
push 0xff
mov eax, dword [ebp - 0xa54]
add eax, 0x2c8c
push eax
push 0x46799c
push 0x45c230
push 0x45c234
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x42c]
push ecx
push 0xff
mov edx, dword [ebp - 0xa54]
add edx, 0x2b8c
push edx
push 0x4679a0
push str.CompanyName
push 0x45c248
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x42c]
push eax
push 0x200
mov ecx, dword [ebp - 0xa54]
add ecx, 0x2d0c
push ecx
push 0x4679a4
push str.RegKey
push 0x45c258
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0xa54]
add edx, 0x2a8c
push edx
mov eax, dword [ebp - 0xa54]
add eax, 0x2b8c
push eax
mov ecx, dword [ebp - 0xa54]
add ecx, 0x2d0c
push ecx
push str._s_s_s
mov edx, dword [ebp - 0xa54]
add edx, 0x398c
push edx
call fcn.0042a6b4
add esp, 0x14
push 0x45c26c
mov eax, dword [ebp - 0xa54]
add eax, 0x2b8c
push eax
call fcn.0042a630
add esp, 8
test eax, eax
jne 0x40193c
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x2684], 1
lea edx, [ebp - 0x42c]
push edx
push 0xffffffffffffffff
push 0x45c274
push 0x45c27c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x3b98], eax
mov edx, dword [ebp - 0xa54]
cmp dword [edx + 0x3b98], 0xffffffff
jne 0x401980
mov eax, dword [ebp - 0xa54]
mov dword [eax + 0x3b98], 0
lea ecx, [ebp - 0x42c]
push ecx
push 0xffffffffffffffff
push str.XeroxCustomMode
push 0x45c294
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edx, dword [ebp - 0xa54]
mov dword [edx + 0x3b9c], eax
mov eax, dword [ebp - 0xa54]
cmp dword [eax + 0x3b9c], 0xffffffff
jne 0x4019c4
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x3b9c], 0
lea edx, [ebp - 0x42c]
push edx
push 0xffffffffffffffff
push str.ManagerJobDetectMode
push str.Model
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x28], eax
mov edx, dword [ebp - 0xa54]
cmp dword [edx + 0x28], 0xffffffff
jne 0x4019ff
mov eax, dword [ebp - 0xa54]
mov dword [eax + 0x28], 0
lea ecx, [ebp - 0x42c]
push ecx
push 0xff
mov edx, dword [ebp - 0xa54]
add edx, 0x2f0c
push edx
push 0x4679a8
push str.LangKey
push 0x45c2c4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x42c]
push eax
push 0xff
mov ecx, dword [ebp - 0xa54]
add ecx, 0x300c
push ecx
push 0x4679ac
push 0x45c2d0
push 0x45c2dc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0x42c]
push edx
push 0xff
mov eax, dword [ebp - 0xa54]
add eax, 0x310c
push eax
push 0x4679b0
push str.LangRegKey
push 0x45c2f4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0xa54]
add ecx, 0x2f0c
push ecx
mov edx, dword [ebp - 0xa54]
add edx, 0x310c
push edx
push 0x45c300
mov eax, dword [ebp - 0xa54]
add eax, 0x310c
push eax
call fcn.0042a6b4
add esp, 0x10
lea ecx, [ebp - 0x42c]
push ecx
push 0xff
mov edx, dword [ebp - 0xa54]
add edx, 0x268c
push edx
push 0x4679b4
push str.LangRegValue
push 0x45c318
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x42c]
push eax
push 0
push str.Polling_DefInterval
push 0x45c338
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x3b8c], eax
lea edx, [ebp - 0x42c]
push edx
push 0
push str.IsUSBIOByDeviceMon
push 0x45c350
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x3ba0], eax
lea edx, [ebp - 0x42c]
push edx
push 0
push str.SizeOfBuffer
push 0x45c364
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x3b90], eax
mov edx, dword [ebp - 0xa54]
cmp dword [edx + 0x3b90], 0
ja 0x401b77
mov eax, dword [ebp - 0xa54]
mov dword [eax + 0x3b90], 0x4b
mov ecx, dword [ebp - 0xa54]
cmp dword [ecx + 0x3ba0], 0
je 0x401c45
lea edx, [ebp - 0x42c]
push edx
push 0xff
mov eax, dword [ebp - 0xa54]
add eax, 0x3bb0
push eax
push 0x4679b8
push str.FileName
push 0x45c374
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x42c]
push ecx
push 0xff
lea edx, [ebp - 0x530]
push edx
push 0x4679bc
push 0x45c37c
push 0x45c380
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x10
push 0
lea eax, [ebp - 0x530]
push eax
call fcn.0042a3f8
add esp, 0xc
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x3cb0], eax
lea edx, [ebp - 0x42c]
push edx
push 0xff
lea eax, [ebp - 0x530]
push eax
push 0x4679c0
push 0x45c388
push str.DevMon
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x10
push 0
lea ecx, [ebp - 0x530]
push ecx
call fcn.0042a3f8
add esp, 0xc
mov edx, dword [ebp - 0xa54]
mov dword [edx + 0x3cb4], eax
lea eax, [ebp - 0x42c]
push eax
push 0
push str.IsJobMonitior
push 0x45c3a4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x3ba4], eax
lea edx, [ebp - 0x42c]
push edx
push 0
push str.IsRCP
push 0x45c3b4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x4670], eax
lea edx, [ebp - 0x42c]
push edx
push 0xffffffffffffffff
push str.IsNetworkSupported
push 0x45c3d0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x3b94], eax
mov edx, dword [ebp - 0xa54]
cmp dword [edx + 0x3b94], 0xffffffff
jne 0x401cd3
mov eax, dword [ebp - 0xa54]
mov dword [eax + 0x3b94], 1
lea ecx, [ebp - 0x42c]
push ecx
push 0xffffffffffffffff
push str.IsTroubleShooting
push 0x45c3ec
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edx, dword [ebp - 0xa54]
mov dword [edx + 0x4674], eax
mov eax, dword [ebp - 0xa54]
cmp dword [eax + 0x4674], 0xffffffff
jne 0x401d17
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x4674], 1
lea edx, [ebp - 0x42c]
push edx
push 0xffffffffffffffff
push str.IsForceToCheckJobID
push 0x45c408
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x34], eax
mov edx, dword [ebp - 0xa54]
cmp dword [edx + 0x34], 0xffffffff
jne 0x401d52
mov eax, dword [ebp - 0xa54]
mov dword [eax + 0x34], 0
lea ecx, [ebp - 0x42c]
push ecx
push 0xffffffffffffffff
push str.IsUSBPrintingBit
push 0x45c424
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edx, dword [ebp - 0xa54]
mov dword [edx + 0x24], eax
mov eax, dword [ebp - 0xa54]
cmp dword [eax + 0x24], 0xffffffff
jne 0x401d8d
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x24], 0
lea edx, [ebp - 0x42c]
push edx
push 0xffffffffffffffff
push str.IsNetworkDeviceID
push 0x45c440
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x20], eax
mov edx, dword [ebp - 0xa54]
cmp dword [edx + 0x20], 0xffffffff
jne 0x401dc8
mov eax, dword [ebp - 0xa54]
mov dword [eax + 0x20], 1
lea ecx, [ebp - 0x42c]
push ecx
push 0xffffffffffffffff
push str.IsJobAccount
push 0x45c458
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edx, dword [ebp - 0xa54]
mov dword [edx + 0x1c], eax
mov eax, dword [ebp - 0xa54]
cmp dword [eax + 0x1c], 0xffffffff
jne 0x401e03
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x1c], 0
lea edx, [ebp - 0x42c]
push edx
push 0xffffffffffffffff
push str.IsUPDMode
push 0x45c46c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x467c], eax
mov edx, dword [ebp - 0xa54]
cmp dword [edx + 0x467c], 0xffffffff
jne 0x401e47
mov eax, dword [ebp - 0xa54]
mov dword [eax + 0x467c], 0
lea ecx, [ebp - 0x42c]
push ecx
push 0xffffffffffffffff
push str.IsXML
push 0x45c47c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edx, dword [ebp - 0xa54]
mov dword [edx + 0x1778], eax
lea eax, [ebp - 0x42c]
push eax
push 0xff
mov ecx, dword [ebp - 0xa54]
add ecx, 0x1575
push ecx
push 0x4679c4
push str.DefaultFile
push 0x45c48c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0x42c]
push edx
push 0xff
mov eax, dword [ebp - 0xa54]
add eax, 0x1675
push eax
push 0x4679c8
push str.ReceivedFile
push 0x45c4a0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x42c]
push ecx
push 0xff
mov edx, dword [ebp - 0xa54]
add edx, 0x1475
push edx
push 0x4679cc
push 0x45c4a4
push 0x45c4a8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
ja 0x401f12
push str._SmartPanel_sm.xml
mov eax, dword [ebp - 0xa54]
add eax, 0x1475
push eax
call fcn.00429bd0
add esp, 8
lea ecx, [ebp - 0x42c]
push ecx
push 0xff
mov edx, dword [ebp - 0xa54]
add edx, 0x1375
push edx
push 0x4679d0
push str.DefaultHTML
push 0x45c4cc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
ja 0x401f5d
push str.main.html
mov eax, dword [ebp - 0xa54]
add eax, 0x1475
push eax
call fcn.00429bd0
add esp, 8
lea ecx, [ebp - 0x42c]
push ecx
push 0x400
mov edx, dword [ebp - 0xa54]
add edx, 0xf75
push edx
push 0x4679d4
push 0x45c4dc
push 0x45c4e8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0xa54]
add eax, 0x1575
push eax
call fcn.0042a0a0
add esp, 4
test eax, eax
jbe 0x401fed
lea ecx, [ebp - 0x638]
push ecx
push pe_nt_image_headers32
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
mov edx, dword [ebp - 0xa54]
add edx, 0x1675
push edx
lea eax, [ebp - 0x638]
push eax
call fcn.00429be0
add esp, 8
lea ecx, [ebp - 0x638]
push ecx
mov edx, dword [ebp - 0xa54]
add edx, 0x1675
push edx
call fcn.00429bd0
add esp, 8
mov eax, dword [ebp - 0xa54]
cmp dword [eax + 0x1778], 0xffffffff
jne 0x40200c
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x1778], 0
mov edx, dword [ebp - 0xa54]
add edx, 0x1675
push edx
mov eax, dword [ebp - 0xa54]
mov ecx, dword [eax + 0x1778]
push ecx
push str.m_bSupportXML_is__d___s
call fcn.00401000
add esp, 0xc
lea edx, [ebp - 0x42c]
push edx
push 0xffffffffffffffff
push str.IsBlackOnlyMode
push 0x45c514
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x177c], eax
mov edx, dword [ebp - 0xa54]
cmp dword [edx + 0x177c], 0xffffffff
jne 0x402077
mov eax, dword [ebp - 0xa54]
mov dword [eax + 0x177c], 0
push 0xff
push 0
lea ecx, [ebp - 0x530]
push ecx
call fcn.0042a3a0
add esp, 0xc
lea edx, [ebp - 0x42c]
push edx
push 0xff
lea eax, [ebp - 0x530]
push eax
push 0x4679d8
push str.TSGType
push str.OPTION
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x530]
push ecx
lea ecx, [ebp - 0x534]
call fcn.0043d92c
mov ecx, dword [ebp - 0xa54]
call fcn.00403808
lea edx, [ebp - 0x42c]
push edx
push 0xffffffffffffffff
push str.IsBuyNow
push 0x45c538
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0xd70], eax
mov edx, dword [ebp - 0xa54]
cmp dword [edx + 0xd70], 0xffffffff
jne 0x402116
mov eax, dword [ebp - 0xa54]
mov dword [eax + 0xd70], 1
lea ecx, [ebp - 0x42c]
push ecx
push 0xffffffffffffffff
push str.IsTonerStatus
push 0x45c550
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edx, dword [ebp - 0xa54]
mov dword [edx + 0x3ba8], eax
mov eax, dword [ebp - 0xa54]
cmp dword [eax + 0x3ba8], 0xffffffff
jne 0x40215a
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x3ba8], 1
lea edx, [ebp - 0x42c]
push edx
push 0x3ff
mov eax, dword [ebp - 0xa54]
add eax, 0x1e84
push eax
push 0x4679dc
push str.TonerLowStatus
push 0x45c568
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x42c]
push ecx
push 0x3ff
mov edx, dword [ebp - 0xa54]
add edx, 0x2284
push edx
push 0x4679e0
push str.TonerErrStatus
push 0x45c580
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x42c]
push eax
push 0xff
mov ecx, dword [ebp - 0xa54]
add ecx, 0x4368
push ecx
push 0x4679e4
push 0x45c588
push 0x45c590
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0x42c]
push edx
push 0x3ff
mov eax, dword [ebp - 0xa54]
add eax, 0x3e68
push eax
push 0x4679e8
push str.OrderURL
push 0x45c5a4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x42c]
push ecx
push 0
push str.NewTonerLevel
push 0x45c5bc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edx, dword [ebp - 0xa54]
mov dword [edx + 0x4668], eax
lea eax, [ebp - 0x42c]
push eax
push 0
push str.Color
push 0x45c5cc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x466c], eax
lea edx, [ebp - 0x42c]
push edx
push 0xff
lea eax, [ebp - 0x530]
push eax
push 0x4679ec
push str.imagename
push str.Image
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x530]
push ecx
mov edx, dword [ebp - 0xa54]
add edx, 0x340c
push edx
push 0x45c5e8
mov eax, dword [ebp - 0xa54]
add eax, 0x1980
push eax
call fcn.0042a6b4
add esp, 0x10
lea ecx, [ebp - 0x42c]
push ecx
push 0xff
mov edx, dword [ebp - 0xa54]
add edx, 0x1b84
push edx
push 0x4679f0
push str.psuname
push 0x45c5f8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0xa54]
call fcn.00402800
test eax, eax
je 0x402345
mov eax, dword [ebp - 0xa54]
add eax, 0x278c
push eax
call fcn.0042a0a0
add esp, 4
test eax, eax
jne 0x402345
lea ecx, [ebp - 0x42c]
push ecx
push 0xa
lea edx, [ebp - 0x644]
push edx
push 0x4679f4
push 0x45c5fc
push 0x45c608
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x644]
push eax
mov ecx, dword [ebp - 0xa54]
add ecx, 0x278c
push ecx
call fcn.00429bd0
add esp, 8
lea edx, [ebp - 0x42c]
push edx
push 0xffffffffffffffff
push str.IsFindPosition
push 0x45c624
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x2c], eax
mov edx, dword [ebp - 0xa54]
cmp dword [edx + 0x2c], 0xffffffff
jne 0x402380
mov eax, dword [ebp - 0xa54]
mov dword [eax + 0x2c], 0
lea ecx, [ebp - 0x42c]
push ecx
push 0xffffffffffffffff
push str.PosValueToIgnoreTray
push str.TrayIcon
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov edx, dword [ebp - 0xa54]
mov dword [edx + 0x30], eax
mov eax, dword [ebp - 0xa54]
cmp dword [eax + 0x30], 0xffffffff
jne 0x4023bb
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x30], 0x2710
lea ecx, [ebp - 0x214]
call fcn.004044f0
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0xa54]
add edx, 0x278c
push edx
mov eax, dword [ebp - 0xa54]
add eax, 0x340c
push eax
push 0x45c654
mov ecx, dword [ebp - 0xa54]
add ecx, 0x320c
push ecx
call fcn.0042a6b4
add esp, 0x10
mov edx, dword [ebp - 0xa54]
add edx, 0x320c
push edx
push 0x45c66c
call fcn.00401000
add esp, 8
lea eax, [ebp - 0x32c]
push eax
mov ecx, dword [ebp - 0xa54]
add ecx, 0x320c
push ecx
call fcn.0042a24e
add esp, 8
mov dword [ebp - 0x538], eax
cmp dword [ebp - 0x538], 0xffffffff
jne 0x402491
mov edx, dword [ebp - 0xa54]
add edx, 0x300c
push edx
mov eax, dword [ebp - 0xa54]
add eax, 0x340c
push eax
push str._slangpanel__s.trs
mov ecx, dword [ebp - 0xa54]
add ecx, 0x320c
push ecx
call fcn.0042a6b4
add esp, 0x10
push 0x45c69c
mov edx, dword [ebp - 0xa54]
add edx, 0x278c
push edx
call fcn.00429bd0
add esp, 8
jmp 0x4024a0
mov eax, dword [ebp - 0x538]
push eax
call fcn.0042a31b
add esp, 4
mov ecx, dword [ebp - 0xa54]
add ecx, 0x340c
push ecx
push str._shelp.
lea edx, [ebp - 0x20c]
push edx
call fcn.0042a6b4
add esp, 0xc
lea eax, [ebp - 0x20c]
push eax
push str.szHelpFolerPath_file_path___s
call fcn.00401000
add esp, 8
push 0x45c6cc
lea ecx, [ebp - 0x534]
call fcn.0043c441
test eax, eax
jl 0x402551
lea ecx, [ebp - 0x20c]
push ecx
call fcn.0042a0a0
add esp, 4
test eax, eax
jbe 0x40254c
lea edx, [ebp - 0x32c]
push edx
lea eax, [ebp - 0x20c]
push eax
call fcn.0042a24e
add esp, 8
mov dword [ebp - 0x538], eax
cmp dword [ebp - 0x538], 0xffffffff
jne 0x402530
mov ecx, dword [ebp - 0xa54]
mov dword [ecx + 0x14], 0
jmp 0x40253d
mov edx, dword [ebp - 0xa54]
mov dword [edx + 0x14], 1
mov eax, dword [ebp - 0x538]
push eax
call fcn.0042a31b
add esp, 4
jmp 0x40265b
push str.HTML
lea ecx, [ebp - 0x534]
call fcn.0043c441
test eax, eax
jl 0x4025b0
lea ecx, [ebp - 0x844]
push ecx
push 0x200
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
push 0x45c6d8
lea edx, [ebp - 0x844]
push edx
call fcn.00429be0
add esp, 8
lea eax, [ebp - 0x844]
push eax
mov ecx, dword [ebp - 0xa54]
add ecx, 0xc
call fcn.0043d92c
mov ecx, dword [ebp - 0xa54]
call fcn.0040429a
jmp 0x40265b
lea ecx, [ebp - 0x20c]
push ecx
call fcn.0042a0a0
add esp, 4
test eax, eax
jbe 0x40265b
mov edx, dword [ebp - 0xa54]
mov dword [edx + 0x14], 1
lea eax, [ebp - 0x32c]
push eax
lea ecx, [ebp - 0x20c]
push ecx
call fcn.0042a24e
add esp, 8
mov dword [ebp - 0x538], eax
cmp dword [ebp - 0x538], 0xffffffff
jne 0x40264c
mov edx, dword [ebp - 0xa54]
mov dword [edx + 0x14], 0
lea eax, [ebp - 0xa44]
push eax
push 0x200
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
push str.redirect.htm
lea ecx, [ebp - 0xa44]
push ecx
call fcn.00429be0
add esp, 8
lea edx, [ebp - 0xa44]
push edx
mov ecx, dword [ebp - 0xa54]
add ecx, 0xc
call fcn.0043d92c
mov ecx, dword [ebp - 0xa54]
call fcn.0040429a
mov eax, dword [ebp - 0x538]
push eax
call fcn.0042a31b
add esp, 4
lea ecx, [ebp - 0x430]
call fcn.004044f0
mov byte [ebp - 4], 2
push 0x45c6f8
lea ecx, [ebp - 0x210]
call fcn.0043d811
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x430]
push ecx
push ecx
mov ecx, esp
mov dword [ebp - 0xa48], esp
lea edx, [ebp - 0x210]
push edx
call fcn.0043d518
mov dword [ebp - 0xa58], eax
mov eax, dword [ebp - 0xa58]
mov dword [ebp - 0xa5c], eax
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0xa54]
add ecx, 0x398c
push ecx
mov edx, esp
mov dword [ebp - 0xa4c], esp
push ecx
mov ecx, edx
call fcn.0043d811
mov dword [ebp - 0xa60], eax
mov ecx, dword [ebp - 0xa54]
mov byte [ebp - 4], 3
call fcn.004030e3
mov dword [ebp - 0xa64], eax
cmp dword [ebp - 0xa64], 0
jne 0x40270a
mov eax, dword [ebp - 0xa54]
add eax, 0x398c
push eax
push 0x45c704
call fcn.00401000
add esp, 8
push 0x200
push 0
mov ecx, dword [ebp - 0xa54]
add ecx, 0x288c
push ecx
call fcn.0042a3a0
add esp, 0xc
lea ecx, [ebp - 0x430]
call fcn.00404570
cmp eax, 0x200
jae 0x40274b
lea ecx, [ebp - 0x430]
call fcn.00404570
mov dword [ebp - 0xa68], eax
jmp 0x402755
mov dword [ebp - 0xa68], 0x1ff
mov edx, dword [ebp - 0xa68]
push edx
lea ecx, [ebp - 0x430]
call fcn.00404560
push eax
mov eax, dword [ebp - 0xa54]
add eax, 0x288c
push eax
call fcn.0042a150
add esp, 0xc
mov ecx, dword [ebp - 0xa54]
add ecx, 0x340c
push ecx
push str._sCODE.dat
mov edx, dword [ebp - 0xa54]
add edx, 0x360c
push edx
call fcn.0042a6b4
add esp, 0xc
mov dword [ebp - 0xa50], 1
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x210]
call fcn.0043d7a3
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x430]
call fcn.0043d7a3
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x214]
call fcn.0043d7a3
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x534]
call fcn.0043d7a3
mov eax, dword [ebp - 0xa50]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret