Function at 0x140004c80
Capabilities:
Write file on windows

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x1a8
lea rbp, [rsp + 0x30]
mov rax, qword [0x1402bcf00]
xor rax, rbp
mov qword [rbp + 0x160], rax
mov r12, rcx
mov qword [rbp + 0x20], rcx
movzx ecx, word [r8]
mov r15, r8
movsxd r13, r9d
mov r14, rdx
call qword [sym.imp.WS2_32.dll_ntohs]
xor edi, edi
movzx esi, ax
cmp dword [r14 + 0x9ec], edi
je 0x140004cf1
movzx ebx, ax
lea rcx, str.ProcessCommand__u_..._n
mov edx, ebx
call fcn.1400010e4
mov edx, ebx
lea rcx, str.ProcessCommand__u_...
call fcn.1400982a4
cmp dword [r14 + 0xb30], 3
je 0x14000523f
mov rcx, qword [r12 + 0xe8]
mov rcx, qword [rcx + 0x2a8]
call fcn.1401862d0
movzx edx, si
mov rbx, rax
mov qword [rbp + 0x18], rax
sub edx, 1
je 0x140004fa5
sub edx, 1
je 0x140004d7b
cmp edx, 2
jne 0x140005225
cmp dword [r14 + 0x9ec], edi
je 0x140004d55
lea rcx, str.Authentication_Complete..._n
call fcn.1400010e4
lea rcx, str.Authentication_Complete...
call fcn.1400982a4
or dword [r14 + 0xb30], 2
cmp dword [r14 + 0xb30], 3
jne 0x140005225
mov rdx, r14
mov rcx, r12
call fcn.140004448
jmp 0x140005225
cmp r13d, 8
jle 0x140005225
cmp dword [r14 + 0x9ec], edi
je 0x140004d9a
lea rcx, str.Processing_Authentication_Verification...
call fcn.1400982a4
mov eax, dword [rsp]
mov esi, 0x20
sub rsp, rsi
lea rdi, [rsp + 0x30]
mov eax, dword [rdi]
mov qword [rbp], rdi
lea rax, [r15 + 4]
mov qword [rdi], rax
movzx ecx, word [r15 + 2]
call qword [sym.imp.WS2_32.dll_ntohs]
movzx ecx, ax
lea rax, [r15 + 4]
add rax, rcx
mov word [rdi + 8], cx
mov qword [rdi + 0xa], rax
movzx eax, r13w
sub ax, cx
sub ax, 4
mov word [rdi + 0x12], ax
lea eax, [rcx + 4]
cmp r13d, eax
jle 0x140005225
and qword [rbp + 8], 0
lea ebx, [rsi + 0x10]
mov r8d, ecx
mov dword [rbp + 0x10], ebx
lea rcx, [rbp + 8]
mov rdx, rdi
call fcn.1400b7c50
test rax, rax
jne 0x140004e1f
lea rcx, str.Invalid_server_certificate_r_n
call fcn.1400010e4
jmp 0x140005225
call fcn.1400b9420
mov rcx, qword [rbp + 8]
lea r15, [0x1402c4b20]
mov r8, r15
lea r9, [rbp + 0x10]
mov rdx, rax
call fcn.1400ba5f0
lea rdi, [r14 + 0xa34]
mov r8, rbx
mov rdx, rdi
mov rcx, r15
call fcn.1401c38e0
test eax, eax
je 0x140004e8a
call fcn.1400b9410
mov rcx, qword [rbp + 8]
lea r9, [rbp + 0x10]
mov rdx, rax
mov r8, r15
call fcn.1400ba5f0
mov r8, rsi
mov rdx, rdi
mov rcx, r15
call fcn.1401c38e0
test eax, eax
je 0x140004e8a
lea rcx, str.Server_certificate_mismatch_r_n
jmp 0x140004e15
lea rcx, [rbp + 0x30]
call fcn.1400b50f0
mov rcx, qword [rbp + 0x18]
lea rdi, [0x1402c5b20]
mov rdx, rdi
call fcn.14008e200
mov r8, rbx
lea rcx, [rbp + 0x30]
mov rdx, rdi
call fcn.1400b5180
lea rdx, [r14 + 0xb00]
mov r8, rbx
lea rcx, [rbp + 0x30]
call fcn.1400b5180
lea rdx, [r14 + 0xad0]
mov r8, rbx
lea rcx, [rbp + 0x30]
call fcn.1400b5180
lea rdx, [rbp + 0x30]
mov rcx, r15
call fcn.1400b50d0
mov rcx, qword [rbp + 8]
call fcn.1400bb430
mov rcx, rax
mov r12, rax
call fcn.1400b8280
mov r9, qword [rbp]
mov r8d, ebx
mov qword [rsp + 0x28], rax
mov rdx, r15
mov r13, rax
movzx ecx, word [r9 + 0x12]
mov r9, qword [r9 + 0xa]
mov dword [rsp + 0x20], ecx
mov ecx, 0x2a1
call fcn.1400b8b80
mov esi, 1
cmp eax, esi
jne 0x140004f64
and qword [rsp + 0x28], 0
lea r8d, [rsi + 0x10]
mov rcx, qword [r14 + 0x48]
lea rdx, str.ServerTlsCertHash
or dword [r14 + 0xb30], esi
mov r9, rdi
mov qword [rsp + 0x20], rbx
call fcn.14009af8c
mov rdx, qword [rbp + 0x20]
mov rcx, r14
call fcn.140004578
jmp 0x140004f87
lea rcx, str.Invalid_server_signature_r_n
call fcn.1400010e4
xor edi, edi
cmp dword [r14 + 0x9ec], edi
je 0x140004f87
lea rcx, str.Invalid_Server_Signature
call fcn.1400982a4
mov rcx, r13
call fcn.1400ba850
mov rcx, r12
call fcn.1400b8040
mov rcx, qword [rbp + 8]
call fcn.1400b7b80
jmp 0x140005225
cmp r13d, 0x62
jne 0x140005225
cmp dword [r14 + 0x9ec], edi
je 0x140004fc4
lea rcx, str.Processing_Authentication_Request...
call fcn.1400982a4
lea rdi, [0x1402c5b20]
mov rcx, rbx
mov rdx, rdi
call fcn.14008e200
lea r13, [r15 + 2]
mov ebx, 0x30
mov r8d, ebx
mov rdx, r13
mov rcx, rdi
call fcn.1401c38e0
test eax, eax
je 0x140005052
mov rsi, qword [rbp + 0x18]
mov dword [rbp + 0x10], ebx
test rsi, rsi
je 0x140005014
call fcn.1400b9420
mov rdx, rax
lea r9, [rbp + 0x10]
mov r8, rdi
mov rcx, rsi
call fcn.1400ba5f0
mov r8, rbx
mov rdx, r13
mov rcx, rdi
call fcn.1401c38e0
test eax, eax
je 0x140005052
lea rcx, str.Bad_server_certificate_hash_r_n
call fcn.1400010e4
xor edi, edi
cmp dword [r14 + 0x9ec], edi
je 0x140005225
lea rcx, str.Bad_server_certificate_hash
call fcn.1400982a4
jmp 0x140005225
lea rcx, [r14 + 0xad0]
mov r9, rbx
lea r8, [r15 + 0x32]
mov rdx, rbx
call section..text
mov ecx, 2
call qword [sym.imp.WS2_32.dll_htons]
lea rcx, [0x1402c5b24]
mov word [0x1402c5b20], ax
mov qword [rbp + 0x20], rcx
lea rdx, [rbp + 0x20]
mov rcx, qword [r14 + 0xa70]
call fcn.1400b7d30
movsxd rsi, eax
movzx ecx, si
call qword [sym.imp.WS2_32.dll_htons]
mov word [0x1402c5b22], ax
cmp qword [r14 + 0xa78], 0
je 0x140005179
lea rcx, [rbp + 0x30]
call fcn.1400b50f0
mov r8, rbx
lea rcx, [rbp + 0x30]
mov rdx, r13
call fcn.1400b5180
mov r8, rbx
lea rdx, [r14 + 0xad0]
lea rcx, [rbp + 0x30]
call fcn.1400b5180
lea rdx, [r14 + 0xb00]
mov r8, rbx
lea rcx, [rbp + 0x30]
call fcn.1400b5180
lea r15, [0x1402c4b20]
mov rcx, r15
lea rdx, [rbp + 0x30]
call fcn.1400b50d0
mov rcx, qword [r14 + 0xa78]
call fcn.1400b8280
mov qword [rsp + 0x28], rax
lea r9, [rdi + 4]
mov edx, 0xfffc
movsx r13, si
sub edx, r13d
mov r14, rax
mov dword [rbp + 8], edx
lea rax, [rbp + 8]
mov rdx, r15
mov qword [rsp + 0x20], rax
add r9, r13
mov r8d, ebx
mov ecx, 0x2a1
call fcn.1400b8a30
mov esi, 1
cmp eax, esi
jne 0x14000516c
mov r9d, dword [rbp + 8]
lea edx, [rsi + 1]
add r9d, 4
mov r8, rdi
add r9d, r13d
mov rcx, r12
call fcn.14009d1f0
mov rcx, r14
call fcn.1400ba850
jmp 0x140005225
mov r9, rbx
lea rcx, [0x1402c4b20]
mov r8, r13
mov edx, 0x1000
call section..text
mov r9, rbx
lea r8, [r14 + 0xad0]
mov edx, 0xfd0
lea rcx, [0x1402c4b50]
call section..text
lea r8, [r14 + 0xb00]
mov r9, rbx
mov edx, 0xfa0
lea rcx, [0x1402c4b80]
call section..text
mov rcx, qword [r14 + 0xa68]
lea r9, [rbp]
and qword [rbp], 0
call fcn.1400112b4
mov dword [rbp + 8], eax
test eax, eax
jle 0x140005225
mov r8, qword [rbp]
lea rcx, [rdi + 4]
movsx rbx, si
mov edx, 0xfffc
sub rdx, rbx
movsxd r9, eax
add rcx, rbx
call section..text
mov r9d, dword [rbp + 8]
mov r8, rdi
add r9d, 4
mov edx, 2
add r9d, ebx
mov rcx, r12
call fcn.14009d1f0
mov rcx, qword [rbp]
call fcn.1401ca9a0
mov rax, qword [rbp + 0x18]
test rax, rax
je 0x140006095
mov rcx, rax
call fcn.1400b7b80
jmp 0x140006095
mov eax, 0xa
cmp si, ax
jb 0x140006095
cmp byte [r15], 0x7b
je 0x140005d4e
mov eax, 0x3e8
cmp si, ax
jae 0x140005d4e
mov r12d, 4
cmp r13d, r12d
jl 0x140006095
movzx ecx, word [r15 + 2]
call qword [sym.imp.WS2_32.dll_ntohs]
movzx ebx, ax
mov word [rbp + 8], ax
cmp dword [r14 + 0x9ec], edi
je 0x1400052bd
movzx ebx, ax
lea rcx, str.BinaryCommand__u___u_..._n
movzx edi, si
mov r8d, ebx
mov edx, edi
call fcn.1400010e4
mov r8d, ebx
lea rcx, str.BinaryCommand__u___u_...
mov edx, edi
call fcn.1400982a4
movzx ebx, word [rbp + 8]
xor edi, edi
movzx ecx, si
sub ecx, 0xa
je 0x1400052fb
sub ecx, 1
je 0x140005b2d
sub ecx, 1
je 0x140005a91
sub ecx, 1
je 0x1400056e4
sub ecx, 1
je 0x1400055b5
sub ecx, 2
je 0x1400053dd
cmp ecx, r12d
jne 0x140006095
lea rax, [r15 + 0x34]
mov qword [rbp + 0x18], rax
lea rax, [r13 - 0x34]
mov qword [rbp + 0x10], rax
cmp dword [r14 + 0x84], edi
jne 0x140006095
cmp r13, 0x34
jbe 0x140005d07
mov edi, 0x400
lea r13, str.CoreModule
mov edx, edi
mov rcx, r13
call fcn.1401ca9a8
mov rcx, qword [r14 + 0x48]
mov r8, rax
call fcn.14009b8d8
mov qword [rbp], rax
mov ebx, 0x30
test rax, rax
je 0x140005369
lea rdx, [r15 + 4]
mov r8d, ebx
mov rcx, rax
call fcn.1401c38e0
test eax, eax
je 0x140005ccf
and qword [r14 + 0x9f0], 0
cmp si, 0x14
jne 0x140005bd4
mov rdx, qword [rbp + 0x10]
lea r9, [rbp]
and qword [rbp], 0
lea rcx, [r15 + 0x34]
xor r8d, r8d
call fcn.14004e5f0
test eax, eax
jne 0x140006095
mov rdx, qword [rbp]
mov rcx, qword [r14]
call fcn.14008f958
mov rdx, qword [rbp + 0x10]
lea r9, [rbp]
mov r8, rax
mov qword [rbp + 0x28], rax
lea rcx, [r15 + 0x34]
call fcn.14004e5f0
test eax, eax
jne 0x140005bc9
mov rcx, qword [rbp + 0x28]
mov rax, qword [rbp]
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x10], rax
jmp 0x140005bcb
lea rcx, str.Server_verified_meshcore...
call fcn.1400010e4
cmp qword [r14 + 0x9f0], rdi
je 0x1400055a4
mov rcx, qword [r14 + 0x10]
call fcn.14001cc98
mov rcx, qword [r14 + 0x10]
lea r8, str.clearTimeout
or edx, 0xffffffff
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
mov edx, 0xfffffffe
call fcn.14001af3c
mov rdx, qword [r14 + 0x9f0]
mov rcx, qword [r14 + 0x10]
call fcn.14001d638
mov rcx, qword [r14 + 0x10]
mov edx, 1
call fcn.140018d7c
mov rcx, qword [r14 + 0x10]
call fcn.14001d8ac
and qword [r14 + 0x9f0], 0
lea r13, str.CoreModule
mov r15d, 0x400
mov rcx, r13
mov edx, r15d
call fcn.1401ca9a8
mov rcx, qword [r14 + 0x48]
xor r9d, r9d
and qword [rsp + 0x20], 0
mov r8, rax
mov rdx, r13
call fcn.14009b480
movsxd rdi, eax
mov dword [rbp + 0x10], edi
cmp edi, r12d
jg 0x140005496
lea rcx, str._meshcore_not_found..._n
jmp 0x1400055ab
lea rcx, str._Launching_meshcore..._n
call fcn.1400010e4
mov r9d, dword [r14 + 0x9fc]
test r9d, r9d
je 0x140005525
lea r8, str.attachDebugger__webport:__d__wait:_1__.then_function__prt___console.log_Point_Browser_for_Debug_to_port:___prt______n
mov edx, 0xff
lea rcx, [rbp + 0x30]
call fcn.140001138
movsxd rbx, eax
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea esi, [rbx + rdi]
movsxd rdi, esi
mov rcx, rdi
call fcn.14008f9f4
mov rdx, r15
mov rcx, r13
mov r12, rax
call fcn.1401ca9a8
mov rcx, qword [r14 + 0x48]
lea r9, [r12 - 4]
add r9, rbx
mov qword [rsp + 0x20], rdi
mov r8, rax
mov rdx, r13
call fcn.14009b480
mov ecx, dword [rbp + 0x10]
lea r8, [rbp + 0x30]
add ecx, 0xfffffffc
mov r9, rbx
movsxd rdx, ecx
lea rcx, [r12 + 4]
call section..text
lea edi, [rsi - 4]
jmp 0x14000555a
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.14008f9f4
mov rdx, r15
mov rcx, r13
mov r12, rax
call fcn.1401ca9a8
mov rcx, qword [r14 + 0x48]
mov r9, r12
mov r8, rax
mov qword [rsp + 0x20], rdi
mov rdx, r13
call fcn.14009b480
mov rcx, qword [r14 + 0x10]
lea r8d, [rdi - 4]
lea rdx, [r12 + 4]
mov dword [rsp + 0x20], reloc.WS2_32.dll_listen
lea r9, str.CoreModule.js
call fcn.1400832b0
test eax, eax
jne 0x14000558e
mov rcx, qword [r14 + 0x10]
xor edx, edx
call fcn.140018cd8
test eax, eax
je 0x140005597
mov rcx, qword [r14 + 0x10]
call fcn.14001d8ac
mov rcx, r12
call fcn.1401ca9a0
jmp 0x140006095
lea rcx, str._meshcore_already_running..._n
call fcn.1400010e4
jmp 0x140006095
mov rcx, qword [r14 + 0x38]
lea rdx, str..update.exe
mov ebx, edi
mov dword [rbp + 0x10], ebx
call fcn.140003504
mov qword [rbp], rax
or edi, 0xffffffff
mov esi, 1
and qword [rbp + 0x18], 0
lea rcx, [0x1402c1b20]
mov dword [rsp + 0x28], 0x1000
mov r9d, edi
mov qword [rsp + 0x20], rcx
mov r8, rax
mov ecx, 0xfde9
xor edx, edx
call qword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea r8, [0x1402995a8]
lea rdx, [0x1402c1b20]
lea rcx, [rbp + 0x18]
call fcn.1401c9210
mov r9, qword [rbp + 0x18]
test r9, r9
je 0x140005649
lea eax, [r13 - 4]
mov r8, rsi
movsxd rdx, eax
lea rcx, [r15 + 4]
call fcn.1401ca844
mov rcx, qword [rbp + 0x18]
mov rbx, rax
call fcn.1401c97c0
test rbx, rbx
jne 0x140005667
mov ebx, dword [rbp + 0x10]
add ebx, esi
mov dword [rbp + 0x10], ebx
cmp ebx, r12d
jge 0x1400056ad
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rax, qword [rbp]
jmp 0x1400055d6
cmp dword [rbp + 0x10], r12d
jge 0x1400056ad
mov ecx, reloc.WS2_32.dll_ntohl
call qword [sym.imp.WS2_32.dll_htons]
movzx ecx, word [rbp + 8]
mov word [0x1402c5b20], ax
call qword [sym.imp.WS2_32.dll_htons]
mov word [0x1402c5b22], ax
mov r9d, r12d
lea r8, [0x1402c5b20]
mov rcx, qword [rbp + 0x20]
mov edx, 2
call fcn.14009d1f0
jmp 0x140006095
mov rcx, qword [r14 + 0x10]
call fcn.14008f940
test eax, eax
je 0x140006095
mov rcx, qword [r14 + 0x10]
cmp qword [rcx - 0x10], 8
jne 0x140006095
mov r9d, 0xf08
lea rdx, str.require_MeshAgent_.SendCommand__action:_sessions__type_:_msg__value_:__1:__msg:_Self_Update_FAILED._Write_Error_while_writing_update_block__icon:_3_____
call fcn.140019864
jmp 0x140006095
mov rcx, qword [r14 + 0x38]
lea rdx, str..update.exe
call fcn.140003504
mov qword [rbp], rax
mov rsi, rax
cmp r13d, r12d
jne 0x140005719
cmp dword [r14 + 0x9e4], edi
je 0x140005a84
lea rcx, str.SelfUpdate____Starting_download...
jmp 0x140005a73
cmp r13d, 0x34
jne 0x140006095
lea rdx, [rbp + 0x130]
mov rcx, rsi
call fcn.140004044
test eax, eax
jne 0x140005a63
lea rdx, [r15 + 4]
lea r8d, [r13 - 4]
lea rcx, [rbp + 0x130]
call fcn.1401c38e0
test eax, eax
jne 0x140005a63
mov rax, qword [r14 + 0x10]
mov r12, qword [rax + 0x70]
sub r12, qword [rax + 0x68]
sar r12, 4
cmp dword [r14 + 0x9e4], edi
je 0x140005787
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
lea rcx, str.SelfUpdate____Download_Complete..._Hash_verified
xor edx, edx
call fcn.14009817c
lea r15, [0x1402c4b20]
cmp dword [r14 + 0x9e8], edi
je 0x14000581f
mov r9, qword [r14 + 0x38]
lea r8, str._s.zip
mov edx, 0x1000
mov rcx, r15
call fcn.140001138
mov rdx, r15
lea rcx, [rbp + 0x18]
call fcn.1400977f0
mov ebx, eax
test eax, eax
jne 0x1400057e6
mov rdx, qword [r14 + 0x38]
lea rcx, [rbp + 0x18]
call fcn.1400977f0
mov ebx, eax
cmp dword [r14 + 0x9e4], edi
je 0x140005807
lea rcx, str.SelfUpdate____Overriding_update_with_same_version...
jmp 0x1400057f6
cmp dword [r14 + 0x9e4], edi
je 0x140005807
lea rcx, str.SelfUpdate____Overriding_update_with_provided_zip...
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
xor edx, edx
call fcn.14009817c
mov rdx, qword [rbp + 0x18]
mov r8d, ebx
mov rcx, rsi
call fcn.140097934
cmp dword [r14 + 0x9e8], edi
jne 0x140005828
cmp dword [r14 + 0x9e0], edi
je 0x140005892
mov edx, 0x4000
lea rcx, [0x140251468]
call fcn.1401ca9a8
mov edx, 0x400
lea rcx, str.disableUpdate
mov rbx, rax
call fcn.1401ca9a8
mov rcx, qword [r14 + 0x48]
lea r9, [0x140251468]
mov r8, rax
mov qword [rsp + 0x28], rdi
lea rdx, str.disableUpdate
mov qword [rsp + 0x20], rbx
call fcn.14009af8c
cmp dword [r14 + 0x9e4], edi
je 0x140005892
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
lea rcx, str.SelfUpdate____Disabling_future_updates...
xor edx, edx
call fcn.14009817c
mov rcx, qword [r14 + 0x10]
lea rdx, str.require_zip_reader_
mov r9d, 0xe08
call fcn.140019864
mov rcx, qword [r14 + 0x10]
or edi, 0xffffffff
mov edx, edi
call fcn.14001af78
mov rcx, qword [r14 + 0x10]
lea r8, str.isZip
mov edx, edi
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
lea ebx, [rdi - 1]
mov edx, ebx
call fcn.14001af3c
mov rcx, qword [r14 + 0x10]
mov rdx, rsi
call fcn.14001ca68
mov rcx, qword [r14 + 0x10]
lea esi, [rdi + 2]
mov edx, esi
call fcn.140018d7c
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001baa4
xor r13d, r13d
test eax, eax
je 0x140005a4a
cmp dword [r14 + 0x9e4], r13d
je 0x140005928
xor r9d, r9d
mov dword [rsp + 0x20], r13d
xor r8d, r8d
lea rcx, str.SelfUpdate____Unzipping_update...
xor edx, edx
call fcn.14009817c
mov rcx, qword [r14 + 0x10]
lea rdx, str.require_update_helper_
mov r9d, 0xe08
call fcn.140019864
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001af78
mov rcx, qword [r14 + 0x10]
lea r8, str.start
mov edx, edi
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
mov edx, ebx
call fcn.14001af3c
mov rdx, qword [rbp]
mov rcx, qword [r14 + 0x10]
call fcn.14001ca68
mov rcx, qword [r14 + 0x10]
mov edx, esi
call fcn.140018d7c
test eax, eax
jne 0x1400059f6
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001af78
mov rcx, qword [r14 + 0x10]
lea r8, str.then
mov edx, edi
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
mov edx, ebx
call fcn.14001af3c
mov rcx, qword [r14 + 0x10]
lea rdx, [0x140004b90]
mov ebx, 0x18075380
mov esi, 6
mov r9d, ebx
mov dword [rsp + 0x20], esi
mov r8d, edi
call fcn.14001d190
mov rcx, qword [r14 + 0x10]
lea rdx, [0x140004bf4]
mov r9d, ebx
mov dword [rsp + 0x20], esi
mov r8d, edi
call fcn.14001d190
mov rcx, qword [r14 + 0x10]
lea edx, [rsi - 4]
call fcn.140018d7c
jmp 0x140005a39
cmp dword [r14 + 0x9e4], r13d
je 0x140005a39
mov rcx, qword [r14 + 0x10]
xor r8d, r8d
mov edx, edi
call fcn.14001be04
mov r9, rax
lea r8, str.SelfUpdate____Error_Unzipping:__s
mov edx, 0x1000
mov rcx, r15
call fcn.140001138
xor r9d, r9d
mov dword [rsp + 0x20], r13d
xor r8d, r8d
xor edx, edx
mov rcx, r15
call fcn.14009817c
mov rcx, qword [r14 + 0x10]
mov edx, r12d
call fcn.14001ac24
jmp 0x140006095
mov rcx, qword [r14 + 0x10]
mov edx, r12d
call fcn.14001ac24
mov rcx, r14
call fcn.140004850
jmp 0x140006095
cmp dword [r14 + 0x9e4], edi
je 0x140005a84
lea rcx, str.SelfUpdate____Download_Complete..._Hash_FAILED__aborting_update...
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
xor edx, edx
call fcn.14009817c
mov rcx, rsi
call fcn.14008daac
jmp 0x140006095
mov ecx, listen
call qword [sym.imp.WS2_32.dll_htons]
movzx ecx, bx
mov word [0x1402c5b20], ax
call qword [sym.imp.WS2_32.dll_htons]
mov word [0x1402c5b22], ax
lea rcx, [0x1402c5b24]
cmp dword [r14 + 0x9dc], edi
je 0x140005ad0
xor edx, edx
lea r8d, [rdx + 0x30]
call fcn.1401c3730
jmp 0x140005b22
cmp dword [r14 + 0x9e0], edi
je 0x140005b0c
mov edx, 0xffff
mov r8d, 0x30
call fcn.1401c3730
cmp dword [r14 + 0x9e4], edi
je 0x140005b22
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
lea rcx, str.SelfUpdate____Forcing_Update...
xor edx, edx
call fcn.14009817c
jmp 0x140005b22
mov ebx, 0x30
lea r8, [r14 + 0xa04]
mov edx, ebx
mov r9, rbx
call section..text
mov r9d, gethostname
jmp 0x140005693
mov edx, 0x400
lea rcx, str.CoreModule
call fcn.1401ca9a8
mov rcx, qword [r14 + 0x48]
mov r8, rax
call fcn.14009b8d8
mov ecx, dword [r14 + 0x84]
lea rdi, [0x1402c5b20]
neg ecx
mov ebx, 0x30
mov rcx, rdi
mov r15, rax
sbb esi, esi
xor edx, edx
and esi, ebx
lea r8d, [rbx + 4]
add esi, r12d
call fcn.1401c3730
lea ecx, [rbx - 0x25]
call qword [sym.imp.WS2_32.dll_htons]
movzx ecx, word [rbp + 8]
mov word [0x1402c5b20], ax
call qword [sym.imp.WS2_32.dll_htons]
mov word [0x1402c5b22], ax
cmp dword [r14 + 0x84], 0
jne 0x140005bbe
test r15, r15
je 0x140005bbe
mov r9d, ebx
lea rcx, [0x1402c5b24]
mov r8, r15
mov edx, ebx
call section..text
lea esi, [rbx + 4]
mov r9d, esi
mov r8, rdi
jmp 0x14000569a
xor ecx, ecx
test rcx, rcx
je 0x140006095
movsxd rax, dword [rbp + 0x10]
mov r8d, 0xa
mov r9, qword [rbp + 0x18]
mov rdx, r13
mov rcx, qword [r14 + 0x48]
mov qword [rsp + 0x20], rax
call fcn.14009b2c0
mov rdx, rdi
mov rcx, r13
call fcn.1401ca9a8
mov rcx, qword [r14 + 0x48]
mov r8, rax
call fcn.14009b8d8
lea rdx, [r15 + 4]
mov qword [rbp], rax
mov r8, rbx
mov rcx, rax
call fcn.1401c38e0
test eax, eax
je 0x140005c4d
mov rdx, rdi
mov rcx, r13
call fcn.1401ca9a8
mov rcx, qword [r14 + 0x48]
mov r8, rax
mov rdx, r13
call fcn.14009bae0
mov rcx, r14
call fcn.140003eac
mov ecx, listen
jmp 0x140005672
mov rcx, r14
call fcn.140003eac
mov rsi, rax
test rax, rax
je 0x140005cc6
mov r8, qword [rbp + 0x10]
lea r9, str.CoreModule.js
mov rdx, qword [rbp + 0x18]
add r8d, 0xfffffffc
add rdx, r12
mov dword [rsp + 0x20], reloc.WS2_32.dll_listen
mov rcx, rax
call fcn.1400832b0
test eax, eax
jne 0x140005c95
xor edx, edx
mov rcx, rsi
call fcn.140018cd8
test eax, eax
je 0x140005cc6
xor r8d, r8d
or edx, 0xffffffff
mov rcx, rsi
call fcn.14001be04
mov r9, rax
lea r8, [0x1402501fc]
mov edx, 0x1000
lea rcx, [0x1402c4b20]
call fcn.140001138
mov rcx, rsi
call fcn.14001d8ac
mov rcx, qword [r14 + 0x48]
call fcn.14009be40
mov ecx, listen
call qword [sym.imp.WS2_32.dll_htons]
movzx ecx, word [rbp + 8]
mov word [0x1402c5b20], ax
call qword [sym.imp.WS2_32.dll_htons]
mov r8, qword [rbp]
lea rcx, [0x1402c5b24]
mov word [0x1402c5b22], ax
mov edx, 0xfffc
jmp 0x140005b1a
cmp r13d, r12d
jne 0x140006095
lea r13, str.CoreModule
mov edx, 0x400
mov rcx, r13
call fcn.1401ca9a8
mov rcx, qword [r14 + 0x48]
mov r8, rax
mov rdx, r13
call fcn.14009bae0
mov rcx, r14
call fcn.140003eac
mov ecx, listen
call qword [sym.imp.WS2_32.dll_htons]
movzx ecx, bx
jmp 0x14000567c
mov rdx, qword [r14]
mov rcx, qword [r14 + 0x10]
call fcn.140002cb0
mov rcx, qword [r14 + 0x10]
lea r8, str.emit
or edi, 0xffffffff
mov edx, edi
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
lea r12d, [rdi - 1]
mov edx, r12d
call fcn.14001af3c
mov rcx, qword [r14 + 0x10]
lea rdx, str.Command
call fcn.14001ca68
cmp byte [r15], 0x7b
mov rcx, qword [r14 + 0x10]
jne 0x14000601c
call fcn.14001cc98
mov rcx, qword [r14 + 0x10]
lea r8, str.JSON
mov edx, edi
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
lea r8, str.parse
mov edx, edi
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
lea edx, [rdi - 2]
call fcn.14001af3c
mov rcx, qword [r14 + 0x10]
call fcn.14001d948
mov rcx, qword [r14 + 0x10]
mov r8, r13
mov rdx, r15
call fcn.14001c9b4
mov rcx, qword [r14 + 0x10]
lea esi, [rdi + 2]
mov edx, esi
call fcn.140018cd8
mov rcx, qword [r14 + 0x10]
test eax, eax
je 0x140005e19
call fcn.14001d8ac
mov rcx, qword [r14 + 0x10]
mov r8, r13
mov rdx, r15
call fcn.14001c9b4
jmp 0x140006063
lea r8, str.action
mov edx, edi
call fcn.14001a3b8
test eax, eax
je 0x140006063
mov rcx, qword [r14 + 0x10]
lea r9, [0x140250148]
and qword [rsp + 0x20], 0
lea r8, str.action
mov edx, edi
call fcn.14005fe8c
lea rdx, str.ping
mov rcx, rax
mov rbx, rax
call fcn.1401d6760
test eax, eax
jne 0x140005ed2
cmp dword [r14 + 0xb40], eax
jne 0x140005ec6
mov rdx, qword [r14]
mov rcx, qword [r14 + 0x10]
call fcn.140002cb0
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001af78
mov rcx, qword [r14 + 0x10]
lea r8, str.emit
mov edx, edi
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
mov edx, r12d
call fcn.14001af3c
mov rcx, qword [r14 + 0x10]
lea rdx, str.idleTimeoutModeChanged
call fcn.14001ca68
mov rcx, qword [r14 + 0x10]
mov edx, esi
call fcn.140018d7c
mov rcx, qword [r14 + 0x10]
call fcn.14001d948
mov dword [r14 + 0xb40], esi
jmp 0x140006063
lea rdx, str.pong
mov rcx, rbx
call fcn.1401d6760
test eax, eax
jne 0x140006063
mov rdx, qword [r14]
mov rcx, qword [r14 + 0x10]
call fcn.140002cb0
mov rcx, qword [r14 + 0x10]
lea r8, [0x140250500]
mov edx, edi
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001b718
test rax, rax
je 0x140006011
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001af78
mov rcx, qword [r14 + 0x10]
lea r8, str.shift
mov edx, edi
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
mov edx, r12d
call fcn.14001af3c
mov rbx, qword [r14 + 0x10]
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 2]
call fcn.140018bfc
xor r8d, r8d
mov edx, eax
mov rcx, rbx
call fcn.1400374b0
mov rcx, qword [r14 + 0x10]
lea r8, [0x1402505b0]
mov edx, edi
call fcn.14001a3b8
test eax, eax
je 0x140005fd4
mov rcx, qword [r14 + 0x10]
call fcn.14001cc98
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001af78
mov rcx, qword [r14 + 0x10]
lea r8, str.clearTimeout
mov edx, edi
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
mov edx, r12d
call fcn.14001af3c
mov rcx, qword [r14 + 0x10]
lea r8, [0x1402505b0]
mov edx, 0xfffffffc
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
mov edx, esi
call fcn.140018d7c
mov rcx, qword [r14 + 0x10]
call fcn.14001d948
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001af78
mov rcx, qword [r14 + 0x10]
lea r8, str._res
mov edx, edi
call fcn.140019f9c
mov rcx, qword [r14 + 0x10]
mov edx, r12d
call fcn.14001af3c
mov rcx, qword [r14 + 0x10]
xor edx, edx
call fcn.140018d7c
mov rcx, qword [r14 + 0x10]
call fcn.14001d948
mov rcx, qword [r14 + 0x10]
call fcn.14001d948
jmp 0x140006063
xor edx, edx
lea r8d, [rdx + 3]
call fcn.14001d594
mov rcx, qword [r14 + 0x10]
mov edi, 0xfffffffc
mov edx, edi
call fcn.14001b048
mov rcx, qword [r14 + 0x10]
mov r9, r13
mov r8, r15
mov edx, edi
call fcn.140018b98
mov rcx, qword [r14 + 0x10]
lea esi, [rdi + 5]
mov r9, r13
mov dword [rsp + 0x20], esi
xor r8d, r8d
mov edx, edi
call fcn.14001d2e8
lea esi, [rdi + 6]
mov rcx, qword [r14 + 0x10]
mov edx, 2
call fcn.140018d7c
test eax, eax
je 0x14000608a
mov rcx, qword [r14 + 0x10]
test rcx, rcx
je 0x14000608a
lea rdx, [0x140250148]
call fcn.140060a6c
mov rcx, qword [r14 + 0x10]
mov edx, esi
call fcn.14001d78c
mov rcx, qword [rbp + 0x160]
xor rcx, rbp
call fcn.1401c2260
lea rsp, [rbp + 0x178]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret