Function at 0x14001b760
Capabilities:
Read .ini file

Disassembly:
push rbx
mov eax, 0x2040
call fcn.140072a00
sub rsp, rax
mov rax, qword [0x1400950c8]
xor rax, rsp
mov qword [rsp + 0x2030], rax
mov rbx, rcx
lea rcx, [rsp + 0x1031]
xor edx, edx
mov r8d, 0x3ff
mov byte [rsp + 0x1030], 0
call fcn.14005fe50
xor eax, eax
lea rcx, [rsp + 0x321]
xor edx, edx
mov r8d, 0xbff
mov byte [rsp + 0x50], 0
mov dword [rsp + 0x51], eax
mov word [rsp + 0x55], ax
mov byte [rsp + 0x57], al
mov byte [rsp + 0x40], al
mov dword [rsp + 0x41], eax
mov word [rsp + 0x45], ax
mov byte [rsp + 0x47], al
mov byte [rsp + 0x80], al
mov dword [rsp + 0x81], eax
mov word [rsp + 0x85], ax
mov byte [rsp + 0x87], al
mov byte [rsp + 0x90], al
mov dword [rsp + 0x91], eax
mov word [rsp + 0x95], ax
mov byte [rsp + 0x97], al
mov byte [rsp + 0x150], al
mov qword [rsp + 0x151], rax
mov qword [rsp + 0x159], rax
mov qword [rsp + 0x161], rax
mov qword [rsp + 0x169], rax
mov qword [rsp + 0x171], rax
mov qword [rsp + 0x179], rax
mov qword [rsp + 0x181], rax
mov dword [rsp + 0x189], eax
mov word [rsp + 0x18d], ax
mov byte [rsp + 0x18f], al
mov byte [rsp + 0x78], al
mov dword [rsp + 0x79], eax
mov word [rsp + 0x7d], ax
mov byte [rsp + 0x7f], al
mov byte [rsp + 0x320], al
call fcn.14005fe50
lea rdx, [0x140075890]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d26a
mov qword [rsp + 0x2058], rsi
lea rsi, [0x1400ad4c0]
lea r9, [rsp + 0x1030]
lea rdx, [0x14007a0c0]
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov qword [rsp + 0x2060], rdi
mov dword [rsp + 0x20], 0x400
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001b929
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x1030]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x1030]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x1030]
lea r8, str.1.ListenPort___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001b942
lea r8, str.1.ListenPort__Not_Found_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea r9, [rsp + 0x78]
lea rdx, [0x14007a078]
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001b9c7
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x78]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x78]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x78]
lea r8, str.2.RedirectPort___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001b9e0
lea r8, str.2.RedirectPort__Not_Found_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea r8, str.3.MaxConnections__Unlimited_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea r9, [rsp + 0x50]
lea rdx, str.MaxConnections
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001ba98
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x50]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x50]
mov edx, edx
call fcn.14000cac0
lea rcx, [rsp + 0x50]
call fcn.140004d50
test eax, eax
je 0x14001ba98
lea rcx, [rsp + 0x50]
call fcn.140061730
test eax, eax
jle 0x14001ba98
lea r9, [rsp + 0x50]
lea r8, str.3.MaxConnections___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea r8, str.4.BandWidth__Unlimited_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea r9, [rsp + 0x40]
lea rdx, str.BandWidth
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001bb50
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x40]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x40]
mov edx, edx
call fcn.14000cac0
lea rcx, [rsp + 0x40]
call fcn.140004d50
test eax, eax
je 0x14001bb50
lea rcx, [rsp + 0x40]
call fcn.140061730
test eax, eax
jle 0x14001bb50
lea r9, [rsp + 0x40]
lea r8, str.4.BandWidth___s_KB_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea r9, [rsp + 0x80]
lea rdx, str.RemoteAdminEnable
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001bc0c
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x80]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x80]
mov edx, edx
call fcn.14000cac0
lea rdx, [0x14007795c]
lea rcx, [rsp + 0x80]
call fcn.1400605e0
test eax, eax
jne 0x14001bbf1
lea r8, str.5.RemoteAdminEnable__Yes_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001bc25
lea r8, str.5.RemoteAdminEnable__No_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001bc25
lea r8, str.5.RemoteAdminEnable__Not_Found_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea r9, [rsp + 0x90]
lea rdx, str.RemoteAdminPort
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001bcb6
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x90]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x90]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x90]
lea r8, str.6.RemoteAdminPort___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001bccf
lea r8, str.6.RemoteAdminPort__Not_Found_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea r9, [rsp + 0x150]
lea rdx, str.RemoteAdminPass
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x40
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001bd60
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x150]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x150]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x150]
lea r8, str.7.RemoteAdminPass___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001bd79
lea r8, str.7.RemoteAdminPass__Not_Found_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
xor eax, eax
lea r8, str.8.Anti_Hamming__32_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
mov qword [rsp + 0x98], rax
call fcn.14005ff3c
lea r9, [rsp + 0x98]
lea rdx, str.AntiHamming
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001be87
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x98]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x98]
mov edx, edx
call fcn.14000cac0
lea rcx, [rsp + 0x98]
call fcn.140004d50
test eax, eax
je 0x14001be6e
lea rcx, [rsp + 0x98]
call fcn.140061730
test eax, eax
jle 0x14001be53
lea r9, [rsp + 0x98]
lea r8, str.8.Anti_Hamming___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001be87
lea r8, str.8.Anti_Hamming__Free_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001be87
lea r8, str.8.Anti_Hamming__Un_Defined_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
lea rcx, [rsp + 0x1831]
xor edx, edx
mov r8d, 0x7ff
mov byte [rsp + 0x1830], 0
call fcn.14005fe50
lea r8, str.9.Binded_IP__All_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea r9, [rsp + 0x1830]
lea rdx, str.BindedIP
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x800
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001bf61
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x1830]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x1830]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x1830]
lea r8, str.9.Binded_IP___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
lea rcx, [rsp + 0xf21]
xor edx, edx
mov r8d, 0x103
mov byte [rsp + 0xf20], 0
call fcn.14005fe50
lea r9, [rsp + 0xf20]
lea rdx, str.IRCServer
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001c024
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0xf20]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0xf20]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0xf20]
lea r8, str.10.IRC_Server___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001c03d
lea r8, str.10.IRC_Server__Not_Found_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor eax, eax
lea r9, [rsp + 0x88]
lea rdx, str.IRCServerPort
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x88], 0
mov dword [rsp + 0x89], eax
mov word [rsp + 0x8d], ax
mov byte [rsp + 0x8f], al
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001c103
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x88]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x88]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x88]
lea r8, str.11.IRC_Server_Port___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001c11c
lea r8, str.11.IRC_Server_Port__Not_Found_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor edx, edx
lea rcx, [rsp + 0x2a1]
lea r8d, [rdx + 0x7f]
mov byte [rsp + 0x2a0], 0
call fcn.14005fe50
lea r9, [rsp + 0x2a0]
lea rdx, str.DefaultChannel
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x80
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001c1dd
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x2a0]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x2a0]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x2a0]
lea r8, str.12.Default_Channel___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001c1f6
lea r8, str.12.Default_Channel__Not_Found_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor eax, eax
lea r9, [rsp + 0xb0]
lea rdx, str.ChannelKey
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0xb0], 0
mov qword [rsp + 0xb1], rax
mov qword [rsp + 0xb9], rax
mov qword [rsp + 0xc1], rax
mov dword [rsp + 0xc9], eax
mov word [rsp + 0xcd], ax
mov byte [rsp + 0xcf], al
mov dword [rsp + SQLSetConnectAttr], 0x20
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001c2d4
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0xb0]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0xb0]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0xb0]
lea r8, str.13.Channel_Key___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001c2ed
lea r8, str.13.Channel_Key__No_Channel_Key_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor eax, eax
lea r9, [rsp + 0xd0]
lea rdx, str.DefaultUserName
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0xd0], 0
mov qword [rsp + 0xd1], rax
mov qword [rsp + 0xd9], rax
mov qword [rsp + 0xe1], rax
mov qword [rsp + 0xe9], rax
mov qword [rsp + 0xf1], rax
mov qword [rsp + 0xf9], rax
mov qword [rsp + 0x101], rax
mov dword [rsp + 0x109], eax
mov word [rsp + 0x10d], ax
mov byte [rsp + 0x10f], al
mov dword [rsp + 0x20], 0x40
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001c3eb
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0xd0]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0xd0]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0xd0]
lea r8, str.14.Default_Nick_Name___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001c404
lea r8, str.14.Default_Nick_Name__Auto_Detect_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor eax, eax
lea r9, [rsp + 0x110]
lea rdx, str.MasterPassword
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x110], 0
mov qword [rsp + 0x111], rax
mov qword [rsp + 0x119], rax
mov qword [rsp + 0x121], rax
mov qword [rsp + 0x129], rax
mov qword [rsp + 0x131], rax
mov qword [rsp + 0x139], rax
mov qword [rsp + 0x141], rax
mov dword [rsp + 0x149], eax
mov word [rsp + 0x14d], ax
mov byte [rsp + 0x14f], al
mov dword [rsp + 0x20], 0x40
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001c502
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x110]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x110]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x110]
lea r8, str.15.Master_Password___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001c51b
lea r8, str.15.Master_Password__Not_Found_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor eax, eax
lea r9, [rsp + 0x60]
lea rdx, str.IsIRCEnable
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x60], 0
mov dword [rsp + 0x61], eax
mov word [rsp + 0x65], ax
mov byte [rsp + 0x67], al
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.16.IRC_BOT_Enable__No_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x14001c60c
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x60]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x60]
mov edx, edx
call fcn.14000cac0
lea rdx, [0x14007795c]
lea rcx, [rsp + 0x60]
call fcn.1400605e0
test eax, eax
je 0x14001c5ee
lea rdx, [0x140077958]
lea rcx, [rsp + 0x60]
call fcn.1400605e0
test eax, eax
jne 0x14001c60c
lea r9, [rsp + 0x60]
lea r8, str.16.IRC_BOT_Enable___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor eax, eax
lea r9, [rsp + 0x30]
lea rdx, str.IsHideEnable
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x30], 0
mov dword [rsp + 0x31], eax
mov word [rsp + 0x35], ax
mov byte [rsp + 0x37], al
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.17.Hide_Enable__No_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x14001c6fd
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x30]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x30]
mov edx, edx
call fcn.14000cac0
lea rdx, [0x14007795c]
lea rcx, [rsp + 0x30]
call fcn.1400605e0
test eax, eax
je 0x14001c6df
lea rdx, [0x140077958]
lea rcx, [rsp + 0x30]
call fcn.1400605e0
test eax, eax
jne 0x14001c6fd
lea r9, [rsp + 0x30]
lea r8, str.17.Hide_Enable___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor eax, eax
lea r9, [rsp + 0x38]
lea rdx, str.IsAutoProxy
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x38], 0
mov dword [rsp + 0x39], eax
mov word [rsp + 0x3d], ax
mov byte [rsp + 0x3f], al
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.18.Is_Auto_Proxy__No_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x14001c7ee
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x38]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x38]
mov edx, edx
call fcn.14000cac0
lea rdx, [0x14007795c]
lea rcx, [rsp + 0x38]
call fcn.1400605e0
test eax, eax
je 0x14001c7d0
lea rdx, [0x140077958]
lea rcx, [rsp + 0x38]
call fcn.1400605e0
test eax, eax
jne 0x14001c7ee
lea r9, [rsp + 0x38]
lea r8, str.18.Is_Auto_Proxy___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor eax, eax
lea r9, [rsp + 0x48]
lea rdx, str.IsLogEnable
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x48], 0
mov dword [rsp + 0x49], eax
mov word [rsp + 0x4d], ax
mov byte [rsp + 0x4f], al
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.19.Is_Log_Enable__No_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x14001c8df
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x48]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x48]
mov edx, edx
call fcn.14000cac0
lea rdx, [0x14007795c]
lea rcx, [rsp + 0x48]
call fcn.1400605e0
test eax, eax
je 0x14001c8c1
lea rdx, [0x140077958]
lea rcx, [rsp + 0x48]
call fcn.1400605e0
test eax, eax
jne 0x14001c8df
lea r9, [rsp + 0x48]
lea r8, str.19.Is_Log_Enable___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor eax, eax
lea r9, [rsp + 0x58]
lea rdx, str.IsDNSEnable
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x58], 0
mov dword [rsp + 0x59], eax
mov word [rsp + 0x5d], ax
mov byte [rsp + 0x5f], al
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.20.Is_DNS_Enable__Yes_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x14001c9d0
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x58]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x58]
mov edx, edx
call fcn.14000cac0
lea rdx, [0x14007795c]
lea rcx, [rsp + 0x58]
call fcn.1400605e0
test eax, eax
je 0x14001c9b2
lea rdx, [0x140077958]
lea rcx, [rsp + 0x58]
call fcn.1400605e0
test eax, eax
jne 0x14001c9d0
lea r9, [rsp + 0x58]
lea r8, str.20.Is_DNS_Enable___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor eax, eax
lea r9, [rsp + 0x70]
lea rdx, str.MaxLoginPerIP
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x70], 0
mov dword [rsp + 0x71], eax
mov word [rsp + 0x75], ax
mov byte [rsp + 0x77], al
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001ca7e
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x70]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x70]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x70]
lea r8, str.21.Max_Login_Per_IP___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001ca97
lea r8, str.21.Max_Login_Per_IP__Unlimited_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor eax, eax
lea r9, [rsp + 0x68]
lea rdx, str.IsEncryptionEnable
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0x68], 0
mov dword [rsp + 0x69], eax
mov word [rsp + 0x6d], ax
mov byte [rsp + 0x6f], al
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001cb70
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x68]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x68]
mov edx, edx
call fcn.14000cac0
lea rdx, [0x14007795c]
lea rcx, [rsp + 0x68]
call fcn.1400605e0
test eax, eax
jne 0x14001cb55
lea r8, str.22.Data_Encryption_Enable__Yes_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001cb89
lea r8, str.22.Data_Encryption_Enable__No_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001cb89
lea r8, str.22.Data_Encryption_Enable__No_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
lea r9, [rsp + 0x68]
lea rdx, str.IsShieldEnable
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 8
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001cc2e
lea rdx, [0x14007795c]
lea rcx, [rsp + 0x68]
call fcn.1400605e0
test eax, eax
jne 0x14001cc13
lea r8, str.23.Shield_Enable__Yes_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001cc47
lea r8, str.23.Shield_Enable__No_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001cc47
lea r8, str.23.Shield_Enable__No_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x190]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
lea r9, [rsp + 0x190]
lea rdx, str.EnableProxy
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.24.RemoteProxyEnable__No_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x14001cd2b
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x190]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x190]
mov edx, edx
call fcn.14000cac0
lea rdx, [0x14007795c]
lea rcx, [rsp + 0x190]
call fcn.1400605e0
test eax, eax
jne 0x14001cd2b
lea r8, str.24.RemoteProxyEnable__Yes_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x190]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
lea r9, [rsp + 0x190]
lea rdx, str.RemoteProxy
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.25.RemoteProxy__NONE_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x14001cdff
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x190]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x190]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x190]
lea r8, str.25.RemoteProxy___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x190]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
lea r9, [rsp + 0x190]
lea rdx, str.RemotePort
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.26.RemotePort__NONE_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x14001ced3
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x190]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x190]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x190]
lea r8, str.26.RemotePort___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x190]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
lea r9, [rsp + 0x190]
lea rdx, str.RemoteUserName
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.27.RemoteUserName__NONE_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x14001cfa7
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x190]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x190]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x190]
lea r8, str.27.RemoteUserName___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x190]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
lea r9, [rsp + 0x190]
lea rdx, str.RemotePassword
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.28.RemotePassword__NONE_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x14001d07b
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x190]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x190]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x190]
lea r8, str.28.RemotePassword___s_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
je 0x14001d176
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
xor eax, eax
lea r9, [rsp + 0xa0]
lea rdx, str.ConnectionTimeOut
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov byte [rsp + 0xa0], 0
mov qword [rsp + 0xa1], rax
mov dword [rsp + 0xa9], eax
mov word [rsp + 0xad], ax
mov byte [rsp + 0xaf], al
mov dword [rsp + 0x20], SQLNumResultCols
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001d149
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0xa0]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0xa0]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0xa0]
lea r8, str.29.Connection_Time_Out___s_Seconds_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001d162
lea r8, str.29.Connection_Time_Out__8_Seconds_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
test eax, eax
jne 0x14001d17d
xor eax, eax
jmp 0x14001d25a
lea rcx, [rsp + 0x320]
xor edx, edx
mov r8d, 0xc00
call fcn.14005fe50
lea rcx, [rsp + 0x1431]
xor edx, edx
mov r8d, 0x3ff
mov byte [rsp + 0x1430], 0
call fcn.14005fe50
lea r9, [rsp + 0x1430]
lea rdx, str.DNSSERVER
lea rcx, str.GlobalSettings
xor r8d, r8d
mov qword [rsp + 0x28], rsi
mov dword [rsp + 0x20], 0x400
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14001d228
or rcx, 0xffffffffffffffff
xor eax, eax
lea rdi, [rsp + 0x1430]
repne scasb al, byte [rdi]
not rcx
lea rdx, [rcx - 1]
lea rcx, [rsp + 0x1430]
mov edx, edx
call fcn.14000cac0
lea r9, [rsp + 0x1430]
lea r8, str.30.DNS_Servers___s_r_n_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
jmp 0x14001d241
lea r8, str.30.DNS_Servers__None_r_n_r_n
lea rcx, [rsp + 0x320]
mov edx, 0xbff
call fcn.14005ff3c
lea rdx, [rsp + 0x320]
mov rcx, rbx
call fcn.140015c20
xor ecx, ecx
test eax, eax
setne cl
mov eax, ecx
mov rsi, qword [rsp + 0x2058]
mov rdi, qword [rsp + 0x2060]
mov rcx, qword [rsp + 0x2030]
xor rcx, rsp
call fcn.14005fe20
add rsp, 0x2040
pop rbx
ret