Function at 0x1400335a0
Capabilities:
Read .ini file

Disassembly:
push rbx
push rbp
push rsi
push rdi
sub rsp, 0x168
mov rax, qword [0x1400950c8]
xor rax, rsp
mov qword [rsp + 0x150], rax
mov rsi, rcx
mov rcx, r8
mov rbp, r9
mov rdi, r8
mov rbx, rdx
call fcn.140004e50
test eax, eax
jne 0x1400340ff
mov rcx, r9
call fcn.140004e50
test eax, eax
jne 0x1400340ff
lea rcx, [rsp + 0x50]
xor edx, edx
mov r8d, 0x80
call fcn.14005fe50
mov rcx, rdi
call fcn.140016030
mov rcx, rbp
mov edi, eax
call fcn.140016030
mov ebp, eax
cmp edi, 0xffffffff
je 0x1400340ac
cmp eax, 0xffffffff
je 0x1400340ac
cmp edi, eax
jne 0x140033662
test rbx, rbx
jne 0x140033653
lea r8, str._r_nUnnecessary_To_Perform_Self_Clone_r_n_r_n
lea edx, [rbx + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140015c20
xor eax, eax
jmp 0x140033f95
mov r9, rbx
lea r8, str.PRIVMSG__s_:Unnecessary_To_Perform_Self_Clone_r_n
jmp 0x1400340e3
xor eax, eax
lea r8, str.User_d
lea rcx, [rsp + 0x40]
lea edx, [rax + 0xf]
mov r9d, edi
mov qword [rsp + 0x160], r12
mov qword [rsp + 0x40], rax
mov qword [rsp + 0x48], rax
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x38], rax
call fcn.14005ff3c
lea r8, str.User_d
lea rcx, [rsp + 0x30]
mov r9d, ebp
mov edx, SQLNumResultCols
call fcn.14005ff3c
lea rcx, [rsp + 0xd0]
xor edx, edx
mov r8d, 0x80
call fcn.14005fe50
lea r12, [0x1400ad4c0]
lea r9, [rsp + 0xd0]
lea rdx, str.ChainProxy
lea rcx, [rsp + 0x40]
xor r8d, r8d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x80
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jle 0x14003374c
lea r8, [rsp + 0xd0]
lea rdx, str.ChainProxy
lea rcx, [rsp + 0x30]
mov r9, r12
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x1400337da
test rbx, rbx
jne 0x14003373d
lea r8, str._r_nFail_To_Write_Chain_Proxy_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_Chain_Proxy_r_n
jmp 0x140033f6f
lea rdx, [0x140077958]
lea rcx, [rsp + 0xd0]
mov r8d, 0x7f
call fcn.140060000
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 r8, [rsp + 0xd0]
lea rdx, str.ChainProxy
lea rcx, [rsp + 0x30]
mov r9, r12
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x1400337da
test rbx, rbx
jne 0x1400337cb
lea r8, str._r_nFail_To_Write_Chain_Proxy_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_Chain_Proxy_r_n
jmp 0x140033f6f
lea rcx, [rsp + 0xd0]
xor edx, edx
mov r8d, 0x80
call fcn.14005fe50
lea r9, [rsp + 0xd0]
lea rdx, str.RemoteProxy
lea rcx, [rsp + 0x40]
xor r8d, r8d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x80
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jle 0x14003386b
lea r8, [rsp + 0xd0]
lea rdx, str.RemoteProxy
lea rcx, [rsp + 0x30]
mov r9, r12
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x1400338b4
test rbx, rbx
jne 0x14003385c
lea r8, str._r_nFail_To_Write_Remote_Proxy_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_Remote_Proxy_r_n
jmp 0x140033f6f
lea rdx, str.RemoteProxy
lea rcx, [rsp + 0x30]
mov r9, r12
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x1400338b4
test rbx, rbx
jne 0x1400338a5
lea r8, str._r_nFail_To_Write_Remote_Proxy_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_Remote_Proxy_r_n
jmp 0x140033f6f
lea rcx, [rsp + 0xd0]
xor edx, edx
mov r8d, 0x80
call fcn.14005fe50
lea r9, [rsp + 0xd0]
lea rdx, str.RemotePort
lea rcx, [rsp + 0x40]
xor r8d, r8d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x80
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jle 0x140033945
lea r8, [rsp + 0xd0]
lea rdx, str.RemotePort
lea rcx, [rsp + 0x30]
mov r9, r12
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x14003398e
test rbx, rbx
jne 0x140033936
lea r8, str._r_nFail_To_Write_Remote_Port_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_Remote_Port_r_n
jmp 0x140033f6f
lea rdx, str.RemotePort
lea rcx, [rsp + 0x30]
mov r9, r12
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x14003398e
test rbx, rbx
jne 0x14003397f
lea r8, str._r_nFail_To_Write_Remote_Port_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_Remote_Port_r_n
jmp 0x140033f6f
lea rcx, [rsp + 0xd0]
xor edx, edx
mov r8d, 0x80
call fcn.14005fe50
lea r9, [rsp + 0xd0]
lea rdx, str.RemoteUserName
lea rcx, [rsp + 0x40]
xor r8d, r8d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x80
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jle 0x140033a1f
lea r8, [rsp + 0xd0]
lea rdx, str.RemoteUserName
lea rcx, [rsp + 0x30]
mov r9, r12
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x140033a68
test rbx, rbx
jne 0x140033a10
lea r8, str._r_nFail_To_Write_Remote_User_Name_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_Remote_User_Name_r_n
jmp 0x140033f6f
lea rdx, str.RemoteUserName
lea rcx, [rsp + 0x30]
mov r9, r12
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x140033a68
test rbx, rbx
jne 0x140033a59
lea r8, str._r_nFail_To_Write_Remote_User_Name_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_Remote_User_Name_r_n
jmp 0x140033f6f
lea rcx, [rsp + 0xd0]
xor edx, edx
mov r8d, 0x80
call fcn.14005fe50
lea r9, [rsp + 0xd0]
lea rdx, str.RemotePassword
lea rcx, [rsp + 0x40]
xor r8d, r8d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x80
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jle 0x140033af9
lea r8, [rsp + 0xd0]
lea rdx, str.RemotePassword
lea rcx, [rsp + 0x30]
mov r9, r12
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x140033b42
test rbx, rbx
jne 0x140033aea
lea r8, str._r_nFail_To_Write_Remote_Password_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_Remote_Password_r_n
jmp 0x140033f6f
lea rdx, str.RemotePassword
lea rcx, [rsp + 0x30]
mov r9, r12
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x140033b42
test rbx, rbx
jne 0x140033b33
lea r8, str._r_nFail_To_Write_Remote_Password_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_Remote_Password_r_n
jmp 0x140033f6f
test rbx, rbx
jne 0x140033b5d
lea r8, str._r_nWrite_Remote_Proxy_Chain_Info_Successfully_r_n_r_n
lea edx, [rbx + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033b76
lea r8, str.PRIVMSG__s_:Write_Remote_Proxy_Chain_Info_Successfully_r_n
lea rcx, [rsp + 0x50]
mov r9, rbx
mov edx, 0x7f
call fcn.14005ff3c
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140015c20
lea rcx, [rsp + 0x50]
xor edx, edx
mov r8d, 0x80
call fcn.14005fe50
lea rcx, [rsp + 0xd0]
xor edx, edx
mov r8d, 0x80
call fcn.14005fe50
lea r9, [rsp + 0xd0]
lea rdx, str.BackUPProxy
lea rcx, [rsp + 0x40]
xor r8d, r8d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x80
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jle 0x140033c26
lea r8, [rsp + 0xd0]
lea rdx, str.BackUPProxy
lea rcx, [rsp + 0x30]
mov r9, r12
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x140033c6f
test rbx, rbx
jne 0x140033c17
lea r8, str._r_nFail_To_Write_BackUP_Proxy_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_BackUP_Proxy_r_n
jmp 0x140033f6f
lea rdx, str.BackUPProxy
lea rcx, [rsp + 0x30]
mov r9, r12
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x140033c6f
test rbx, rbx
jne 0x140033c60
lea r8, str._r_nFail_To_Write_BackUP_Proxy_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_BackUP_Proxy_r_n
jmp 0x140033f6f
lea rcx, [rsp + 0xd0]
xor edx, edx
mov r8d, 0x80
call fcn.14005fe50
lea r9, [rsp + 0xd0]
lea rdx, str.BackUPPort
lea rcx, [rsp + 0x40]
xor r8d, r8d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x80
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jle 0x140033d00
lea r8, [rsp + 0xd0]
lea rdx, str.BackUPPort
lea rcx, [rsp + 0x30]
mov r9, r12
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x140033d49
test rbx, rbx
jne 0x140033cf1
lea r8, str._r_nFail_To_Write_BackUP_Port_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_BackUP_Port_r_n
jmp 0x140033f6f
lea rdx, str.BackUPPort
lea rcx, [rsp + 0x30]
mov r9, r12
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x140033d49
test rbx, rbx
jne 0x140033d3a
lea r8, str._r_nFail_To_Write_BackUP_Port_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_BackUP_Port_r_n
jmp 0x140033f6f
lea rcx, [rsp + 0xd0]
xor edx, edx
mov r8d, 0x80
call fcn.14005fe50
lea r9, [rsp + 0xd0]
lea rdx, str.BackUPUserName
lea rcx, [rsp + 0x40]
xor r8d, r8d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x80
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jle 0x140033dda
lea r8, [rsp + 0xd0]
lea rdx, str.BackUPUserName
lea rcx, [rsp + 0x30]
mov r9, r12
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x140033e23
test rbx, rbx
jne 0x140033dcb
lea r8, str._r_nFail_To_Write_BackUP_User_Name_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_BackUP_User_Name_r_n
jmp 0x140033f6f
lea rdx, str.BackUPUserName
lea rcx, [rsp + 0x30]
mov r9, r12
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x140033e23
test rbx, rbx
jne 0x140033e14
lea r8, str._r_nFail_To_Write_BackUP_User_Name_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_BackUP_User_Name_r_n
jmp 0x140033f6f
lea rcx, [rsp + 0xd0]
xor edx, edx
mov r8d, 0x80
call fcn.14005fe50
lea r9, [rsp + 0xd0]
lea rdx, str.BackUPPassword
lea rcx, [rsp + 0x40]
xor r8d, r8d
mov qword [rsp + 0x28], r12
mov dword [rsp + 0x20], 0x80
call qword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
test eax, eax
jle 0x140033eb4
lea r8, [rsp + 0xd0]
lea rdx, str.BackUPPassword
lea rcx, [rsp + 0x30]
mov r9, r12
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x140033efa
test rbx, rbx
jne 0x140033ea5
lea r8, str._r_nFail_To_Write_BackUP_Password_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_BackUP_Password_r_n
jmp 0x140033f6f
lea rdx, str.BackUPPassword
lea rcx, [rsp + 0x30]
mov r9, r12
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
test eax, eax
jne 0x140033efa
test rbx, rbx
jne 0x140033eee
lea r8, str._r_nFail_To_Write_BackUP_Password_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Write_BackUP_Password_r_n
jmp 0x140033f6f
test rbx, rbx
jne 0x140033f15
lea r8, str.Write_BackUP_Proxy_Chain_Info_Successfully_r_n_r_n
lea edx, [rbx + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f2e
lea r8, str.PRIVMSG__s_:Write_BackUP_Proxy_Chain_Info_Successfully_r_n
lea rcx, [rsp + 0x50]
mov r9, rbx
mov edx, 0x7f
call fcn.14005ff3c
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140015c20
mov ecx, ebp
call fcn.1400178a0
mov rdi, rax
test rax, rax
jne 0x140033fb1
test rbx, rbx
jne 0x140033f65
lea r8, str._r_nFail_To_Find_Cloned_Account_r_n_r_n
lea edx, [rax + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140033f7e
mov r9, rbx
lea r8, str.PRIVMSG__s_:Fail_To_Find_Cloned_Account_r_n
lea rcx, [rsp + 0x50]
mov edx, 0x7f
call fcn.14005ff3c
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140015c20
xor eax, eax
mov r12, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x150]
xor rcx, rsp
call fcn.14005fe20
add rsp, 0x168
pop rdi
pop rsi
pop rbp
pop rbx
ret
lea rcx, [0x1400acda8]
call qword [sym.imp.KERNEL32.dll_EnterCriticalSection]
lea rdx, [rsp + 0x30]
mov rcx, rdi
call fcn.14001e090
lea rdx, [rsp + 0x30]
mov rcx, rdi
mov dword [rdi + 0x164], eax
call fcn.14001e580
lea rcx, [0x1400acda8]
call qword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
cmp dword [rdi + 0x164], 0
je 0x140034052
test rbx, rbx
jne 0x140034022
lea r8, str.Activate_Remote_Proxy_Chain_Successfully_r_n_r_n
lea edx, [rbx + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140015c20
lea eax, [rbx + 1]
jmp 0x140033f8d
lea r8, str.PRIVMSG__s_:Activate_Remote_Proxy_Chain_Successfully_r_n
lea rcx, [rsp + 0x50]
mov r9, rbx
mov edx, 0x7f
call fcn.14005ff3c
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140015c20
mov eax, 1
jmp 0x140033f8d
lea rdx, str.Remote_Proxy_Chain_Is_Not_Activated_r_n_r_n
mov rcx, rsi
call fcn.140015c20
test rbx, rbx
jne 0x14003407c
lea r8, str._r_nRemote_Proxy_Chain_Is_Not_Activated_r_n_r_n
lea edx, [rbx + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
jmp 0x140034095
lea r8, str.PRIVMSG__s_:Remote_Proxy_Chain_Is_Not_Activated_r_n
lea rcx, [rsp + 0x50]
mov r9, rbx
mov edx, 0x7f
call fcn.14005ff3c
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140015c20
mov eax, 1
jmp 0x140033f8d
test rbx, rbx
jne 0x1400340d9
lea r8, str._r_nThe_User_Name_Is_Not_Found_In_The_Ini_File_r_n_r_n
lea edx, [rbx + 0x7f]
lea rcx, [rsp + 0x50]
call fcn.14005ff3c
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140015c20
xor eax, eax
jmp 0x140033f95
mov r9, rbx
lea r8, str.PRIVMSG__s_:The_User_Name_Is_Not_Found_In_The_Ini_File_r_n
lea rcx, [rsp + 0x50]
mov edx, 0x7f
call fcn.14005ff3c
lea rdx, [rsp + 0x50]
mov rcx, rsi
call fcn.140015c20
xor eax, eax
jmp 0x140033f95