Function at 0x446680
Capabilities:
Get graphical window text
Query or enumerate registry value
Read .ini file

Disassembly:
sub esp, 0x224
mov eax, dword [0x4c4004]
xor eax, esp
mov dword [esp + 0x21c], eax
push ebx
push ebp
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntW]
push edi
push 0x4ded80
push 0
push str.Default
push str.MODEM
call esi
mov ebp, dword [sym.imp.USER32.dll_SendMessageW]
mov ebx, dword [sym.imp.USER32.dll_GetDlgItem]
sub eax, 0
je 0x4466d6
sub eax, 1
jne 0x4466ef
push eax
push 1
push 0xf1
push 0x2919
jmp 0x4466e4
push 0
push 1
push 0xf1
push 0x2918
push dword [0x4def88]
call ebx
push eax
call ebp
push 0
push 0x4ded80
push 0
push str.Config
push str.MODEM
call esi
push eax
push 0x14e
push 0x291a
push dword [0x4def88]
call ebx
push eax
call ebp
push 0x291c
push str.EnablePMTUDiscovery
mov edx, str.SYSTEMCurrentControlSetServicesTcpipParameters
mov ecx, 0x80000002
call fcn.0043da20
push 0x2921
push str.EnablePMTUBHDetect
mov edx, str.SYSTEMCurrentControlSetServicesTcpipParameters
mov ecx, 0x80000002
call fcn.0043da20
add esp, 0x10
lea eax, [esp + 0x18]
push eax
push 0xf003f
push 0
push str.SYSTEMCurrentControlSetServicesTcpipParameters
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
mov edi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
test eax, eax
jne 0x446871
lea eax, [esp + 0x1c]
mov dword [esp + 0x24], 0
push eax
lea eax, [esp + 0x28]
mov dword [esp + 0x24], 4
push eax
lea eax, [esp + 0x28]
mov dword [esp + 0x24], 4
push eax
push 0
push 0x4b3a20
push dword [esp + 0x2c]
call esi
test eax, eax
jne 0x44686b
push 0x291e
push dword [0x4def88]
call ebx
push 0
push 1
push 0xf1
push 0x291d
push dword [0x4def88]
mov dword [esp + 0x28], eax
call ebx
push eax
call ebp
mov eax, dword [esp + 0x24]
cmp eax, 0x228
jne 0x446803
push 0
push 0
push 0x14e
push dword [esp + 0x20]
call ebp
mov eax, dword [esp + 0x24]
cmp eax, 0x240
je 0x44680e
test eax, eax
jne 0x446821
push 0
push 1
push 0x14e
push dword [esp + 0x20]
call ebp
mov eax, dword [esp + 0x24]
cmp eax, 0x3e8
jne 0x44683b
push 0
push 2
push 0x14e
push dword [esp + 0x20]
call ebp
mov eax, dword [esp + 0x24]
cmp eax, 0x5d4
jne 0x446855
push 0
push 3
push 0x14e
push dword [esp + 0x20]
call ebp
mov eax, dword [esp + 0x24]
cmp eax, 0x5dc
jne 0x44686b
push 0
push 4
push 0x14e
push dword [esp + 0x20]
call ebp
push dword [esp + 0x18]
call edi
lea eax, [esp + 0x18]
push eax
push 0xf003f
push 0
push str.SYSTEMCurrentControlSetServicesTcpipParameters
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x4469a8
mov dword [esp + 0x14], eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x20], 4
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0x28], 4
push eax
push 0
push str.DefaultTTL
push dword [esp + 0x2c]
call esi
test eax, eax
jne 0x446948
push eax
push 1
push 0xf1
push 0x2920
push dword [0x4def88]
call ebx
push eax
call ebp
mov esi, dword [esp + 0x14]
shr esi, 5
push esi
push 1
push 0x405
push 0x2927
push dword [0x4def88]
call ebx
push eax
call ebp
shl esi, 5
mov edx, 0x4ad814
push esi
mov ecx, 0x4b0a6c
call fcn.00477440
push eax
lea eax, [esp + 0x30]
push 0xff
push eax
call fcn.0040a3c0
add esp, 0x10
lea eax, [esp + 0x28]
push eax
push 0x2929
push dword [0x4def88]
call ebx
push eax
mov eax, dword [sym.imp.USER32.dll_SetWindowTextW]
call eax
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
jmp 0x4469a2
push 4
push 1
push 0x405
push 0x2927
push dword [0x4def88]
call ebx
push eax
call ebp
push 0x80
mov edx, 0x4ad814
mov ecx, 0x4b0a6c
call fcn.00477440
push eax
lea eax, [esp + 0x30]
push 0xff
push eax
call fcn.0040a3c0
add esp, 0x10
lea eax, [esp + 0x28]
push eax
push 0x2929
push dword [0x4def88]
call ebx
push eax
mov eax, dword [sym.imp.USER32.dll_SetWindowTextW]
call eax
push dword [esp + 0x18]
call edi
lea eax, [esp + 0x18]
push eax
push 0xf003f
push 0
push str.SYSTEMCurrentControlSetServicesTcpipParameters
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x446b20
mov dword [esp + 0x14], eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x20], 4
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0x28], 4
push eax
push 0
push str.TcpWindowSize
push dword [esp + 0x2c]
call esi
test eax, eax
jne 0x446aba
push eax
push 1
push 0xf1
push 0x291f
push dword [0x4def88]
call ebx
push eax
call ebp
push 0x64
lea eax, [esp + 0x2c]
push eax
push 0x291e
push dword [0x4def88]
call ebx
push eax
call dword [sym.imp.USER32.dll_GetWindowTextW]
lea eax, [esp + 0x28]
push eax
call fcn.004937f5
xor edx, edx
add esp, 4
lea edi, [eax - 0x28]
mov eax, dword [esp + 0x14]
div edi
mov esi, eax
push esi
push 1
push 0x405
push 0x2926
push dword [0x4def88]
call ebx
push eax
call ebp
mov eax, esi
mov edx, 0x4ad860
imul eax, edi
mov ecx, 0x4b0a6c
push eax
push esi
push edi
call fcn.00477440
push eax
lea eax, [esp + 0x38]
push 0xff
push eax
call fcn.0040a3c0
add esp, 0x18
lea eax, [esp + 0x28]
push eax
push 0x2928
push dword [0x4def88]
call ebx
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
mov edi, dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryValueExW]
jmp 0x446b1a
push 2
push 1
push 0x405
push 0x2926
push dword [0x4def88]
call ebx
push eax
call ebp
push 0x430
push 2
push 0x218
mov edx, 0x4ad860
mov ecx, 0x4b0a6c
call fcn.00477440
push eax
lea eax, [esp + 0x38]
push 0xff
push eax
call fcn.0040a3c0
add esp, 0x18
lea eax, [esp + 0x28]
push eax
push 0x2928
push dword [0x4def88]
call ebx
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push dword [esp + 0x18]
call edi
push 0x2922
push str.EnableDeadGWDetect
mov edx, str.SYSTEMCurrentControlSetServicesTcpipParameters
mov ecx, 0x80000002
call fcn.0043da20
push 0x2923
push str.EnableICMPRedirect
mov edx, str.SYSTEMCurrentControlSetServicesTcpipParameters
mov ecx, 0x80000002
call fcn.0043da20
push 0x2924
push str.NoNameReleaseOnDemand
mov edx, str.SYSTEMCurrentControlSetServicesTcpipParameters
mov ecx, 0x80000002
call fcn.0043da20
push 0x2925
push str.PerformRouterDiscovery
mov edx, str.SYSTEMCurrentControlSetServicesTcpipParameters
mov ecx, 0x80000002
call fcn.0043da20
add esp, 0x20
lea eax, [esp + 0x18]
push eax
push 0xf003f
push 0
push str.SYSTEMCurrentControlSetServicesTcpipParameters
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x446c14
mov dword [esp + 0x14], eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x20], 4
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0x28], 4
push eax
push 0
push str.Tcp1323Opts
push dword [esp + 0x2c]
call esi
test eax, eax
jne 0x446c0e
push eax
push 1
push 0xf1
push 0x2931
push dword [0x4def88]
call ebx
push eax
call ebp
push 0
push dword [esp + 0x18]
push 0x14e
push 0x293d
push dword [0x4def88]
call ebx
push eax
call ebp
push dword [esp + 0x18]
call edi
lea eax, [esp + 0x18]
push eax
push 0xf003f
push 0
push str.SYSTEMCurrentControlSetServicesTcpipParameters
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x446d01
mov dword [esp + 0x14], eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x20], 4
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0x28], 4
push eax
push 0
push str.MaxDupAcks
push dword [esp + 0x2c]
call esi
test eax, eax
jne 0x446ca5
push eax
push 1
push 0xf1
push 0x2932
push dword [0x4def88]
call ebx
push eax
call ebp
push dword [esp + 0x14]
push 1
push 0x405
push 0x293a
push dword [0x4def88]
call ebx
push eax
call ebp
push dword [esp + 0x14]
jmp 0x446cc0
push 3
push 1
push 0x405
push 0x293a
push dword [0x4def88]
call ebx
push eax
call ebp
push 3
mov edx, 0x4ad8a0
mov ecx, 0x4b0a6c
call fcn.00477440
push eax
lea eax, [esp + 0x30]
push 0xff
push eax
call fcn.0040a3c0
add esp, 0x10
lea eax, [esp + 0x28]
push eax
push 0x293e
push dword [0x4def88]
call ebx
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push dword [esp + 0x18]
call edi
lea eax, [esp + 0x18]
push eax
push 0xf003f
push 0
push str.SoftwareMicrosoftWindowsCurrentVersionInternet_Settings
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x446dee
mov dword [esp + 0x14], eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x20], 4
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0x28], 4
push eax
push 0
push str.MaxConnectionsPer1_0Server
push dword [esp + 0x2c]
call esi
test eax, eax
jne 0x446d92
push eax
push 1
push 0xf1
push 0x2939
push dword [0x4def88]
call ebx
push eax
call ebp
push dword [esp + 0x14]
push 1
push 0x405
push 0x293b
push dword [0x4def88]
call ebx
push eax
call ebp
push dword [esp + 0x14]
jmp 0x446dad
push 7
push 1
push 0x405
push 0x293b
push dword [0x4def88]
call ebx
push eax
call ebp
push 7
mov edx, 0x4ad8a8
mov ecx, 0x4b0a6c
call fcn.00477440
push eax
lea eax, [esp + 0x30]
push 0xff
push eax
call fcn.0040a3c0
add esp, 0x10
lea eax, [esp + 0x28]
push eax
push 0x293f
push dword [0x4def88]
call ebx
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push dword [esp + 0x18]
call edi
lea eax, [esp + 0x18]
push eax
push 0xf003f
push 0
push str.SoftwareMicrosoftWindowsCurrentVersionInternet_Settings
push 0x80000001
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x446edb
mov dword [esp + 0x14], eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x20], 4
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0x28], 4
push eax
push 0
push str.MaxConnectionsPerServer
push dword [esp + 0x2c]
call esi
test eax, eax
jne 0x446e7f
push eax
push 1
push 0xf1
push 0x2939
push dword [0x4def88]
call ebx
push eax
call ebp
push dword [esp + 0x14]
push 1
push 0x405
push 0x293c
push dword [0x4def88]
call ebx
push eax
call ebp
push dword [esp + 0x14]
jmp 0x446e9a
push 7
push 1
push 0x405
push 0x293c
push dword [0x4def88]
call ebx
push eax
call ebp
push 7
mov edx, 0x4ad8b0
mov ecx, 0x4b0a6c
call fcn.00477440
push eax
lea eax, [esp + 0x30]
push 0xff
push eax
call fcn.0040a3c0
add esp, 0x10
lea eax, [esp + 0x28]
push eax
push 0x2940
push dword [0x4def88]
call ebx
push eax
call dword [sym.imp.USER32.dll_SetWindowTextW]
push dword [esp + 0x18]
call edi
push 0x2937
push str.SackOpts
mov edx, str.SYSTEMCurrentControlSetServicesTcpipParameters
mov ecx, 0x80000002
call fcn.0043da20
add esp, 8
lea eax, [esp + 0x18]
push eax
push 0xf003f
push 0
push str.SYSTEMCurrentControlSetServicesTcpipParameters
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x446f70
mov dword [esp + 0x14], eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x18]
mov dword [esp + 0x20], 4
push eax
lea eax, [esp + 0x24]
mov dword [esp + 0x28], 4
push eax
push 0
push str.SynAttackProtect
push dword [esp + 0x2c]
call esi
test eax, eax
jne 0x446f6a
cmp dword [esp + 0x14], 2
jne 0x446f6a
push eax
push 1
push 0xf1
push 0x2938
push dword [0x4def88]
call ebx
push eax
call ebp
push dword [esp + 0x18]
call edi
push 0x2933
push str.RandomAdapter
mov edx, str.SYSTEMCurrentControlSetServicesNetBTParameters
mov ecx, 0x80000002
call fcn.0043da20
push 0x2934
push str.EnableUnimodem
mov edx, str.SOFTWAREMicrosoftRASPROTOCOLS
mov ecx, 0x80000002
call fcn.0043da20
push 0x2935
push str.DisableTaskOffload
mov edx, str.SYSTEMCurrentControlSetServicesTcpipParameters
mov ecx, 0x80000002
call fcn.0043da20
add esp, 0x18
lea eax, [esp + 0x18]
push eax
push 0xf003f
push 0
push str.SOFTWAREMicrosoftOle
push 0x80000002
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x447041
lea eax, [esp + 0x20]
mov dword [esp + 0x1c], 1
push eax
lea eax, [esp + 0x2c]
mov dword [esp + 0x24], 0xff
push eax
lea eax, [esp + 0x24]
push eax
push 0
push str.EnableRemoteConnect
push dword [esp + 0x2c]
call esi
test eax, eax
jne 0x44703b
push 0x4b3d64
lea eax, [esp + 0x2c]
push eax
call dword [sym.imp.SHLWAPI.dll_StrStrIW]
test eax, eax
je 0x44703b
push 0
push 1
push 0xf1
push 0x2936
push dword [0x4def88]
call ebx
push eax
call ebp
push dword [esp + 0x18]
call edi
call fcn.00447070
call fcn.00447210
mov ecx, dword [esp + 0x22c]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0048d925
add esp, 0x224
ret