Function at 0x406df0
Capabilities:
Get geographical location
Read .ini file

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x98c
mov eax, dword [0x444380]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x20], 0
mov dword [ebp - 0xc], 0
mov dword [ebp - 0x894], 0
mov dword [ebp - 0x824], 0
mov dword [ebp - 8], 0
mov dword [ebp - 4], 1
lea eax, [ebp - 0x20]
push eax
mov ecx, 0x46f978
call fcn.00404cf0
cmp dword [ebp - 0x20], 1
jne 0x406e70
lea ecx, [ebp - 8]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00407e20
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 1
je 0x406e65
jmp 0x407db1
mov eax, dword [ebp - 8]
mov dword [ebp - 0x824], eax
jmp 0x406e79
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x824], ecx
mov edx, dword [ebp - 0x824]
push edx
push 0x64
push 0x46f0e0
push 0x43bc37
push str.vhld_reg_path
push 0x43bc60
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x64
push 0x46f148
push 0x43bc43
push str.installer_reg_path
push 0x43bc84
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
push 0x46f1b0
push 0x43bc4f
push str.client_reg_path
push 0x43bca4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0x64
push 0x46f218
push 0x43bc5e
push str.host_ip_url
push 0x43bcc0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x64
push 0x46f280
push 0x43bc5f
push str.program_def_zip
push 0x43bce0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0
push str.bg_red
push 0x43bcf8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x89c], eax
mov edx, dword [ebp - 0x824]
push edx
push 0
push str.bg_green
push 0x43bd14
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x898], eax
mov eax, dword [ebp - 0x824]
push eax
push 0
push str.bg_blue
push str.BRAND_CONFIG
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x8a0], eax
movzx ecx, byte [ebp - 0x89c]
movzx edx, byte [ebp - 0x898]
shl edx, 8
or ecx, edx
movzx eax, byte [ebp - 0x8a0]
shl eax, 0x10
or ecx, eax
mov dword [0x46f144], ecx
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
push str.666666666666666
push str.666666666666666666
push 0x43bd50
push str.SESSION
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0x64
push str.999999999999999
push str.999999999999999999
push 0x43bd74
push str.SERIAL
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x80
push str.Application_Download_Wizard
push 0x43bd84
push 0x43bda0
push str.TITLE
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
lea edx, [ebp - 0x820]
push edx
push str.installer.gif
push str.gif_value
push 0x43bdbc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x820]
push eax
push 0x64
push str.installer.gif
call fcn.004151ab
add esp, 0xc
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
lea edx, [ebp - 0x820]
push edx
push str.text.txt
push str.text_value
push 0x43bdd4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x820]
push eax
push 0x64
push str.text.txt
call fcn.004151ab
add esp, 0xc
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
lea edx, [ebp - 0x820]
push edx
push 0x46f488
push str.setup_value
push 0x43bdec
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x820]
push eax
push 0x64
push 0x46f488
call fcn.004151ab
add esp, 0xc
push 0x64
push 0x445e10
call fcn.00410290
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 1
je 0x407109
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
push 0x445e10
push str.0.00
push str.installer_value
push str.VERSION
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov dword [ebp - 4], 1
mov edx, dword [ebp - 0x824]
push edx
push 0
push str.enable
push 0x43be20
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x46f004], eax
mov eax, dword [ebp - 0x824]
push eax
push 0x64
push 0x46e398
push 0x43bc6d
push str.version
push 0x43be40
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0x400
push 0x46dac0
push 0x43bc6e
push str.path_32
push 0x43be60
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0x400
push 0x462138
push 0x43bc6f
push str.path_64
push str.FLASH_PLAYER_INSTALLER
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x400
push 0x46f4f0
push 0x43bc83
push 0x43be98
push 0x43bea0
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0x800
push 0x46d220
push str.http:__reportinstaller.random_logic.com_logs.asp
push 0x43bee0
push str.HTTP_REPORT
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0x800
push 0x46c8e8
push 0x43bc91
push 0x43bef4
push str.PIXEL_TRACKING
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0
call fcn.00407e00
add esp, 4
push eax
call fcn.00415de6
add esp, 4
call fcn.00415df3
cdq
mov ecx, 0x64
idiv ecx
add edx, 1
mov dword [ebp - 0x894], edx
mov edx, dword [ebp - 0x824]
push edx
push 0
push 0x43bf0c
push 0x43bf14
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
jbe 0x40726c
push str.FILES_URL_NO_TEST
push 0x800
lea eax, [ebp - 0x820]
push eax
call fcn.004151ab
add esp, 0xc
jmp 0x4073b7
mov ecx, dword [ebp - 0x824]
push ecx
push 3
push str.number_of_serials
push 0x43bf50
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x20], eax
xor ecx, ecx
mov eax, dword [ebp - 0x20]
mov edx, 4
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.00414604
add esp, 4
mov dword [ebp - 0x988], eax
mov eax, dword [ebp - 0x988]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x4072c5
mov dword [ebp - 4], 2
jmp 0x407db1
mov ecx, dword [ebp - 0x20]
push ecx
push 0
mov edx, dword [ebp - 0xc]
push edx
call fcn.00415670
add esp, 0xc
mov dword [ebp - 0x8a8], 0
jmp 0x4072f2
mov eax, dword [ebp - 0x8a8]
add eax, 1
mov dword [ebp - 0x8a8], eax
mov ecx, dword [ebp - 0x8a8]
cmp ecx, dword [ebp - 0x20]
jae 0x4073b7
mov edx, dword [ebp - 0x8a8]
add edx, 1
push edx
push str.value_precent_for_serial__d
push 0x800
lea eax, [ebp - 0x820]
push eax
call fcn.00414cec
add esp, 0x10
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
lea edx, [ebp - 0x820]
push edx
push str.USER_DYNAMIC_CHOICE
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x8a8]
mov edx, dword [ebp - 0xc]
mov dword [edx + ecx*4], eax
cmp dword [ebp - 0x8a8], 0
je 0x407379
mov eax, dword [ebp - 0x8a8]
mov ecx, dword [ebp - 0xc]
mov edx, dword [ecx + eax*4]
mov eax, dword [ebp - 0x8a8]
mov ecx, dword [ebp - 0xc]
add edx, dword [ecx + eax*4 - 4]
mov eax, dword [ebp - 0x8a8]
mov ecx, dword [ebp - 0xc]
mov dword [ecx + eax*4], edx
mov edx, dword [ebp - 0x8a8]
mov eax, dword [ebp - 0xc]
mov ecx, dword [ebp - 0x894]
cmp ecx, dword [eax + edx*4]
ja 0x4073b2
mov edx, dword [ebp - 0x8a8]
add edx, 1
push edx
push str.FILES_URL__d
push 0x800
lea eax, [ebp - 0x820]
push eax
call fcn.00414cec
add esp, 0x10
jmp 0x4073b7
jmp 0x4072e3
mov ecx, dword [ebp - 0x824]
push ecx
push 0
push 0x43bfa4
lea edx, [ebp - 0x820]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x46d21c], eax
cmp dword [0x46d21c], 0
je 0x407470
mov dword [ebp - 0x8ac], 0
jmp 0x4073ff
mov eax, dword [ebp - 0x8ac]
add eax, 1
mov dword [ebp - 0x8ac], eax
mov ecx, dword [ebp - 0x8ac]
cmp ecx, dword [0x46d21c]
jge 0x40746e
mov edx, dword [ebp - 0x8ac]
add edx, 1
push edx
push str.value_d
push 0x64
lea eax, [ebp - 0x890]
push eax
call fcn.00414cec
add esp, 0x10
mov ecx, dword [ebp - 0x824]
push ecx
push 0x800
mov edx, dword [ebp - 0x8ac]
shl edx, 0xb
add edx, 0x45a930
push edx
mov eax, dword [ebp - 0x8ac]
shl eax, 0xb
add eax, 0x45a930
push eax
lea ecx, [ebp - 0x890]
push ecx
lea edx, [ebp - 0x820]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
jmp 0x4073f0
jmp 0x4074a0
mov dword [0x46d21c], 1
mov eax, dword [ebp - 0x824]
push eax
push 0x800
push 0x45a930
push 0x43bc92
push 0x43bfb8
push str.DEFAULT_URL
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0xa
lea edx, [ebp - 0x1c]
push edx
push 0x43bfcc
push str.testver
lea eax, [ebp - 0x820]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 5
push 0x43bfd8
push str.CANCEL_SECONDS
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x459f00], eax
mov edx, dword [ebp - 0x824]
push edx
push 0x64
push 0x46c850
push 0x43bc93
push 0x43bff0
push 0x43bff8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x64
push 0x46d0e8
push 0x43bcb1
push str.value_default
push str.IDISP_LINK
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0
push 0x43c020
push str.IDISP_MODE
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x45a564], eax
mov edx, dword [ebp - 0x824]
push edx
push 0
push 0x43c034
push str.BRAND_ID
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x459f14], eax
mov eax, dword [ebp - 0x824]
push eax
push 0
push 0x43c048
push 0x43c050
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov word [0x459f18], ax
mov ecx, dword [ebp - 0x824]
push ecx
push 0xa
push 0x445e74
push 0x43c05c
push str.lang_name
push str.LANGUAGE_ID
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0x32
push 0x46da20
push str.Downloading
push str.value_downloading
push 0x43c098
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x32
push 0x45a890
push str.Transfer_rate:
push str.value_download_rate
push 0x43c0cc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0x32
push 0x46c61c
push str.Estimated_time_left:
push str.value_time_left
push 0x43c104
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0x32
push 0x46c8b4
push str.Completed
push str.value_completed
push 0x43c130
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x32
push 0x46d1a0
push 0x43c140
push str.value_button_cancel
push 0x43c15c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0x32
push 0x46ef6c
push str.Continue
push str.value_button_continue
push 0x43c190
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0x32
push 0x462944
push str.Do_you_want_to_continue_downloading_
push str.value_msg_cancel
push 0x43c1dc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x100
push 0x46ec60
push str.Failed_to_connect_to_the_Internet.__Please_check_your_connection_and_firewall_access_rules_and_try_again.__Clicking__OK__will_terminate_the_process.
push str.value_connect_fail
push 0x43c29c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x46ec60
call fcn.00403eb0
add esp, 4
mov ecx, dword [ebp - 0x824]
push ecx
push 0x100
push 0x46ed60
push str.Installation_failed.__Please_try_again_or_contact_our_support.__Clicking__OK__will_terminate_the_process.
push str.value_install_fail
push 0x43c330
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x46ed60
call fcn.00403eb0
add esp, 4
push 0x14
push 0
push 0x46f064
call fcn.00415670
add esp, 0xc
mov edx, dword [ebp - 0x824]
push edx
push 0x14
push 0x46f064
push 0x43bcb2
push str.value_offline_be_bigger
push 0x43c358
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x800
push 0x459700
push str.Installing_this_application_requires_the_latest_version_of_the_Adobe_Flash_Player._Press__Yes__to_download_and_install_it.
push str.value_fp_install_msg
push 0x43c3fc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x459700
call fcn.00403eb0
add esp, 4
mov ecx, dword [ebp - 0x824]
push ecx
push 0x200
push 0x46c650
push str.Adobe_Flash_Player_Installer
push str.value_fp_install_title
push str.CONTROL_TEXTS
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x46c650
call fcn.00403eb0
add esp, 4
mov edx, dword [ebp - 0x824]
push edx
push 0x64
push 0x46f2e8
push 0x43bcb3
push str.real_username
push 0x43c464
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x64
push 0x46f350
push 0x43bccd
push str.orig_cid
push 0x43c47c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
push 0x46f3b8
push 0x43bcce
push 0x43c488
push 0x43c48c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0xffffffffffffffff
push str.CountryID
push 0x43c4a4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x44307c], eax
mov eax, dword [ebp - 0x824]
push eax
push 0xffffffffffffffff
push str.CountryF
push 0x43c4bc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x4430e4], eax
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
push 0x46f420
push 0x43bccf
push str.user_regkey
push 0x43c4d4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0
push str.overwrite_regkey
push str.USER_INFO
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x46f0dc], eax
mov eax, dword [ebp - 0x824]
push eax
push 0x64
push str.111111111111111
push 0x43c500
push 0x43c504
push 0x43c50c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0x800
lea edx, [ebp - 0x820]
push edx
push 0x43c510
push 0x43c514
push str.TEST_DATA
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push str.111111111111111
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0x820]
push ecx
push str._s_testver_s_ic_s
push 0x800
push 0x4430e8
call fcn.00414cec
add esp, 0x18
push 0x445e08
push 0x43c53c
push 0
push 0x46f1b0
push 0x80000001
call fcn.0040db80
add esp, 0x14
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 1
je 0x407940
mov edx, dword [ebp - 0x824]
push edx
push 1
push 0x43c540
push 0x43c548
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov word [0x445e08], ax
mov dword [ebp - 4], 1
mov eax, dword [ebp - 0x824]
push eax
push 0xa
push 0x43c54c
push str.MIN_DISP_TIME_SECONDS
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov word [0x46e394], ax
movzx ecx, word [0x46e394]
cmp ecx, 0xa
jge 0x407974
mov word [0x46e394], 0xa
mov edx, dword [ebp - 0x824]
push edx
push 0
push 0x43c56c
push 0x43c574
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov word [0x46d14c], ax
mov eax, dword [ebp - 0x824]
push eax
push 1
push str.unknownUser
push 0x43c584
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x8a4], eax
cmp dword [ebp - 0x8a4], 0
je 0x4079cf
cmp dword [ebp - 0x8a4], 0
je 0x4079ec
movzx ecx, word [0x46d14c]
test ecx, ecx
jne 0x4079ec
mov word [0x46d14c], 0
mov edx, dword [0x462938]
and edx, 0xffffffbf
mov dword [0x462938], edx
jmp 0x407db1
movzx eax, word [0x46d14c]
push eax
push str.Campaign_d
push 0x800
lea ecx, [ebp - 0x820]
push ecx
call fcn.00414cec
add esp, 0x10
mov edx, dword [ebp - 0x824]
push edx
push 0
push 0x43c594
lea eax, [ebp - 0x820]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov word [0x46d14c], ax
movzx ecx, word [0x46d14c]
test ecx, ecx
jne 0x407a4d
mov edx, dword [0x462938]
and edx, 0xffffffbf
mov dword [0x462938], edx
jmp 0x407db1
mov word [ebp - 0x8b0], 0
jmp 0x407a6a
mov ax, word [ebp - 0x8b0]
add ax, 1
mov word [ebp - 0x8b0], ax
movzx ecx, word [ebp - 0x8b0]
movzx edx, word [0x46d14c]
cmp ecx, edx
jge 0x407c9e
movzx eax, word [ebp - 0x8b0]
add eax, 1
push eax
push str.group_d
push 0x64
lea ecx, [ebp - 0x890]
push ecx
call fcn.00414cec
add esp, 0x10
mov edx, dword [ebp - 0x824]
push edx
push 0x32
lea eax, [ebp - 0x980]
push eax
push 0x43bced
lea ecx, [ebp - 0x890]
push ecx
lea edx, [ebp - 0x820]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x890]
push eax
call fcn.00414ad0
add esp, 4
test eax, eax
je 0x407b10
movzx ecx, word [ebp - 0x8b0]
imul ecx, ecx, 0x64
add ecx, 0x459f20
push ecx
movzx edx, word [ebp - 0x8b0]
imul edx, edx, 0x32
add edx, 0x45a568
push edx
lea eax, [ebp - 0x980]
push eax
call fcn.00406650
add esp, 0xc
jmp 0x407b2e
push 0x43c5a4
movzx ecx, word [ebp - 0x8b0]
imul ecx, ecx, 0x64
add ecx, 0x459f20
push ecx
call fcn.00415030
add esp, 8
movzx edx, word [ebp - 0x8b0]
imul edx, edx, 0x64
add edx, 0x459f20
push edx
push str.gr_s
push 0x64
lea eax, [ebp - 0x980]
push eax
call fcn.00414cec
add esp, 0x10
mov ecx, dword [ebp - 0x824]
push ecx
push 0
push str.number
lea edx, [ebp - 0x980]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
movzx ecx, word [ebp - 0x8b0]
mov word [ecx*2 + 0x46ec40], ax
movzx edx, word [ebp - 0x8b0]
movzx eax, word [edx*2 + 0x46ec40]
test eax, eax
je 0x407c99
mov dword [ebp - 0x984], 0
jmp 0x407bb1
mov ecx, dword [ebp - 0x984]
add ecx, 1
mov dword [ebp - 0x984], ecx
movzx edx, word [ebp - 0x8b0]
movzx eax, word [edx*2 + 0x46ec40]
cmp dword [ebp - 0x984], eax
je 0x407c99
mov ecx, dword [ebp - 0x984]
add ecx, 1
push ecx
push str.opt_d
push 0x64
lea edx, [ebp - 0x890]
push edx
call fcn.00414cec
add esp, 0x10
mov eax, dword [ebp - 0x824]
push eax
push 0x32
lea ecx, [ebp - 0x918]
push ecx
push 0x43bcee
lea edx, [ebp - 0x890]
push edx
lea eax, [ebp - 0x980]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x890]
push ecx
call fcn.00414ad0
add esp, 4
test eax, eax
je 0x407c75
movzx edx, word [ebp - 0x8b0]
imul edx, edx, 0x1388
mov eax, dword [ebp - 0x984]
imul eax, eax, 0x64
lea ecx, [edx + eax + 0x445e80]
push ecx
movzx edx, word [ebp - 0x8b0]
imul edx, edx, 0x9c4
mov eax, dword [ebp - 0x984]
imul eax, eax, 0x32
lea ecx, [edx + eax + 0x462978]
push ecx
lea edx, [ebp - 0x918]
push edx
call fcn.00406650
add esp, 0xc
jmp 0x407c94
push str.222222
push 0x64
movzx eax, word [ebp - 0x8b0]
imul eax, eax, 0x64
add eax, 0x459f20
push eax
call fcn.004151ab
add esp, 0xc
jmp 0x407ba2
jmp 0x407a58
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
push 0x46e330
push str.999999999999999
push str.default_serial_close
lea edx, [ebp - 0x820]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x64
push 0x45a8c8
push str.999999999999999
push str.default_serial_cont
lea ecx, [ebp - 0x820]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0xf
push 0x46da58
push 0x43bcef
push str.offl_prom_full_gif
push 0x43c60c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0xf
push 0x46c5b8
push 0x43bcf7
push str.on_gif
push 0x43c620
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0xf
push 0x46e2c0
push 0x43bd05
push str.off_gif
push 0x43c634
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0x14
push 0x46f078
push 0x43bd06
push str.caption_gif
push str.FILE_NAME
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [0x462938]
or eax, 0x40
mov dword [0x462938], eax
mov ecx, dword [ebp - 0x824]
push ecx
push 0x32
push 0x46d16c
push 0x43bd07
push str.value
push str.GROUP_FIRST_LINE
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
call fcn.0040b2c0
xor edx, edx
jne 0x406e2c
mov eax, dword [ebp - 8]
push eax
call fcn.0040fef0
add esp, 4
cmp dword [ebp - 8], 0
je 0x407de2
mov ecx, dword [ebp - 8]
mov dword [ebp - 0x98c], ecx
mov edx, dword [ebp - 0x98c]
push edx
call fcn.00414c52
add esp, 4
mov dword [ebp - 8], 0
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00414b5b
mov esp, ebp
pop ebp
ret