Function at 0x140169430
Capabilities:
Terminate process

Disassembly:
mov qword [rsp + 0x20], r9
mov dword [rsp + 0x18], r8d
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
sub rsp, 0x130
lea rdi, [rsp + 0x30]
mov ecx, 0x40
mov eax, 0xcccccccc
rep stosd dword [rdi], eax
mov rcx, qword [rsp + 0x140]
mov rax, qword [0x140575740]
xor rax, rsp
mov qword [rsp + 0x120], rax
mov dword [rsp + 0x30], 1
mov rax, qword [rsp + 0x140]
mov qword [rsp + 0x38], rax
mov qword [rsp + 0x58], 0
mov dword [rsp + 0x70], 0xffffffff
cmp qword [rsp + 0x148], 0
je 0x1401694b2
cmp dword [rsp + 0x150], 0
jne 0x1401694b9
xor eax, eax
jmp 0x14016a0ec
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x20], 0
je 0x1401694ee
mov eax, 4
imul rax, rax, 2
mov rcx, qword [rsp + 0x38]
add rax, qword [rcx + 0x20]
mov ecx, 8
imul rcx, rcx, 0
mov rax, qword [rax + rcx]
mov qword [rsp + 0xb0], rax
jmp 0x1401694fa
mov qword [rsp + 0xb0], 0
lea r9, str.Setting_Ice_Offer:
mov r8d, 2
mov edx, 2
mov rcx, qword [rsp + 0xb0]
call fcn.1401589b0
cmp qword [rsp + 0x158], 0
je 0x1401695e7
cmp dword [rsp + 0x160], 0
jle 0x1401695e7
movsxd rax, dword [rsp + 0x160]
mov rcx, qword [rsp + 0x158]
movzx eax, byte [rcx + rax]
mov byte [rsp + 0x78], al
movsxd rax, dword [rsp + 0x160]
mov rcx, qword [rsp + 0x158]
mov byte [rcx + rax], 0
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x20], 0
je 0x140169597
mov eax, 4
imul rax, rax, 2
mov rcx, qword [rsp + 0x38]
add rax, qword [rcx + 0x20]
mov ecx, 8
imul rcx, rcx, 0
mov rax, qword [rax + rcx]
mov qword [rsp + 0xb8], rax
jmp 0x1401695a3
mov qword [rsp + 0xb8], 0
mov rax, qword [rsp + 0x158]
mov qword [rsp + 0x20], rax
lea r9, str....username:__s
mov r8d, 2
mov edx, 2
mov rcx, qword [rsp + 0xb8]
call fcn.1401589b0
movsxd rax, dword [rsp + 0x160]
mov rcx, qword [rsp + 0x158]
movzx edx, byte [rsp + 0x78]
mov byte [rcx + rax], dl
mov r9d, 0xb2b
lea r8, [0x140566240]
mov edx, 1
mov ecx, 0x150
call fcn.1403ba980
mov qword [rsp + 0x40], rax
cmp qword [rsp + 0x40], 0
jne 0x140169658
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
mov r9d, 0xfe
mov r8d, 0xb2b
lea rdx, [0x140566290]
xor ecx, ecx
call fcn.14014da80
mov r8d, 0xb2b
lea rdx, [0x1405662e0]
lea rcx, [0x140566328]
call fcn.140015e70
mov ecx, 0xfe
call fcn.14038e600
nop
mov r8d, 0x150
xor edx, edx
mov rcx, qword [rsp + 0x40]
call fcn.140410c60
mov rax, qword [rsp + 0x40]
add rax, 0x5b
mov rdx, rax
mov ecx, 8
call fcn.140132bc0
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
mov ecx, dword [rcx + 0x2d4]
mov dword [rax + 0xb0], ecx
mov eax, 1
imul rax, rax, 6
mov rcx, qword [rsp + 0x148]
movsx eax, byte [rcx + rax]
mov ecx, 1
imul rcx, rcx, 6
mov rdx, qword [rsp + 0x148]
movsx ecx, byte [rdx + rcx]
add ecx, 7
movsxd rcx, ecx
mov rdx, qword [rsp + 0x148]
movsx ecx, byte [rdx + rcx]
lea eax, [rax + rcx + 8]
mov ecx, 1
imul rcx, rcx, 6
mov rdx, qword [rsp + 0x148]
movsx ecx, byte [rdx + rcx]
mov edx, 1
imul rdx, rdx, 6
mov r8, qword [rsp + 0x148]
movsx edx, byte [r8 + rdx]
add edx, 7
movsxd rdx, edx
mov r8, qword [rsp + 0x148]
movsx edx, byte [r8 + rdx]
lea ecx, [rcx + rdx + 8]
movsxd rcx, ecx
mov rdx, qword [rsp + 0x148]
movsx ecx, byte [rdx + rcx]
lea eax, [rax + rcx + 1]
cdqe
mov rcx, qword [rsp + 0x148]
movsx eax, byte [rcx + rax]
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x74]
lea eax, [rax + rcx + 1]
cdqe
mov r9d, 0xb33
lea r8, [0x140566350]
mov edx, 1
mov rcx, rax
call fcn.1403ba980
mov qword [rsp + 0xc0], rax
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0xc0]
mov qword [rax + 0x20], rcx
cmp qword [rsp + 0xc0], 0
jne 0x1401697d4
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [rsp + 0x20], eax
mov r9d, 0xfe
mov r8d, 0xb33
lea rdx, [0x1405663a0]
xor ecx, ecx
call fcn.14014da80
mov r8d, 0xb33
lea rdx, [0x1405663f0]
lea rcx, [0x140566438]
call fcn.140015e70
mov ecx, 0xfe
call fcn.14038e600
nop
movsxd rax, dword [rsp + 0x150]
mov ecx, dword [rsp + 0x150]
mov edx, dword [rsp + 0x74]
lea ecx, [rcx + rdx + 1]
movsxd rcx, ecx
mov r9, rax
mov r8, qword [rsp + 0x148]
mov rdx, rcx
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x20]
call fcn.140168c00
mov eax, dword [rsp + 0x74]
inc eax
cdqe
movsxd rcx, dword [rsp + 0x150]
mov rdx, qword [rsp + 0x40]
add rcx, qword [rdx + 0x20]
mov r8, rax
xor edx, edx
call fcn.140410c60
mov eax, 2
imul rax, rax, 0
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 0x20]
movzx ecx, word [rcx + rax]
call qword [sym.imp.WS2_32.dll_ntohs]
mov rcx, qword [rsp + 0x40]
mov word [rcx + 0x28], ax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x20]
mov ecx, 4
imul rcx, rcx, 0
mov ecx, dword [rax + rcx + 2]
call qword [sym.imp.WS2_32.dll_ntohl]
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0x2c], eax
mov eax, 1
imul rax, rax, 6
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 0x20]
movsx eax, byte [rcx + rax]
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0x10], eax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x20]
add rax, 7
mov rcx, qword [rsp + 0x40]
mov qword [rcx], rax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x10]
add eax, 7
cdqe
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 0x20]
movsx eax, byte [rcx + rax]
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0x14], eax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x20]
mov rcx, qword [rsp + 0x40]
movsxd rcx, dword [rcx + 0x10]
lea rax, [rax + rcx + 8]
mov rcx, qword [rsp + 0x40]
mov qword [rcx + 8], rax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 0x14]
lea eax, [rax + rcx + 8]
cdqe
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 0x20]
movsx eax, byte [rcx + rax]
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0x70], eax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x20]
mov rcx, qword [rsp + 0x40]
movsxd rcx, dword [rcx + 0x10]
lea rax, [rax + rcx + 7]
mov rcx, qword [rsp + 0x40]
movsxd rcx, dword [rcx + 0x14]
lea rax, [rax + rcx + 2]
mov rcx, qword [rsp + 0x40]
mov qword [rcx + 0x68], rax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 0x14]
lea eax, [rax + rcx + 8]
mov rcx, qword [rsp + 0x40]
mov ecx, dword [rcx + 0x70]
lea eax, [rax + rcx + 1]
cdqe
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 0x20]
movsx eax, byte [rcx + rax]
mov rcx, qword [rsp + 0x40]
mov dword [rcx + 0x88], eax
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 0x20]
mov rcx, qword [rsp + 0x40]
movsxd rcx, dword [rcx + 0x10]
lea rax, [rax + rcx + 7]
mov rcx, qword [rsp + 0x40]
movsxd rcx, dword [rcx + 0x14]
lea rax, [rax + rcx + 1]
mov rcx, qword [rsp + 0x40]
movsxd rcx, dword [rcx + 0x70]
lea rax, [rax + rcx + 2]
mov rcx, qword [rsp + 0x40]
mov qword [rcx + 0x78], rax
movsxd rax, dword [rsp + 0x150]
mov rcx, qword [rsp + 0x40]
add rax, qword [rcx + 0x20]
mov rcx, qword [rsp + 0x40]
mov qword [rcx + 0x80], rax
mov rax, qword [rsp + 0x40]
mov dword [rax + 0x8c], 0
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x2c]
and eax, 2
cmp eax, 2
jne 0x140169a03
mov dword [rsp + 0xc8], 0
jmp 0x140169a0e
mov dword [rsp + 0xc8], 1
mov rax, qword [rsp + 0x40]
mov ecx, dword [rsp + 0xc8]
mov dword [rax + 0x90], ecx
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x2c]
and eax, 2
cmp eax, 2
jne 0x140169a3d
mov dword [rsp + 0xcc], 1
jmp 0x140169a48
mov dword [rsp + 0xcc], 0
mov rax, qword [rsp + 0x40]
mov ecx, dword [rsp + 0xcc]
mov dword [rax + 0x94], ecx
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
mov qword [rax + 0xa0], rcx
mov rax, qword [rsp + 0x40]
mov dword [rax + 0x98], 0xffffffff
call fcn.1401390e0
mov rcx, qword [rsp + 0x40]
mov qword [rcx + 0xa8], rax
mov rax, qword [rsp + 0x40]
cmp dword [rax + 0x90], 0
je 0x140169aaa
lea rax, str.Initiator
mov qword [rsp + 0xd0], rax
jmp 0x140169ab9
lea rax, str.Receiver
mov qword [rsp + 0xd0], rax
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x20], 0
je 0x140169aee
mov eax, 4
imul rax, rax, 2
mov rcx, qword [rsp + 0x38]
add rax, qword [rcx + 0x20]
mov ecx, 8
imul rcx, rcx, 0
mov rax, qword [rax + rcx]
mov qword [rsp + 0xd8], rax
jmp 0x140169afa
mov qword [rsp + 0xd8], 0
mov rax, qword [rsp + 0xd0]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x2c]
mov dword [rsp + 0x20], eax
lea r9, str....Remote_is:___d___s
mov r8d, 2
mov edx, 2
mov rcx, qword [rsp + 0xd8]
call fcn.1401589b0
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x20], 0
je 0x140169b67
mov eax, 4
imul rax, rax, 2
mov rcx, qword [rsp + 0x38]
add rax, qword [rcx + 0x20]
mov ecx, 8
imul rcx, rcx, 0
mov rax, qword [rax + rcx]
mov qword [rsp + 0xe0], rax
jmp 0x140169b73
mov qword [rsp + 0xe0], 0
mov rax, qword [rsp + 0x40]
mov edx, dword [rax + 0x70]
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x68]
call fcn.140158950
mov qword [rsp + 0x20], rax
lea r9, str....Certificate:__s
mov r8d, 2
mov edx, 2
mov rcx, qword [rsp + 0xe0]
call fcn.1401589b0
cmp qword [rsp + 0x158], 0
je 0x140169c96
cmp qword [rsp + 0x168], 0
je 0x140169c96
mov eax, dword [rsp + 0x170]
mov ecx, dword [rsp + 0x160]
add ecx, eax
mov eax, ecx
cmp eax, 0x28
jne 0x140169c96
mov eax, 1
imul rax, rax, 0
mov rcx, qword [rsp + 0x40]
movzx edx, byte [rsp + 0x160]
mov byte [rcx + rax + 0x30], dl
movsxd rax, dword [rsp + 0x160]
mov rcx, qword [rsp + 0x40]
add rcx, 0x31
mov r9, rax
mov r8, qword [rsp + 0x158]
mov edx, 0x2a
call fcn.140168c00
mov eax, dword [rsp + 0x160]
inc eax
cdqe
mov rcx, qword [rsp + 0x40]
movzx edx, byte [rsp + 0x170]
mov byte [rcx + rax + 0x30], dl
movsxd rax, dword [rsp + 0x170]
movsxd rcx, dword [rsp + 0x160]
mov edx, 0x29
sub rdx, rcx
mov rcx, rdx
movsxd rdx, dword [rsp + 0x160]
mov r8, qword [rsp + 0x40]
lea rdx, [r8 + rdx + 0x32]
mov qword [rsp + 0xe8], rdx
mov r9, rax
mov r8, qword [rsp + 0x168]
mov rdx, rcx
mov rax, qword [rsp + 0xe8]
mov rcx, rax
call fcn.140168c00
nop
mov r9d, 1
lea r8, [rsp + 0x58]
mov rdx, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x38]
call fcn.140177960
mov dword [rsp + 0x70], eax
cmp dword [rsp + 0x70], 0
jge 0x140169d5c
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x20], 0
je 0x140169cf4
mov eax, 4
imul rax, rax, 2
mov rcx, qword [rsp + 0x38]
add rax, qword [rcx + 0x20]
mov ecx, 8
imul rcx, rcx, 0
mov rax, qword [rax + rcx]
mov qword [rsp + 0xf0], rax
jmp 0x140169d00
mov qword [rsp + 0xf0], 0
lea r9, str....Unable_to_update_add_offer
mov r8d, 2
mov edx, 2
mov rcx, qword [rsp + 0xf0]
call fcn.1401589b0
mov edx, 1
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax + 0x20]
call fcn.1403ba8b0
mov edx, 1
mov rcx, qword [rsp + 0x40]
call fcn.1403ba8b0
mov rax, qword [rsp + 0x178]
mov qword [rax], 0
xor eax, eax
jmp 0x14016a0ec
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x20], 0
je 0x140169d91
mov eax, 4
imul rax, rax, 2
mov rcx, qword [rsp + 0x38]
add rax, qword [rcx + 0x20]
mov ecx, 8
imul rcx, rcx, 0
mov rax, qword [rax + rcx]
mov qword [rsp + 0xf8], rax
jmp 0x140169d9d
mov qword [rsp + 0xf8], 0
mov eax, dword [rsp + 0x70]
mov dword [rsp + 0x20], eax
lea r9, str....Offer_Added_Updated_into_Ice_Slot:__d
mov r8d, 2
mov edx, 2
mov rcx, qword [rsp + 0xf8]
call fcn.1401589b0
cmp qword [rsp + 0x58], 0
je 0x14016a095
mov rax, qword [rsp + 0x58]
cmp dword [rax + 0x88], 0
jne 0x14016a025
mov rax, qword [rsp + 0x58]
cmp qword [rax + 0x78], 0
jne 0x14016a025
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x20], 0
je 0x140169e27
mov eax, 4
imul rax, rax, 2
mov rcx, qword [rsp + 0x38]
add rax, qword [rcx + 0x20]
mov ecx, 8
imul rcx, rcx, 0
mov rax, qword [rax + rcx]
mov qword [rsp + 0x100], rax
jmp 0x140169e33
mov qword [rsp + 0x100], 0
lea r9, str.......No_previous_offer_was_set__this_must_be_the_peers_answer_to_our_original_offer
mov r8d, 2
mov edx, 2
mov rcx, qword [rsp + 0x100]
call fcn.1401589b0
nop
mov dword [rsp + 0x64], 0
jmp 0x140169e67
mov eax, dword [rsp + 0x64]
inc eax
mov dword [rsp + 0x64], eax
cmp dword [rsp + 0x64], 8
jge 0x14016a025
movsxd rax, dword [rsp + 0x64]
imul rax, rax, 0x1c
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0x20]
movzx eax, word [rcx + rax]
test eax, eax
je 0x14016a020
mov dword [rsp + 0x68], 0
jmp 0x140169ea4
mov eax, dword [rsp + 0x68]
inc eax
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0x40]
mov eax, dword [rax + 0x88]
cmp dword [rsp + 0x68], eax
jge 0x14016a020
mov r8d, reloc.WS2_32.dll_recv
xor edx, edx
lea rcx, [rsp + 0x88]
call fcn.140410c60
mov eax, 2
mov word [rsp + 0x88], ax
movsxd rax, dword [rsp + 0x68]
imul rax, rax, 6
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 0x78]
movzx eax, word [rcx + rax + 4]
mov word [rsp + 0x8a], ax
movsxd rax, dword [rsp + 0x68]
imul rax, rax, 6
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 0x78]
mov eax, dword [rcx + rax]
mov dword [rsp + 0x8c], eax
movzx eax, word [rsp + 0x88]
cmp eax, 0x17
jne 0x140169f31
mov qword [rsp + 0x108], 0x1c
jmp 0x140169f3d
mov qword [rsp + reloc.WS2_32.dll_recv8], 0x10
movsxd rax, dword [rsp + 0x64]
imul rax, rax, 0x1c
mov rcx, qword [rsp + 0x58]
add rax, qword [rcx + 0x20]
mov r8, qword [rsp + 0x108]
mov rdx, rax
lea rcx, [rsp + 0x88]
call fcn.1404104c0
test eax, eax
jne 0x14016a01b
mov rax, qword [rsp + 0x38]
cmp qword [rax + 0x20], 0
je 0x140169fa4
mov eax, 4
imul rax, rax, 2
mov rcx, qword [rsp + 0x38]
add rax, qword [rcx + 0x20]
mov ecx, 8
imul rcx, rcx, 0
mov rax, qword [rax + rcx]
mov qword [rsp + 0x110], rax
jmp 0x140169fb0
mov qword [rsp + 0x110], 0
movzx ecx, word [rsp + 0x8a]
call qword [sym.imp.WS2_32.dll_ntohs]
movzx eax, ax
mov dword [rsp + 0x118], eax
lea rcx, [rsp + 0x88]
call fcn.140158910
mov ecx, dword [rsp + 0x118]
mov dword [rsp + 0x28], ecx
mov qword [rsp + 0x20], rax
lea r9, str.......Candidate:__s:_u_was_already_unlocked
mov r8d, 2
mov edx, 2
mov rcx, qword [rsp + 0x110]
call fcn.1401589b0
movsxd rax, dword [rsp + 0x68]
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 0x80]
mov byte [rcx + rax], 1
jmp 0x14016a020
jmp 0x140169e9a
jmp 0x140169e5d
mov rax, qword [rsp + 0x58]
add rax, 0x30
mov rcx, qword [rsp + 0x40]
add rcx, 0x30
mov r9d, 0x2b
mov r8, rax
mov edx, 0x2b
call fcn.140168c00
mov dword [rsp + 0x30], 0
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x58]
mov rcx, qword [rcx + 0xb8]
mov qword [rax + 0xb8], rcx
mov edx, 1
mov rax, qword [rsp + 0x58]
mov rcx, qword [rax + 0x20]
call fcn.1403ba8b0
mov edx, 1
mov rcx, qword [rsp + 0x58]
call fcn.1403ba8b0
mov qword [rsp + 0x58], 0
cmp dword [rsp + 0x30], 0
je 0x14016a0c1
mov rax, qword [rsp + 0x40]
add rax, 0x30
mov rcx, qword [rsp + 0x38]
add rcx, 0x148
mov r8, rax
mov rdx, rcx
mov ecx, dword [rsp + 0x70]
call fcn.140178110
nop
mov rdx, qword [rsp + 0x178]
mov rcx, qword [rsp + 0x40]
call fcn.140178560
mov dword [rsp + 0x6c], eax
mov edx, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x140]
call fcn.14017e800
mov eax, dword [rsp + 0x6c]
mov rdi, rax
mov rcx, rsp
lea rdx, reloc.WS2_32.dll_bind
call fcn.14037c300
mov rax, rdi
mov rcx, qword [rsp + 0x120]
xor rcx, rsp
call fcn.14037c650
add rsp, 0x130
pop rdi
ret