Function at 0x10042c7e9
Capabilities:
Connect socket
Get local ipv4 addresses
Get socket information

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0x8d8
mov dword [rsp + 0x920], ecx
mov r8d, 0x5da
lea rdx, str.irc_perform
lea rcx, str.src.it_dinoex_irc.c
call dbg.updatecontext_f
mov rax, qword [0x1004632d0]
cmp dword [rax + 0xb750], 0
je 0x10042e7dc
mov qword [rsp + 0x40], rax
mov r15d, 0
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x58], rax
lea rax, [rsp + 0xe8]
mov qword [rsp + 0x68], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x98]
mov qword [rsp + 0x60], rax
mov r14d, r15d
mov eax, r14d
imul rax, rax, 0xb60
mov rbx, qword [rsp + 0x50]
lea rax, [rbx + rax + 0x48]
mov rdi, qword [0x1004632e0]
mov qword [rdi], rax
cmp dword [rbx + 0xb7e8], 0
je 0x10042c8ad
mov ecx, 0xffffffff
call dbg.switchserver
jmp 0x10042e7bb
mov rax, qword [rsp + 0x40]
mov rbx, rax
mov eax, dword [rax + 0xb70]
cmp eax, 4
jne 0x10042e080
mov ecx, dword [rbx + 0xb6c]
movsxd rax, ecx
shr rax, 6
mov edx, 1
shl rdx, cl
mov rcx, qword [0x1004632d0]
test qword [rcx + rax*8 + 0xb628], rdx
je 0x10042e7bb
mov rax, qword [rcx + 0xa9d0]
mov qword [rbx + 0x1e0], rax
mov dword [rbx + 0xaf4], 0
mov ecx, 0x100
mov eax, 0
mov rdi, qword [rsp + 0x58]
rep stosq qword [rdi], rax
mov edx, 0x800
mov rcx, qword [rsp + 0x58]
call dbg.readserver_ssl
mov rsi, rax
test eax, eax
jg 0x10042c9d5
call sym.__errno
cmp dword [rax], 0xb
je 0x10042e7bb
lea rax, [0x100457db4]
test esi, esi
jns 0x10042c957
call sym.__errno
mov ecx, dword [rax]
call sym.strerror
mov rdx, qword [0x1004632e0]
mov rdx, qword [rdx]
mov r9, qword [rdx + 0xa48]
mov qword [rsp + 0x20], rax
lea r8, str.Chiusura_connessione_server_su__s:__s
mov edx, 0x1f
mov ecx, 7
call dbg.ioutput
mov rax, qword [0x1004632d0]
cmp dword [rax + 0xb7d8], 0
je 0x10042c9a7
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov dword [rax + 0xab0], 0
call dbg.close_server
mov rbx, qword [0x1004632e0]
mov rax, qword [rbx]
mov rcx, qword [rax + 0xa30]
call dbg.mydelete2
mov rax, qword [rbx]
mov qword [rax + 0xa30], 0
jmp 0x10042e7bb
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
lea rdi, [rax + 0x230]
mov eax, 0
mov rcx, 0xffffffffffffffff
repne scasb al, byte [rdi]
mov rax, rcx
not rax
lea edx, [rax - 1]
test esi, esi
je 0x10042e067
lea rbx, [rsp + 0xd0]
lea eax, [rsi - 1]
lea r15, [rbx + rax + 1]
mov dword [rsp + 0x74], r14d
mov r14, qword [rsp + 0x60]
movzx eax, byte [rbx]
cmp al, 0xa
je 0x10042ca32
cmp edx, 0x7ff
jne 0x10042e03e
test edx, edx
je 0x10042ca51
lea eax, [rdx - 1]
mov rcx, qword [0x1004632e0]
mov r8, qword [rcx]
mov ecx, eax
cmp byte [r8 + rcx + 0x230], 0xd
cmove edx, eax
mov rax, qword [0x1004632e0]
mov rdi, qword [rax]
mov edx, edx
mov byte [rdi + rdx + 0x230], 0
lea rsi, [rdi + 0x230]
mov r8d, 0x5b7
lea rdx, str.ir_parseline
lea rcx, str.src.it_dinoex_irc.c
call dbg.updatecontext_f
mov rcx, rsi
call dbg.removenonprintable
mov rcx, rsi
call dbg.do_myruby_server
mov edx, 0
test eax, eax
jne 0x10042e055
mov byte [rdi + 0x42f], 0
mov rax, qword [0x1004632d0]
cmp dword [rax + 0x78b8], 0xe
jbe 0x10042cae8
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov eax, dword [rax + 0xaa0]
mov qword [rsp + 0x20], rsi
lea r9d, [rax + 1]
lea r8, str._IRC_:__u___s
mov edx, 0x24
mov ecx, 3
call dbg.ioutput
mov ecx, 7
mov eax, 0
mov rdi, qword [rsp + 0x48]
rep stosq qword [rdi], rax
mov qword [rsp + 0x90], rsi
mov dword [rsp + 0x28], 0x5c7
lea rax, str.src.it_dinoex_irc.c
mov qword [rsp + 0x20], rax
lea r9, str.ir_parseline
mov r8d, 6
mov rdx, rsi
mov rcx, r14
call dbg.get_argv2
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x10042cfbb
call dbg.caps
mov ecx, 7
lea rdi, [0x100457df4]
mov rsi, qword [rsp + 0xa0]
repe cmpsb byte [rsi], byte [rdi]
seta dl
setb al
cmp dl, al
jne 0x10042cc5c
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov rsi, qword [rax + 0xa40]
test rsi, rsi
je 0x10042cc5c
mov rcx, qword [rsp + 0xa8]
test rcx, rcx
je 0x10042cc5c
call dbg.caps
mov rdx, rsi
mov rcx, rax
call sym.strcmp
test eax, eax
jne 0x10042cc5c
mov rsi, qword [rsp + 0x90]
call dbg.get_nickserv_pass
test rax, rax
je 0x10042cc34
lea rdx, str.Nickname_is_registered_to_someone_else
mov rcx, rsi
call sym.strstr
test rax, rax
je 0x10042cbdb
mov ecx, 0
call dbg.identify_needed
lea rdx, str.This_nickname_has_been_registered
mov rcx, rsi
call sym.strstr
test rax, rax
je 0x10042cbf9
mov ecx, 0
call dbg.identify_needed
lea rdx, str.This_nickname_is_registered_and_protected
mov rcx, rsi
call sym.strstr
test rax, rax
je 0x10042cc17
mov ecx, 0
call dbg.identify_needed
lea rdx, str.please_choose_a_different_nick
mov rcx, rsi
call sym.strcasestr
test eax, eax
je 0x10042cc34
mov ecx, 0
call dbg.identify_needed
mov rcx, qword [rsp + 0x90]
call dbg.do_myruby_notice
test eax, eax
jne 0x10042cc5c
mov r8, qword [rsp + 0x90]
mov edx, 0
mov ecx, 0
call dbg.privmsgparse
mov ecx, 8
lea rdi, [0x100457e9f]
mov rsi, qword [rsp + 0xa0]
repe cmpsb byte [rsi], byte [rdi]
seta dl
setb al
cmp dl, al
jne 0x10042ccf9
mov r9, qword [rsp + 0xb8]
mov r8, qword [rsp + 0xb0]
mov rdx, qword [rsp + 0xa8]
mov rcx, qword [rsp + 0x90]
call dbg.test_fish_message
mov rsi, rax
test rax, rax
je 0x10042ccd1
mov rcx, rax
call dbg.do_myruby_privmsg
test eax, eax
jne 0x10042ccc7
mov r8, rsi
mov edx, 1
mov ecx, 1
call dbg.privmsgparse
mov rcx, rsi
call dbg.mydelete2
jmp 0x10042ccf9
mov rcx, qword [rsp + 0x90]
call dbg.do_myruby_privmsg
test eax, eax
jne 0x10042ccf9
mov r8, qword [rsp + 0x90]
mov edx, 0
mov ecx, 1
call dbg.privmsgparse
mov rax, qword [rsp + 0xa0]
mov ecx, 4
lea rdi, [0x100457ea7]
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta cl
setb dl
cmp cl, dl
jne 0x10042cfcc
mov r9, qword [rsp + 0x90]
lea r8, str.Messaggio_di_benvenuto_ser_server:__s
mov edx, 0
mov ecx, 3
call dbg.ioutput
mov rsi, qword [rsp + 0x90]
mov r8d, 0xc4
lea rdx, str.update_server_welcome
lea rcx, str.src.it_dinoex_irc.c
call dbg.updatecontext_f
mov rax, qword [0x1004632d0]
cmp dword [rax + 0x797c], 0
je 0x10042cde7
mov edx, 0x40
mov rcx, rsi
call sym.strchr
test rax, rax
je 0x10042cda8
lea rsi, [rax + 1]
mov r9, rsi
lea r8, str.IP_dal_server:__s
mov edx, 0
mov ecx, 3
call dbg.ioutput
mov rcx, rsi
call dbg.update_natip
jmp 0x10042ce1c
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov ecx, dword [rax + 0xae8]
cmp ecx, dword [rax + 0xaa0]
je 0x10042cde7
mov dword [rax + 0xae4], 1
mov eax, ecx
imul rax, rax, 0xb60
add rax, qword [0x1004632d0]
mov edx, dword [rax + 0xb80]
call dbg.update_getip_net
jmp 0x10042ce1c
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov rcx, qword [rax + 0xa90]
test rcx, rcx
je 0x10042ce04
call dbg.update_natip
jmp 0x10042ce1c
mov rax, qword [0x1004632d0]
mov rcx, qword [rax + 0x77f0]
test rcx, rcx
je 0x10042ce1c
call dbg.update_natip
mov rsi, qword [0x1004632e0]
mov rax, qword [rsi]
mov rcx, qword [rax + 0xa30]
call dbg.mydelete2
mov rdi, qword [rsi]
mov qword [rdi + 0xa30], 0
mov rax, qword [rsp + 0x90]
lea rcx, [rax + 1]
mov dword [rsp + 0x20], 0x3b0
lea r9, str.src.it_dinoex_irc.c
lea r8, str.irc_001
mov edx, 1
call dbg.getpart2
mov qword [rdi + 0xa30], rax
mov rax, qword [rsi]
mov rcx, qword [rax + 0xa38]
call dbg.mydelete2
mov rax, qword [rsi]
mov qword [rax + 0xa38], 0
mov rcx, qword [rax + 0xa40]
call dbg.mydelete2
mov rdi, qword [rsi]
mov qword [rdi + 0xa40], 0
mov r9d, 0x3b5
lea r8, str.src.it_dinoex_irc.c
lea rdx, str.irc_001
mov rcx, qword [rsp + 0xa8]
call dbg.mystrdup2
mov qword [rdi + 0xa38], rax
mov rdi, qword [rsi]
mov r9d, 0x3b6
lea r8, str.src.it_dinoex_irc.c
lea rdx, str.irc_001
mov rcx, qword [rsp + 0xa8]
call dbg.mystrdup2
mov qword [rdi + 0xa40], rax
mov rax, qword [rsi]
mov rcx, qword [rax + 0xa40]
call dbg.caps
mov rcx, qword [rsi]
mov dword [rcx + 0xab4], 0
mov rax, qword [0x1004632d0]
mov edx, dword [rax + 0x78f4]
add rdx, qword [rax + 0xa9d0]
mov qword [rcx + 0x1d8], rdx
add dword [rax + 0xb780], 1
call dbg.get_user_modes
test rax, rax
je 0x10042cf6f
cmp byte [rax], 0
je 0x10042cf6f
mov rdx, qword [0x1004632e0]
mov rdx, qword [rdx]
mov r9, rax
mov r8, qword [rdx + 0xa38]
lea rdx, [0x100457ee8]
mov ecx, 1
call dbg.writeserver
mov rax, qword [0x1004632e0]
mov rcx, qword [rax]
add rcx, 0x50
call dbg.irlist_get_head
mov rsi, rax
test rax, rax
je 0x10042cfb1
lea rdi, [0x100457ef3]
mov r8, rsi
mov rdx, rdi
mov ecx, 3
call dbg.writeserver
mov rcx, rsi
call dbg.irlist_get_next
mov rsi, rax
test rax, rax
jne 0x10042cf91
mov ecx, 0
call dbg.identify_needed
lea rsi, [rsp + 0x90]
lea rdi, [rsi + 0x30]
jmp 0x10042e01d
mov ecx, 4
lea rdi, [0x100457ef6]
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta cl
setb dl
cmp cl, dl
jne 0x10042d206
jmp 0x10042d1be
cmp byte [rbp], 0x3a
jne 0x10042d000
mov rcx, rbp
call dbg.mydelete2
jmp 0x10042cfbb
mov ecx, 8
lea rsi, str.PREFIX_
mov rdi, rbp
repe cmpsb byte [rsi], byte [rdi]
seta dl
setb al
cmp dl, al
jne 0x10042d130
mov rax, qword [0x1004632e0]
mov r10, qword [rax]
mov qword [r10 + 0x200], 0
mov qword [r10 + 0x208], 0
mov qword [r10 + 0x210], 0
mov qword [r10 + 0x218], 0
movzx eax, byte [rbp + 8]
test al, al
je 0x10042d097
cmp al, 0x29
je 0x10042d097
mov edx, 0
mov ecx, 0
mov byte [r10 + rdx*2 + 0x200], al
add ecx, 1
movzx eax, byte [rbp + rdx + 9]
add rdx, 1
test al, al
setne r9b
cmp al, 0x29
setne r8b
test r9b, r8b
je 0x10042d09c
cmp ecx, 0xf
jbe 0x10042d06b
jmp 0x10042d09c
mov ecx, 0
cmp al, 0x29
jne 0x10042d0d9
lea r8d, [rcx + 1]
movzx edx, byte [rbp + r8 + 8]
test dl, dl
je 0x10042d0d9
mov eax, 0
mov ecx, 0
add r8, rbp
mov byte [r10 + rax*2 + 0x201], dl
add ecx, 1
movzx edx, byte [r8 + rax + 9]
add rax, 1
cmp ecx, 0xf
ja 0x10042d0d9
test dl, dl
jne 0x10042d0bb
mov esi, 0
lea rdi, str.La_lista_prefissata_del_server__s_non_ha_alcun_senso__uso_quella_base:__s
mov rdx, qword [r12]
mov eax, esi
lea rax, [rdx + rax*2]
cmp byte [rax + 0x200], 0
je 0x10042d103
cmp byte [rax + 0x201], 0
je 0x10042d10c
jmp 0x10042d128
cmp byte [rax + 0x201], 0
je 0x10042d128
mov r9, rbp
mov r8, qword [rdx + 0xa48]
mov rdx, rdi
mov ecx, 2
call dbg.outerror
call dbg.initprefixes
add esi, 1
cmp esi, 0x10
jne 0x10042d0e5
mov ecx, 0xa
lea rsi, str.CHANMODES
mov rdi, rbp
repe cmpsb byte [rsi], byte [rdi]
seta dl
setb al
cmp dl, al
jne 0x10042d1b4
lea r8, [rbp + 0xa]
mov rax, qword [0x1004632e0]
mov r11, qword [rax]
mov qword [r11 + 0x220], 0
mov qword [r11 + 0x228], 0
movzx edx, byte [rbp + 0xa]
test dl, dl
je 0x10042d1b4
mov r10d, 0
mov eax, 0
lea ecx, [rax + 1]
mov r9d, ecx
cmp byte [r8 + r9], 0x2c
jne 0x10042d1a0
mov eax, r10d
mov byte [r11 + rax + 0x220], dl
lea r10d, [r10 + 1]
mov eax, ecx
add eax, 1
mov edx, eax
movzx edx, byte [r8 + rdx]
test dl, dl
je 0x10042d1b4
cmp r10d, 0xf
jbe 0x10042d182
mov rcx, rbp
call dbg.mydelete2
jmp 0x10042d1cb
mov r13d, 3
mov r12, qword [0x1004632e0]
add r13d, 1
mov dword [rsp + 0x20], 0x3d2
lea r9, str.src.it_dinoex_irc.c
lea r8, str.irc_005
mov edx, r13d
mov rcx, qword [rsp + 0x90]
call dbg.getpart2
mov rbp, rax
test rax, rax
jne 0x10042cff0
jmp 0x10042cfbb
mov ecx, 4
lea rdi, [0x100457f5d]
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta cl
setb dl
cmp cl, dl
jne 0x10042d26c
mov rsi, qword [rsp + 0xa8]
test rsi, rsi
je 0x10042cfbb
mov rax, qword [rsp + 0xb0]
test rax, rax
je 0x10042cfbb
mov ecx, 2
lea rdi, [0x100457f61]
repe cmpsb byte [rsi], byte [rdi]
seta cl
setb dl
cmp cl, dl
jne 0x10042cfbb
mov rcx, rax
call dbg.lost_nick
jmp 0x10042cfbb
mov ecx, 4
lea rdi, [0x100457f63]
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta cl
setb dl
cmp cl, dl
jne 0x10042d33f
mov rsi, qword [rsp + 0xa8]
test rsi, rsi
je 0x10042cfbb
mov rbp, qword [rsp + 0xb0]
test rbp, rbp
je 0x10042cfbb
mov ecx, 2
lea rdi, [0x100457f61]
repe cmpsb byte [rsi], byte [rdi]
seta dl
setb al
cmp dl, al
jne 0x10042cfbb
mov rsi, qword [0x1004632e0]
mov rdi, qword [rsi]
call dbg.get_config_nick
mov edx, dword [rdi + 0xab4]
mov dword [rsp + 0x30], edx
mov qword [rsp + 0x28], rax
mov rax, qword [rdi + 0xa48]
mov qword [rsp + 0x20], rax
mov r9, rbp
lea r8, str.Nickname__s_pronto_alluso_su__s__sto_provando__s_u
mov edx, 0
mov ecx, 3
call dbg.ioutput
mov rax, qword [rsi]
mov esi, dword [rax + 0xab4]
lea edx, [rsi + 1]
mov dword [rax + 0xab4], edx
call dbg.get_config_nick
mov r8, rax
mov r9d, esi
lea rdx, str.NICK__s_u
mov ecx, 3
call dbg.writeserver
jmp 0x10042cfbb
mov ecx, 4
lea rdi, [0x100457fa6]
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta cl
setb dl
cmp cl, dl
jne 0x10042d436
cmp qword [rsp + 0xa8], 0
je 0x10042cfbb
cmp qword [rsp + 0xb0], 0
je 0x10042cfbb
lea rdx, [0x100457fa6]
mov rcx, qword [rsp + 0x90]
call sym.strstr
mov r9, rax
mov rsi, qword [0x1004632e0]
mov rdx, qword [rsi]
mov r8, qword [rdx + 0xa48]
lea rdx, str.canale_su__s:__s
mov ecx, 1
call dbg.outerror
mov rcx, qword [rsi]
add rcx, 0xf8
call dbg.irlist_get_head
mov rsi, rax
test rax, rax
je 0x10042cfbb
mov rdi, qword [0x1004632e0]
mov rax, qword [rdi]
mov rbp, qword [rax + 0xa40]
mov rcx, qword [rsp + 0xa8]
call dbg.caps
mov rdx, rbp
mov rcx, rax
call sym.strcmp
test eax, eax
jne 0x10042d421
mov rbp, qword [rsi]
mov rcx, qword [rsp + 0xb0]
call dbg.caps
mov rdx, rbp
mov rcx, rax
call sym.strcmp
test eax, eax
jne 0x10042d421
or word [rsi + 0x38], 0x40
mov rcx, rsi
call dbg.irlist_get_next
mov rsi, rax
test rax, rax
jne 0x10042d3d7
jmp 0x10042cfbb
mov ecx, 4
lea rdi, [0x100457fbb]
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta cl
setb dl
cmp cl, dl
jne 0x10042d587
cmp qword [rsp + 0xa8], 0
je 0x10042cfbb
cmp qword [rsp + 0xb0], 0
je 0x10042cfbb
cmp qword [rsp + 0xc0], 0
je 0x10042cfbb
mov rcx, qword [rsp + 0xb8]
call dbg.caps
mov rax, qword [0x1004632e0]
mov rcx, qword [rax]
add rcx, 0xf8
call dbg.irlist_get_head
mov rbp, rax
test rax, rax
je 0x10042d535
mov rdx, qword [rbp]
mov rcx, qword [rsp + 0xb8]
call sym.strcmp
test eax, eax
je 0x10042d4f7
mov rcx, rbp
call dbg.irlist_get_next
mov rbp, rax
test rax, rax
jne 0x10042d4b1
jmp 0x10042d535
cmp esi, 1
mov rdx, rdi
adc rdx, 0
mov rcx, rbp
call dbg.addtomemberlist
mov rcx, rdi
call dbg.mydelete2
add esi, 1
jmp 0x10042d50a
mov esi, 0
lea r13, str.src.it_dinoex_irc.c
lea r12, str.ir_parseline2
lea edx, [rsi + 6]
mov dword [rsp + 0x20], 0x490
mov r9, r13
mov r8, r12
mov rcx, qword [rsp + 0x90]
call dbg.getpart2
mov rdi, rax
test rax, rax
jne 0x10042d4d8
jmp 0x10042cfbb
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov rax, qword [rax + 0xa48]
mov qword [rsp + 0x20], rax
mov r9, qword [rsp + 0xb8]
lea r8, str.Recupero_i_dati_del_nome__s_che_non__un_canale_consciuto_su__s_
mov edx, 0
mov ecx, 7
call dbg.ioutput
mov r8, qword [rsp + 0xb8]
lea rdx, [0x100458002]
mov ecx, 3
call dbg.writeserver
jmp 0x10042cfbb
mov rdi, qword [0x1004632e0]
mov rdx, qword [rdi]
cmp qword [rdx + 0x1a8], 0
je 0x10042d5c2
mov ecx, 5
lea rdi, str.PONG
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta r8b
setb cl
cmp r8b, cl
jne 0x10042d5c2
call dbg.lag_message
jmp 0x10042cfbb
mov r8, qword [rsp + 0x90]
mov ecx, 6
lea rdi, str.PING_:
mov rsi, r8
repe cmpsb byte [rsi], byte [rdi]
seta r9b
setb cl
cmp r9b, cl
jne 0x10042d63b
mov rax, qword [0x1004632d0]
cmp dword [rax + 0x78b8], 0
je 0x10042d619
mov r9, qword [rdx + 0xa48]
mov qword [rsp + 0x20], r8
lea r8, str.Ping_del_Server_su__s:__s
mov edx, 0
mov ecx, 1
call dbg.ioutput
mov r8, qword [rsp + 0x90]
add r8, 2
lea rdx, str.PO_s
mov ecx, 1
call dbg.writeserver
jmp 0x10042cfbb
mov ecx, 5
lea rdi, str.QUIT
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta r9b
setb cl
cmp r9b, cl
jne 0x10042d72b
cmp qword [rdx + 0xa40], 0
je 0x10042cfbb
mov rcx, r8
call dbg.ir_get_nickarg
mov rdi, rax
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov rsi, qword [rax + 0xa40]
mov rcx, rdi
call dbg.caps
mov rdx, rsi
mov rcx, rax
call sym.strcmp
test eax, eax
jne 0x10042d6e0
mov rsi, qword [0x1004632e0]
mov rax, qword [rsi]
mov r9, qword [rsp + 0x90]
mov r8, qword [rax + 0xa48]
lea rdx, str.Uscita_forzata_su__s:__s
mov ecx, 1
call dbg.outerror
call dbg.close_server
call dbg.clean_send_buffers
mov rax, qword [rsi]
mov dword [rax + 0xb28], 5
jmp 0x10042d71e
mov rax, qword [0x1004632e0]
mov rcx, qword [rax]
add rcx, 0xf8
call dbg.irlist_get_head
mov rsi, rax
test rax, rax
je 0x10042d719
mov rdx, rdi
mov rcx, rsi
call dbg.removefrommemberlist
mov rcx, rsi
call dbg.irlist_get_next
mov rsi, rax
test rax, rax
jne 0x10042d6fe
call dbg.reverify_restrictsend
mov rcx, rdi
call dbg.mydelete2
jmp 0x10042cfbb
mov ecx, 5
lea rdi, str.MODE
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta r9b
setb cl
cmp r9b, cl
jne 0x10042d99a
cmp qword [rsp + 0xa8], 0
je 0x10042cfbb
cmp qword [rsp + 0xb0], 0
je 0x10042cfbb
lea rcx, [rdx + 0xf8]
call dbg.irlist_get_head
mov r13, rax
test rax, rax
je 0x10042d95d
mov rdx, qword [rsp + 0xa8]
mov rcx, qword [r13]
call sym.strcasecmp
test eax, eax
je 0x10042d7ac
mov rcx, r13
call dbg.irlist_get_next
mov r13, rax
test rax, rax
jne 0x10042d782
jmp 0x10042d95d
mov r12, qword [rsp + 0xb0]
movzx ecx, byte [r12]
test cl, cl
je 0x10042cfbb
mov dword [rsp + 0x78], 0
mov dword [rsp + 0x7c], 4
cmp cl, 0x2b
je 0x10042d935
cmp cl, 0x2d
je 0x10042d93f
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
movzx edx, byte [rax + 0x200]
test dl, dl
je 0x10042d8e8
cmp dl, cl
je 0x10042d81a
add rax, 0x202
mov esi, 1
jmp 0x10042d8dd
cmp dl, cl
jne 0x10042d8d1
jmp 0x10042d81f
mov esi, 0
add dword [rsp + 0x7c], 1
mov eax, dword [rsp + 0x7c]
mov dword [rsp + 0x20], 0x4e3
lea r9, str.src.it_dinoex_irc.c
lea r8, str.ir_parseline2
mov edx, eax
mov rcx, qword [rsp + 0x90]
call dbg.getpart2
mov rbp, rax
test rax, rax
je 0x10042d8e8
mov eax, 0
mov rcx, 0xffffffffffffffff
mov rdi, rbp
repne scasb al, byte [rdi]
mov rax, rcx
not rax
lea rax, [rbp + rax - 2]
cmp byte [rax], 1
jne 0x10042d87d
mov byte [rax], 0
cmp dword [rsp + 0x78], 0
jne 0x10042d8a2
call dbg.get_config_nick
mov rdx, rax
mov rcx, rbp
call sym.strcasecmp
test eax, eax
jne 0x10042d8a2
mov ecx, 0
call dbg.identify_needed
mov esi, esi
mov r9d, dword [rsp + 0x78]
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
movsx r8d, byte [rax + rsi*2 + 0x201]
mov rdx, rbp
mov rcx, r13
call dbg.changeinmemberlist_mode
mov rcx, rbp
call dbg.mydelete2
jmp 0x10042d8e8
add esi, 1
add rax, 2
cmp esi, 0x10
je 0x10042d8e8
movzx edx, byte [rax]
test dl, dl
jne 0x10042d810
mov rax, qword [0x1004632e0]
mov rcx, qword [rax]
movzx eax, byte [rcx + 0x220]
test al, al
je 0x10042d947
movzx r8d, byte [r12]
cmp al, r8b
je 0x10042d91c
lea rax, [rcx + 0x221]
add rcx, 0x230
jmp 0x10042d92c
cmp dl, r8b
jne 0x10042d923
add dword [rsp + 0x7c], 1
jmp 0x10042d947
add rax, 1
cmp rax, rcx
je 0x10042d947
movzx edx, byte [rax]
test dl, dl
jne 0x10042d917
jmp 0x10042d947
mov dword [rsp + 0x78], 1
jmp 0x10042d947
mov dword [rsp + 0x78], 0
add r12, 1
movzx ecx, byte [r12]
test cl, cl
jne 0x10042d7d1
jmp 0x10042cfbb
call dbg.get_config_nick
mov rdx, rax
mov rcx, qword [rsp + 0xa8]
call sym.strcasecmp
test eax, eax
jne 0x10042cfbb
mov rax, qword [rsp + 0xb0]
cmp byte [rax], 0x2d
jne 0x10042cfbb
mov ecx, 0
call dbg.identify_needed
jmp 0x10042cfbb
mov rbp, qword [rsp + 0xa8]
test rbp, rbp
je 0x10042e80d
cmp byte [rbp], 0x3a
sete cl
movzx ecx, cl
add rbp, rcx
mov ecx, 5
lea rdi, str.JOIN
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta r9b
setb cl
cmp r9b, cl
jne 0x10042db97
cmp qword [rdx + 0xa40], 0
je 0x10042cfbb
test rbp, rbp
je 0x10042cfbb
mov rcx, rbp
call dbg.caps
mov rcx, qword [rsp + 0x90]
call dbg.ir_get_nickarg
mov rdi, rax
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov rsi, qword [rax + 0xa40]
mov rcx, rdi
call dbg.caps
mov rdx, rsi
mov rcx, rax
call sym.strcmp
test eax, eax
jne 0x10042db2b
mov rsi, qword [0x1004632e0]
mov rax, qword [rsi]
mov dword [rax + 0xaa4], 0
mov rax, qword [rax + 0xa48]
mov qword [rsp + 0x20], rax
mov r9, rbp
lea r8, str.Entrato_in__s_su__s
mov edx, 0
mov ecx, 7
call dbg.ioutput
mov rcx, qword [rsi]
add rcx, 0xf8
call dbg.irlist_get_head
mov rsi, rax
test rax, rax
je 0x10042db82
mov r12, qword [rsi]
mov rdx, r12
mov rcx, rbp
call sym.strcmp
test eax, eax
je 0x10042daaf
mov rcx, rsi
call dbg.irlist_get_next
mov rsi, rax
test rax, rax
jne 0x10042da88
jmp 0x10042db82
or word [rsi + 0x38], 1
mov rax, qword [0x1004632d0]
mov rdx, qword [rax + 0xa9d0]
mov qword [rsi + 0x60], rdx
mov edx, dword [rax + 0x78d8]
add rdx, qword [rax + 0xa9d0]
mov qword [rsi + 0x48], rdx
mov edx, dword [rax + 0x78d8]
add rdx, qword [rax + 0xa9d0]
mov qword [rsi + 0x50], rdx
mov r9, qword [rsi + 0x20]
test r9, r9
je 0x10042db05
mov r8, r12
lea rdx, [0x100458071]
mov ecx, 1
call dbg.writeserver
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov dword [rax + 0xb2c], 1
call dbg.start_sends
mov rcx, rdi
call dbg.mydelete2
jmp 0x10042cfbb
mov rax, qword [0x1004632e0]
mov rcx, qword [rax]
add rcx, 0xf8
call dbg.irlist_get_head
mov rsi, rax
test rax, rax
je 0x10042db82
mov rdx, qword [rsi]
mov rcx, rbp
call sym.strcmp
test eax, eax
je 0x10042db6a
mov rcx, rsi
call dbg.irlist_get_next
mov rsi, rax
test rax, rax
jne 0x10042db49
jmp 0x10042db82
mov rdx, rdi
mov rcx, rsi
call dbg.addtomemberlist
mov rcx, rdi
call dbg.mydelete2
jmp 0x10042cfbb
mov rcx, rbp
call dbg.ir_unknown_channel
mov rcx, rdi
call dbg.mydelete2
jmp 0x10042cfbb
mov ecx, 5
lea rdi, str.PART
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta r9b
setb cl
cmp r9b, cl
jne 0x10042dc88
cmp qword [rdx + 0xa40], 0
je 0x10042cfbb
test rbp, rbp
je 0x10042cfbb
mov rcx, r8
call dbg.ir_get_nickarg
mov rdi, rax
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov rsi, qword [rax + 0xa40]
mov rcx, rdi
call dbg.caps
mov rdx, rsi
mov rcx, rax
call sym.strcmp
test eax, eax
jne 0x10042dc0f
mov rcx, rdi
call dbg.mydelete2
jmp 0x10042cfbb
mov rcx, rbp
call dbg.caps
mov rax, qword [0x1004632e0]
mov rcx, qword [rax]
add rcx, 0xf8
call dbg.irlist_get_head
mov rsi, rax
test rax, rax
je 0x10042dc73
mov rdx, qword [rsi]
mov rcx, rbp
call sym.strcmp
test eax, eax
je 0x10042dc56
mov rcx, rsi
call dbg.irlist_get_next
mov rsi, rax
test rax, rax
jne 0x10042dc35
jmp 0x10042dc73
mov rdx, rdi
mov rcx, rsi
call dbg.removefrommemberlist
mov rcx, rdi
call dbg.mydelete2
call dbg.reverify_restrictsend
jmp 0x10042cfbb
mov rcx, rbp
call dbg.ir_unknown_channel
mov rcx, rdi
call dbg.mydelete2
jmp 0x10042cfbb
mov ecx, 5
lea rdi, str.NICK
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta r9b
setb cl
cmp r9b, cl
jne 0x10042de08
cmp qword [rdx + 0xa40], 0
je 0x10042cfbb
test rbp, rbp
je 0x10042cfbb
mov rcx, r8
call dbg.ir_get_nickarg
mov r12, rax
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov rsi, qword [rax + 0xa40]
mov rcx, r12
call dbg.caps
mov rdx, rsi
mov rcx, rax
call sym.strcmp
test eax, eax
jne 0x10042ddb4
mov rsi, qword [0x1004632e0]
mov rax, qword [rsi]
mov rcx, qword [rax + 0xa38]
call dbg.mydelete2
mov rax, qword [rsi]
mov qword [rax + 0xa38], 0
mov rcx, qword [rax + 0xa40]
call dbg.mydelete2
mov rdi, qword [rsi]
mov qword [rdi + 0xa40], 0
mov r9d, 0x565
lea r8, str.src.it_dinoex_irc.c
lea rdx, str.ir_parseline2
mov rcx, rbp
call dbg.mystrdup2
mov qword [rdi + 0xa38], rax
mov rdi, qword [rsi]
mov r9d, 0x566
lea r8, str.src.it_dinoex_irc.c
lea rdx, str.ir_parseline2
mov rcx, rbp
call dbg.mystrdup2
mov qword [rdi + 0xa40], rax
mov rax, qword [rsi]
mov rcx, qword [rax + 0xa40]
call dbg.caps
mov rax, qword [rsi]
mov dword [rax + 0xab4], 0
mov rax, qword [0x1004632d0]
add dword [rax + 0xb780], 1
mov ecx, 0
call dbg.identify_needed
jmp 0x10042ddfb
mov rax, qword [0x1004632e0]
mov rcx, qword [rax]
add rcx, 0xf8
call dbg.irlist_get_head
mov rsi, rax
test rax, rax
je 0x10042ddf0
mov r8, rbp
mov rdx, r12
mov rcx, rsi
call dbg.changeinmemberlist_nick
mov rcx, rsi
call dbg.irlist_get_next
mov rsi, rax
test rax, rax
jne 0x10042ddd2
mov rdx, rbp
mov rcx, r12
call dbg.user_changed_nick
mov rcx, r12
call dbg.mydelete2
jmp 0x10042cfbb
mov ecx, 5
lea rdi, str.KICK
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta cl
setb al
cmp cl, al
jne 0x10042dfb3
cmp qword [rdx + 0xa40], 0
je 0x10042cfbb
test rbp, rbp
je 0x10042cfbb
cmp qword [rsp + 0xb0], 0
je 0x10042cfbb
mov rcx, rbp
call dbg.caps
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov rsi, qword [rax + 0xa40]
mov rcx, qword [rsp + 0xb0]
call dbg.caps
mov rdx, rsi
mov rcx, rax
call sym.strcmp
test eax, eax
jne 0x10042df53
mov rax, qword [0x1004632e0]
mov rcx, qword [rax]
add rcx, 0xf8
call dbg.irlist_get_head
mov rsi, rax
test rax, rax
je 0x10042cfbb
mov r13, qword [0x1004632d0]
mov rdi, qword [0x1004632e0]
mov r12, rdi
mov rdx, qword [rsi]
mov rcx, rbp
call sym.strcmp
test eax, eax
jne 0x10042df3a
cmp dword [r13 + 0x79c8], 0
je 0x10042df0a
mov r9, qword [rsp + 0x90]
mov rax, qword [r12]
mov r8, qword [rax + 0xa48]
lea rdx, str.Kickato_su__s:__s
mov ecx, 1
call dbg.outerror
or word [rsi + 0x38], 0x40
mov rcx, rsi
call dbg.clearmemberlist
call dbg.reverify_restrictsend
jmp 0x10042df3a
mov r9, qword [rsp + 0x90]
mov rax, qword [rdi]
mov r8, qword [rax + 0xa48]
lea rdx, str.Kickato_su__s._Rientro:__s
mov ecx, 1
call dbg.outerror
and word [rsi + 0x38], 0xfffe
mov rcx, rsi
call dbg.joinchannel
mov rcx, rsi
call dbg.irlist_get_next
mov rsi, rax
test rax, rax
jne 0x10042deb9
jmp 0x10042cfbb
mov rax, qword [0x1004632e0]
mov rcx, qword [rax]
add rcx, 0xf8
call dbg.irlist_get_head
mov rsi, rax
test rax, rax
je 0x10042cfbb
mov rdx, qword [rsi]
mov rcx, rbp
call sym.strcmp
test eax, eax
je 0x10042df99
mov rcx, rsi
call dbg.irlist_get_next
mov rsi, rax
test rax, rax
jne 0x10042df75
jmp 0x10042cfbb
mov rdx, qword [rsp + 0xb0]
mov rcx, rsi
call dbg.removefrommemberlist
call dbg.reverify_restrictsend
jmp 0x10042cfbb
mov ecx, 0x16
lea rdi, str.ERRORE_:Chiudo_il_link
mov rsi, r8
repe cmpsb byte [rsi], byte [rdi]
seta cl
setb al
cmp cl, al
jne 0x10042cfbb
mov rax, qword [0x1004632d0]
cmp dword [rax + 0xb7d8], 0
je 0x10042dff1
mov dword [rdx + 0xab0], 0
jmp 0x10042cfbb
mov r9, qword [rdx + 0xa48]
mov qword [rsp + 0x20], r8
lea r8, str.Connessione_al_server_chiusa_su__s:__s
mov edx, 0x1f
mov ecx, 7
call dbg.ioutput
call dbg.close_server
jmp 0x10042cfbb
mov rcx, qword [rsi + 8]
call dbg.mydelete2
mov qword [rsi + 8], 0
add rsi, 8
cmp rsi, rdi
jne 0x10042e01d
mov edx, 0
jmp 0x10042e055
mov rcx, qword [0x1004632e0]
mov r8, qword [rcx]
mov ecx, edx
mov byte [r8 + rcx + 0x230], al
add edx, 1
add rbx, 1
cmp rbx, r15
jne 0x10042ca1f
mov r14d, dword [rsp + 0x74]
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov edx, edx
mov byte [rax + rdx + 0x230], 0
jmp 0x10042e7bb
cmp eax, 3
jne 0x10042e0d2
mov ecx, dword [rbx + 0xb6c]
movsxd rax, ecx
shr rax, 6
mov edx, 1
shl rdx, cl
mov rcx, qword [0x1004632d0]
test qword [rcx + rax*8 + 0xb648], rdx
jne 0x10042e0b5
test qword [rcx + rax*8 + 0xb628], rdx
je 0x10042e0ba
call dbg.handshake_ssl
cmp dword [rsp + 0x920], 0
je 0x10042e7bb
call dbg.irc_server_timeout
jmp 0x10042e7bb
cmp eax, 2
jne 0x10042e3d5
mov ecx, dword [rbx + 0xb6c]
movsxd rax, ecx
shr rax, 6
mov edx, 1
shl rdx, cl
mov r8, qword [0x1004632d0]
test qword [r8 + rax*8 + 0xb648], rdx
je 0x10042e3bd
mov dword [rsp + 0x90], 4
mov rax, qword [rsp + 0x48]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x8c]
mov r8d, 0x1007
mov edx, 0xffff
call sym.getsockopt
test eax, eax
jns 0x10042e174
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov rbx, qword [rax + 0xa48]
call sym.__errno
mov ecx, dword [rax]
call sym.strerror
mov r8, rax
mov r9, rbx
lea rdx, str.Non_riesco_a_determinare_lo_stato_di_connessione:__s_on__s
mov ecx, 2
call dbg.outerror
call dbg.close_server
jmp 0x10042e7bb
mov ecx, dword [rsp + 0x8c]
test ecx, ecx
je 0x10042e1bd
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov rbx, qword [rax + 0xa48]
call sym.strerror
mov r9, rax
mov qword [rsp + 0x20], rbx
lea r8, str.COnnessione_al_server_fallita:__s_on__s
mov edx, 0
mov ecx, 7
call dbg.ioutput
call dbg.close_server
jmp 0x10042e7bb
mov rbx, qword [0x1004632e0]
mov rax, qword [rbx]
mov r9, qword [rax + 0xa48]
lea r8, str.Connessione_al_server__s_stabilita._Mi_sto_loggando
mov edx, 0
mov ecx, 7
call dbg.ioutput
mov rax, qword [rbx]
mov dword [rax + 0xb28], 4
mov rdx, qword [0x1004632d0]
mov rdx, qword [rdx + 0xa9d0]
mov qword [rax + 0x190], rdx
mov dword [rax + 0xb2c], 0
lea rcx, [rax + 0xf8]
call dbg.irlist_get_head
test rax, rax
jne 0x10042e23a
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov dword [rax + 0xb2c], 1
call dbg.start_sends
mov rax, qword [0x1004632e0]
mov r8, qword [rax]
mov ecx, dword [r8 + 0xb24]
movsxd rdx, ecx
shr rdx, 6
mov r9, qword [0x1004632d0]
mov eax, 1
shl rax, cl
not rax
and qword [r9 + rdx*8 + 0xb648], rax
mov dword [rsp + 0xd0], 0x1c
lea rdx, [r8 + 0xb40]
mov qword [r8 + 0xb40], 0
mov qword [rdx + 8], 0
mov qword [rdx + 0x10], 0
mov dword [rdx + 0x18], 0
mov ecx, dword [r8 + 0xb24]
mov r8, qword [rsp + 0x58]
call sub.cygwin1.dll_getsockname
test eax, eax
js 0x10042e396
mov rax, qword [0x1004632d0]
cmp dword [rax + 0x78b8], 0
je 0x10042e83b
mov dword [rsp + 0x20], 0x641
lea r9, str.src.it_dinoex_irc.c
lea r8, str.irc_perform
mov edx, 0
mov ecx, 0x200
call dbg.mymalloc2
mov rbx, rax
mov rsi, qword [0x1004632e0]
mov r8, qword [rsi]
add r8, 0xb40
mov edx, 0x1ff
mov rcx, rax
call dbg.my_getnameinfo
mov r9, rbx
lea r8, str.using__s
mov edx, 0x21
mov ecx, 1
call dbg.ioutput
mov rcx, rbx
call dbg.mydelete2
mov rdx, qword [rsi]
cmp dword [rdx + 0xae4], 0
jne 0x10042e3b8
mov eax, dword [rdx + 0xb44]
bswap eax
mov dword [rdx + 0xb38], eax
mov rdx, qword [0x1004632d0]
cmp dword [rdx + 0x78b8], 0
je 0x10042e3b8
movzx edx, al
mov dword [rsp + 0x30], edx
movzx edx, ah
mov dword [rsp + 0x28], edx
mov edx, eax
shr edx, 0x10
movzx edx, dl
mov dword [rsp + 0x20], edx
shr eax, 0x18
mov r9d, eax
lea r8, str.ourip___u._u._u._u
mov edx, 0x21
mov ecx, 1
call dbg.ioutput
jmp 0x10042e3b8
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov r8, qword [rax + 0xa48]
lea rdx, str.Impossibile_recuperare_ourip_su__s
mov ecx, 2
call dbg.outerror
call dbg.handshake_ssl
cmp dword [rsp + 0x920], 0
je 0x10042e7bb
call dbg.irc_server_timeout
jmp 0x10042e7bb
cmp eax, 1
jne 0x10042e756
mov ecx, dword [rbx + 0x1c4]
movsxd rax, ecx
shr rax, 6
mov edx, 1
shl rdx, cl
mov r8, qword [0x1004632d0]
test qword [r8 + rax*8 + 0xb628], rdx
je 0x10042e6e8
mov r8d, 0x38
mov rdx, qword [rsp + 0x58]
call sym.read
mov rsi, rax
mov rbx, qword [0x1004632e0]
mov rax, qword [rbx]
mov ecx, dword [rax + 0x184]
mov edx, 9
call sym.kill
mov rbx, qword [rbx]
mov ecx, dword [rbx + 0x17c]
movsxd rdx, ecx
shr rdx, 6
mov r8, qword [0x1004632d0]
mov eax, 1
shl rax, cl
not rax
and qword [r8 + rdx*8 + 0xb628], rax
cmp esi, 0x38
je 0x10042e4a6
mov r9, qword [rbx + 0x158]
mov rax, qword [rbx + 0xa48]
mov qword [rsp + 0x20], rax
lea r8, str.Errore_nel_rintracciare_il_server__s_su__s
mov edx, 0x1f
mov ecx, 7
call dbg.ioutput
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov dword [rax + 0xb28], 0
jmp 0x10042e6e8
cmp dword [rsp + 0xd0], 0
je 0x10042e4ba
mov dword [rbx + 0x188], 0
movzx esi, word [rsp + 0xe8]
mov r8d, dword [rsp + 0xdc]
mov edx, dword [rsp + 0xd8]
mov ecx, esi
call sym.socket
mov dword [rbx + 0xb24], eax
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
cmp dword [rax + 0xb24], 0
jns 0x10042e516
call sym.__errno
mov ecx, dword [rax]
call sym.strerror
mov r8, rax
lea rdx, str.Errore_Socket:__s
mov ecx, 1
call dbg.outerror
jmp 0x10042e854
mov rax, qword [0x1004632d0]
cmp dword [rax + 0x78b8], 0
je 0x10042e581
mov dword [rsp + 0x20], 0x2ab
lea r9, str.src.it_dinoex_irc.c
lea r8, str.connectirc2
mov edx, 0
mov ecx, 0x200
call dbg.mymalloc2
mov rbx, rax
mov r8, qword [rsp + 0x68]
mov edx, 0x1ff
mov rcx, rax
call dbg.my_getnameinfo
mov r9, rbx
lea r8, str.In_Connessione_a__s
mov edx, 0x21
mov ecx, 1
call dbg.ioutput
mov rcx, rbx
call dbg.mydelete2
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov edx, dword [rax + 0xb24]
mov ecx, esi
call dbg.bind_irc_vhost
test eax, eax
je 0x10042e5c7
lea rdx, str.Non_posso_attaccarmi_al_Virtual_Host
mov ecx, 1
call dbg.outerror
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov ecx, dword [rax + 0xb24]
call dbg.event_close
jmp 0x10042e854
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov ecx, dword [rax + 0xb24]
mov edx, 1
call dbg.set_socket_nonblocking
test eax, eax
jns 0x10042e5f6
lea rdx, [0x100457ba8]
mov ecx, 2
call dbg.outerror
mov ecx, 5
call sym.alarm
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov ecx, dword [rax + 0xb24]
mov r8d, dword [rsp + 0xe0]
mov rdx, qword [rsp + 0x68]
call sym.connect
test eax, eax
jns 0x10042e67e
call sym.__errno
cmp dword [rax], 0x77
je 0x10042e67e
call sym.__errno
cmp dword [rax], 0xb
je 0x10042e67e
call sym.__errno
mov ecx, dword [rax]
call sym.strerror
mov r8, rax
lea rdx, str.Connessione_al_server_fallita:__s
mov ecx, 1
call dbg.outerror
mov ecx, 0
call sym.alarm
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov ecx, dword [rax + 0xb24]
call dbg.event_close
jmp 0x10042e854
mov ecx, 0
call sym.alarm
mov rax, qword [0x1004632d0]
cmp dword [rax + 0x78b8], 0
je 0x10042e6bf
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov r9d, dword [rax + 0xb24]
lea r8, str.ircserver_socket___d
mov edx, 0x21
mov ecx, 1
call dbg.ioutput
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov rdx, qword [0x1004632d0]
mov rdx, qword [rdx + 0xa9d0]
mov qword [rax + 0x198], rdx
mov dword [rax + 0xb28], 2
cmp dword [rsp + 0x920], 0
je 0x10042e7bb
call dbg.irc_server_is_timeout
mov ebx, eax
test eax, eax
jle 0x10042e7bb
mov rsi, qword [0x1004632e0]
mov rax, qword [rsi]
mov ecx, dword [rax + 0x184]
mov edx, 9
call sym.kill
mov rax, qword [rsi]
mov rax, qword [rax + 0xa48]
mov qword [rsp + 0x20], rax
mov r9d, ebx
lea r8, str.Tempo_di_risoluzione_del_server_scaduto_di___u_seconds__su__s
mov edx, 0
mov ecx, 7
call dbg.ioutput
mov rax, qword [rsi]
mov dword [rax + 0xb28], 0
jmp 0x10042e7bb
cmp dword [rbx + 0xb38], 0
sete dl
test eax, eax
sete al
test dl, al
je 0x10042e7bb
cmp dword [rsp + 0x920], 0
je 0x10042e7bb
call dbg.irc_server_is_timeout
test eax, eax
jle 0x10042e7bb
mov rdx, qword [0x1004632d0]
cmp dword [rdx + 0x78b8], 0
je 0x10042e7b1
mov rdx, qword [rbx + 0xa90]
mov qword [rsp + 0x20], rdx
mov r9d, eax
lea r8, str.Riconnettendo_al_server___u_seconds__su__s
mov edx, 0x21
mov ecx, 1
call dbg.ioutput
mov ecx, 0xffffffff
call dbg.switchserver
add r14d, 1
add qword [rsp + 0x40], 0xb60
mov rax, qword [0x1004632d0]
cmp dword [rax + 0xb750], r14d
ja 0x10042c877
mov rax, qword [0x1004632e0]
mov qword [rax], 0
mov rax, qword [0x1004632d0]
cmp dword [rax + 0xb7e8], 0
je 0x10042e893
mov dword [rax + 0xb7e8], 0
jmp 0x10042e893
mov ecx, 5
lea rdi, str.JOIN
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta r9b
setb cl
cmp r9b, cl
je 0x10042cfbb
jmp 0x10042e86d
mov eax, dword [rdx + 0xb44]
jmp 0x10042e346
mov rax, qword [0x1004632e0]
mov rdx, qword [rax]
cmp dword [rdx + 0xae4], 0
jne 0x10042e3b8
jmp 0x10042e830
mov rax, qword [0x1004632e0]
mov rax, qword [rax]
mov dword [rax + 0xb28], 0
jmp 0x10042e6e8
mov ecx, 5
lea rdi, str.PART
mov rsi, rax
repe cmpsb byte [rsi], byte [rdi]
seta r9b
setb cl
cmp r9b, cl
jne 0x10042dc88
jmp 0x10042cfbb
add rsp, 0x8d8
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret