Function at 0x406c20
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.00404b20
cmp dword [ebp - 0x20], 1
jne 0x406ca0
lea ecx, [ebp - 8]
push ecx
mov edx, dword [ebp + 8]
push edx
call fcn.00407c50
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 1
je 0x406c95
jmp 0x407be1
mov eax, dword [ebp - 8]
mov dword [ebp - 0x824], eax
jmp 0x406ca9
mov ecx, dword [ebp + 8]
mov dword [ebp - 0x824], ecx
mov edx, dword [ebp - 0x824]
push edx
push 0x64
push 0x46f0e0
push 0x43bbcf
push str.vhld_reg_path
push 0x43bbf8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x64
push 0x46f148
push 0x43bbdb
push str.installer_reg_path
push 0x43bc1c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
push 0x46f1b0
push 0x43bbe7
push str.client_reg_path
push 0x43bc3c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0x64
push 0x46f218
push 0x43bbf6
push str.host_ip_url
push 0x43bc58
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x64
push 0x46f280
push 0x43bbf7
push str.program_def_zip
push 0x43bc78
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0
push str.bg_red
push 0x43bc90
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 0x43bcac
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 0x43bce8
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 0x43bd0c
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 0x43bd1c
push 0x43bd38
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 0x43bd54
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x820]
push eax
push 0x64
push str.installer.gif
call fcn.00414ccb
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 0x43bd6c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x820]
push eax
push 0x64
push str.text.txt
call fcn.00414ccb
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 0x43bd84
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x820]
push eax
push 0x64
push 0x46f488
call fcn.00414ccb
add esp, 0xc
push 0x64
push 0x445e10
call fcn.0040fff0
add esp, 8
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 1
je 0x406f39
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 0x43bdb8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x46f004], eax
mov eax, dword [ebp - 0x824]
push eax
push 0x64
push 0x46e398
push 0x43bc05
push str.version
push 0x43bdd8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0x400
push 0x46dac0
push 0x43bc06
push str.path_32
push 0x43bdf8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0x400
push 0x462138
push 0x43bc07
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 0x43bc1b
push 0x43be30
push 0x43be38
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 0x43be78
push str.HTTP_REPORT
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0x800
push 0x46c8e8
push 0x43bc29
push 0x43be8c
push str.PIXEL_TRACKING
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0
call fcn.00407c30
add esp, 4
push eax
call fcn.0041595c
add esp, 4
call fcn.00415969
cdq
mov ecx, 0x64
idiv ecx
add edx, 1
mov dword [ebp - 0x894], edx
mov edx, dword [ebp - 0x824]
push edx
push 0
push 0x43bea4
push 0x43beac
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
test eax, eax
jbe 0x40709c
push str.FILES_URL_NO_TEST
push 0x800
lea eax, [ebp - 0x820]
push eax
call fcn.00414ccb
add esp, 0xc
jmp 0x4071e7
mov ecx, dword [ebp - 0x824]
push ecx
push 3
push str.number_of_serials
push 0x43bee8
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.00414364
add esp, 4
mov dword [ebp - 0x988], eax
mov eax, dword [ebp - 0x988]
mov dword [ebp - 0xc], eax
cmp dword [ebp - 0xc], 0
jne 0x4070f5
mov dword [ebp - 4], 2
jmp 0x407be1
mov ecx, dword [ebp - 0x20]
push ecx
push 0
mov edx, dword [ebp - 0xc]
push edx
call fcn.00415190
add esp, 0xc
mov dword [ebp - 0x8a8], 0
jmp 0x407122
mov eax, dword [ebp - 0x8a8]
add eax, 1
mov dword [ebp - 0x8a8], eax
mov ecx, dword [ebp - 0x8a8]
cmp ecx, dword [ebp - 0x20]
jae 0x4071e7
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.00414a51
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 0x4071a9
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 0x4071e2
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.00414a51
add esp, 0x10
jmp 0x4071e7
jmp 0x407113
mov ecx, dword [ebp - 0x824]
push ecx
push 0
push 0x43bf3c
lea edx, [ebp - 0x820]
push edx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x46d21c], eax
cmp dword [0x46d21c], 0
je 0x4072a0
mov dword [ebp - 0x8ac], 0
jmp 0x40722f
mov eax, dword [ebp - 0x8ac]
add eax, 1
mov dword [ebp - 0x8ac], eax
mov ecx, dword [ebp - 0x8ac]
cmp ecx, dword [0x46d21c]
jge 0x40729e
mov edx, dword [ebp - 0x8ac]
add edx, 1
push edx
push str.value_d
push 0x64
lea eax, [ebp - 0x890]
push eax
call fcn.00414a51
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 0x407220
jmp 0x4072d0
mov dword [0x46d21c], 1
mov eax, dword [ebp - 0x824]
push eax
push 0x800
push 0x45a930
push 0x43bc2a
push 0x43bf50
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 0x43bf64
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 0x43bf70
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 0x43bc2b
push 0x43bf88
push 0x43bf90
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x64
push 0x46d0e8
push 0x43bc49
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 0x43bfb8
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 0x43bfcc
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 0x43bfe0
push 0x43bfe8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov word [0x459f18], ax
mov ecx, dword [ebp - 0x824]
push ecx
push 0xa
push 0x445e74
push 0x43bff4
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 0x43c030
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 0x43c064
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 0x43c09c
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 0x43c0c8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x32
push 0x46d1a0
push 0x43c0d8
push str.value_button_cancel
push 0x43c0f4
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 0x43c128
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 0x43c174
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 0x43c234
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x46ec60
call fcn.00403d40
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 0x43c2c8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x46ed60
call fcn.00403d40
add esp, 4
push 0x14
push 0
push 0x46f064
call fcn.00415190
add esp, 0xc
mov edx, dword [ebp - 0x824]
push edx
push 0x14
push 0x46f064
push 0x43bc4a
push str.value_offline_be_bigger
push 0x43c2f0
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 0x43c394
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0x459700
call fcn.00403d40
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.00403d40
add esp, 4
mov edx, dword [ebp - 0x824]
push edx
push 0x64
push 0x46f2e8
push 0x43bc4b
push str.real_username
push 0x43c3fc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0x64
push 0x46f350
push 0x43bc65
push str.orig_cid
push 0x43c414
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
push 0x46f3b8
push 0x43bc66
push 0x43c420
push 0x43c424
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0xffffffffffffffff
push str.CountryID
push 0x43c43c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x44307c], eax
mov eax, dword [ebp - 0x824]
push eax
push 0xffffffffffffffff
push str.CountryF
push 0x43c454
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [0x4430e4], eax
mov ecx, dword [ebp - 0x824]
push ecx
push 0x64
push 0x46f420
push 0x43bc67
push str.user_regkey
push 0x43c46c
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 0x43c498
push 0x43c49c
push 0x43c4a4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0x800
lea edx, [ebp - 0x820]
push edx
push 0x43c4a8
push 0x43c4ac
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.00414a51
add esp, 0x18
push 0x445e08
push 0x43c4d4
push 0
push 0x46f1b0
push 0x80000001
call fcn.0040d910
add esp, 0x14
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 1
je 0x407770
mov edx, dword [ebp - 0x824]
push edx
push 1
push 0x43c4d8
push 0x43c4e0
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 0x43c4e4
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 0x4077a4
mov word [0x46e394], 0xa
mov edx, dword [ebp - 0x824]
push edx
push 0
push 0x43c504
push 0x43c50c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov word [0x46d14c], ax
mov eax, dword [ebp - 0x824]
push eax
push 1
push str.unknownUser
push 0x43c51c
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x8a4], eax
cmp dword [ebp - 0x8a4], 0
je 0x4077ff
cmp dword [ebp - 0x8a4], 0
je 0x40781c
movzx ecx, word [0x46d14c]
test ecx, ecx
jne 0x40781c
mov word [0x46d14c], 0
mov edx, dword [0x462938]
and edx, 0xffffffbf
mov dword [0x462938], edx
jmp 0x407be1
movzx eax, word [0x46d14c]
push eax
push str.Campaign_d
push 0x800
lea ecx, [ebp - 0x820]
push ecx
call fcn.00414a51
add esp, 0x10
mov edx, dword [ebp - 0x824]
push edx
push 0
push 0x43c52c
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 0x40787d
mov edx, dword [0x462938]
and edx, 0xffffffbf
mov dword [0x462938], edx
jmp 0x407be1
mov word [ebp - 0x8b0], 0
jmp 0x40789a
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 0x407ace
movzx eax, word [ebp - 0x8b0]
add eax, 1
push eax
push str.group_d
push 0x64
lea ecx, [ebp - 0x890]
push ecx
call fcn.00414a51
add esp, 0x10
mov edx, dword [ebp - 0x824]
push edx
push 0x32
lea eax, [ebp - 0x980]
push eax
push 0x43bc85
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.00414830
add esp, 4
test eax, eax
je 0x407940
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.00406480
add esp, 0xc
jmp 0x40795e
push 0x43c53c
movzx ecx, word [ebp - 0x8b0]
imul ecx, ecx, 0x64
add ecx, 0x459f20
push ecx
call fcn.00414b50
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.00414a51
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 0x407ac9
mov dword [ebp - 0x984], 0
jmp 0x4079e1
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 0x407ac9
mov ecx, dword [ebp - 0x984]
add ecx, 1
push ecx
push str.opt_d
push 0x64
lea edx, [ebp - 0x890]
push edx
call fcn.00414a51
add esp, 0x10
mov eax, dword [ebp - 0x824]
push eax
push 0x32
lea ecx, [ebp - 0x918]
push ecx
push 0x43bc86
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.00414830
add esp, 4
test eax, eax
je 0x407aa5
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.00406480
add esp, 0xc
jmp 0x407ac4
push str.222222
push 0x64
movzx eax, word [ebp - 0x8b0]
imul eax, eax, 0x64
add eax, 0x459f20
push eax
call fcn.00414ccb
add esp, 0xc
jmp 0x4079d2
jmp 0x407888
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 0x43bc87
push str.offl_prom_full_gif
push 0x43c5a4
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov eax, dword [ebp - 0x824]
push eax
push 0xf
push 0x46c5b8
push 0x43bc8f
push str.on_gif
push 0x43c5b8
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov ecx, dword [ebp - 0x824]
push ecx
push 0xf
push 0x46e2c0
push 0x43bc9d
push str.off_gif
push 0x43c5cc
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
mov edx, dword [ebp - 0x824]
push edx
push 0x14
push 0x46f078
push 0x43bc9e
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 0x43bc9f
push str.value
push str.GROUP_FIRST_LINE
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
call fcn.0040b050
xor edx, edx
jne 0x406c5c
mov eax, dword [ebp - 8]
push eax
call fcn.0040fc50
add esp, 4
cmp dword [ebp - 8], 0
je 0x407c12
mov ecx, dword [ebp - 8]
mov dword [ebp - 0x98c], ecx
mov edx, dword [ebp - 0x98c]
push edx
call fcn.004149b7
add esp, 4
mov dword [ebp - 8], 0
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004148bb
mov esp, ebp
pop ebp
ret