Function at 0x140004eb4
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 [0x1402bdf00]
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 0x140004f25
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.140099564
cmp dword [r14 + 0xb30], 3
je 0x140005473
mov rcx, qword [r12 + 0xe8]
mov rcx, qword [rcx + 0x2a8]
call fcn.140187620
movzx edx, si
mov rbx, rax
mov qword [rbp + 0x18], rax
sub edx, 1
je 0x1400051d9
sub edx, 1
je 0x140004faf
cmp edx, 2
jne 0x140005459
cmp dword [r14 + 0x9ec], edi
je 0x140004f89
lea rcx, str.Authentication_Complete..._n
call fcn.1400010e4
lea rcx, str.Authentication_Complete...
call fcn.140099564
or dword [r14 + 0xb30], 2
cmp dword [r14 + 0xb30], 3
jne 0x140005459
mov rdx, r14
mov rcx, r12
call fcn.140004658
jmp 0x140005459
cmp r13d, 8
jle 0x140005459
cmp dword [r14 + 0x9ec], edi
je 0x140004fce
lea rcx, str.Processing_Authentication_Verification...
call fcn.140099564
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 0x140005459
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.1400b8f70
test rax, rax
jne 0x140005053
lea rcx, str.Invalid_server_certificate_r_n
call fcn.1400010e4
jmp 0x140005459
call fcn.1400ba740
mov rcx, qword [rbp + 8]
lea r15, [0x1402c5b20]
mov r8, r15
lea r9, [rbp + 0x10]
mov rdx, rax
call fcn.1400bb910
lea rdi, [r14 + 0xa34]
mov r8, rbx
mov rdx, rdi
mov rcx, r15
call fcn.1401c4cb0
test eax, eax
je 0x1400050be
call fcn.1400ba730
mov rcx, qword [rbp + 8]
lea r9, [rbp + 0x10]
mov rdx, rax
mov r8, r15
call fcn.1400bb910
mov r8, rsi
mov rdx, rdi
mov rcx, r15
call fcn.1401c4cb0
test eax, eax
je 0x1400050be
lea rcx, str.Server_certificate_mismatch_r_n
jmp 0x140005049
lea rcx, [rbp + 0x30]
call fcn.1400b6410
mov rcx, qword [rbp + 0x18]
lea rdi, [0x1402c6b20]
mov rdx, rdi
call fcn.14008f2a4
mov r8, rbx
lea rcx, [rbp + 0x30]
mov rdx, rdi
call fcn.1400b64a0
lea rdx, [r14 + 0xb00]
mov r8, rbx
lea rcx, [rbp + 0x30]
call fcn.1400b64a0
lea rdx, [r14 + 0xad0]
mov r8, rbx
lea rcx, [rbp + 0x30]
call fcn.1400b64a0
lea rdx, [rbp + 0x30]
mov rcx, r15
call fcn.1400b63f0
mov rcx, qword [rbp + 8]
call fcn.1400bc760
mov rcx, rax
mov r12, rax
call fcn.1400b95a0
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.1400b9ea0
mov esi, 1
cmp eax, esi
jne 0x140005198
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.14009c1c4
mov rdx, qword [rbp + 0x20]
mov rcx, r14
call fcn.140004788
jmp 0x1400051bb
lea rcx, str.Invalid_server_signature_r_n
call fcn.1400010e4
xor edi, edi
cmp dword [r14 + 0x9ec], edi
je 0x1400051bb
lea rcx, str.Invalid_Server_Signature
call fcn.140099564
mov rcx, r13
call fcn.1400bbb70
mov rcx, r12
call fcn.1400b9360
mov rcx, qword [rbp + 8]
call fcn.1400b8ea0
jmp 0x140005459
cmp r13d, 0x62
jne 0x140005459
cmp dword [r14 + 0x9ec], edi
je 0x1400051f8
lea rcx, str.Processing_Authentication_Request...
call fcn.140099564
lea rdi, [0x1402c6b20]
mov rcx, rbx
mov rdx, rdi
call fcn.14008f2a4
lea r13, [r15 + 2]
mov ebx, 0x30
mov r8d, ebx
mov rdx, r13
mov rcx, rdi
call fcn.1401c4cb0
test eax, eax
je 0x140005286
mov rsi, qword [rbp + 0x18]
mov dword [rbp + 0x10], ebx
test rsi, rsi
je 0x140005248
call fcn.1400ba740
mov rdx, rax
lea r9, [rbp + 0x10]
mov r8, rdi
mov rcx, rsi
call fcn.1400bb910
mov r8, rbx
mov rdx, r13
mov rcx, rdi
call fcn.1401c4cb0
test eax, eax
je 0x140005286
lea rcx, str.Bad_server_certificate_hash_r_n
call fcn.1400010e4
xor edi, edi
cmp dword [r14 + 0x9ec], edi
je 0x140005459
lea rcx, str.Bad_server_certificate_hash
call fcn.140099564
jmp 0x140005459
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, [0x1402c6b24]
mov word [0x1402c6b20], ax
mov qword [rbp + 0x20], rcx
lea rdx, [rbp + 0x20]
mov rcx, qword [r14 + 0xa70]
call fcn.1400b9050
movsxd rsi, eax
movzx ecx, si
call qword [sym.imp.WS2_32.dll_htons]
mov word [0x1402c6b22], ax
cmp qword [r14 + 0xa78], 0
je 0x1400053ad
lea rcx, [rbp + 0x30]
call fcn.1400b6410
mov r8, rbx
lea rcx, [rbp + 0x30]
mov rdx, r13
call fcn.1400b64a0
mov r8, rbx
lea rdx, [r14 + 0xad0]
lea rcx, [rbp + 0x30]
call fcn.1400b64a0
lea rdx, [r14 + 0xb00]
mov r8, rbx
lea rcx, [rbp + 0x30]
call fcn.1400b64a0
lea r15, [0x1402c5b20]
mov rcx, r15
lea rdx, [rbp + 0x30]
call fcn.1400b63f0
mov rcx, qword [r14 + 0xa78]
call fcn.1400b95a0
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.1400b9d50
mov esi, 1
cmp eax, esi
jne 0x1400053a0
mov r9d, dword [rbp + 8]
lea edx, [rsi + 1]
add r9d, 4
mov r8, rdi
add r9d, r13d
mov rcx, r12
call fcn.14009e428
mov rcx, r14
call fcn.1400bbb70
jmp 0x140005459
mov r9, rbx
lea rcx, [0x1402c5b20]
mov r8, r13
mov edx, 0x1000
call section..text
mov r9, rbx
lea r8, [r14 + 0xad0]
mov edx, 0xfd0
lea rcx, [0x1402c5b50]
call section..text
lea r8, [r14 + 0xb00]
mov r9, rbx
mov edx, 0xfa0
lea rcx, [0x1402c5b80]
call section..text
mov rcx, qword [r14 + 0xa68]
lea r9, [rbp]
and qword [rbp], 0
call fcn.140011554
mov dword [rbp + 8], eax
test eax, eax
jle 0x140005459
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.14009e428
mov rcx, qword [rbp]
call fcn.1401cbd70
mov rax, qword [rbp + 0x18]
test rax, rax
je 0x1400062c9
mov rcx, rax
call fcn.1400b8ea0
jmp 0x1400062c9
mov eax, 0xa
cmp si, ax
jb 0x1400062c9
cmp byte [r15], 0x7b
je 0x140005f82
mov eax, 0x3e8
cmp si, ax
jae 0x140005f82
mov r12d, 4
cmp r13d, r12d
jl 0x1400062c9
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 0x1400054f1
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.140099564
movzx ebx, word [rbp + 8]
xor edi, edi
movzx ecx, si
sub ecx, 0xa
je 0x14000552f
sub ecx, 1
je 0x140005d61
sub ecx, 1
je 0x140005cc5
sub ecx, 1
je 0x140005918
sub ecx, 1
je 0x1400057e9
sub ecx, 2
je 0x140005611
cmp ecx, r12d
jne 0x1400062c9
lea rax, [r15 + 0x34]
mov qword [rbp + 0x18], rax
lea rax, [r13 - 0x34]
mov qword [rbp + 0x10], rax
cmp dword [r14 + 0x84], edi
jne 0x1400062c9
cmp r13, 0x34
jbe 0x140005f3b
mov edi, 0x400
lea r13, str.CoreModule
mov edx, edi
mov rcx, r13
call fcn.1401cbd78
mov rcx, qword [r14 + 0x48]
mov r8, rax
call fcn.14009cb10
mov qword [rbp], rax
mov ebx, 0x30
test rax, rax
je 0x14000559d
lea rdx, [r15 + 4]
mov r8d, ebx
mov rcx, rax
call fcn.1401c4cb0
test eax, eax
je 0x140005f03
and qword [r14 + 0x9f0], 0
cmp si, 0x14
jne 0x140005e08
mov rdx, qword [rbp + 0x10]
lea r9, [rbp]
and qword [rbp], 0
lea rcx, [r15 + 0x34]
xor r8d, r8d
call fcn.14004e8b8
test eax, eax
jne 0x1400062c9
mov rdx, qword [rbp]
mov rcx, qword [r14]
call fcn.140090a9c
mov rdx, qword [rbp + 0x10]
lea r9, [rbp]
mov r8, rax
mov qword [rbp + 0x28], rax
lea rcx, [r15 + 0x34]
call fcn.14004e8b8
test eax, eax
jne 0x140005dfd
mov rcx, qword [rbp + 0x28]
mov rax, qword [rbp]
mov qword [rbp + 0x18], rcx
mov qword [rbp + 0x10], rax
jmp 0x140005dff
lea rcx, str.Server_verified_meshcore...
call fcn.1400010e4
cmp qword [r14 + 0x9f0], rdi
je 0x1400057d8
mov rcx, qword [r14 + 0x10]
call fcn.14001cf38
mov rcx, qword [r14 + 0x10]
lea r8, str.clearTimeout
or edx, 0xffffffff
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
mov edx, 0xfffffffe
call fcn.14001b1dc
mov rdx, qword [r14 + 0x9f0]
mov rcx, qword [r14 + 0x10]
call fcn.14001d8d8
mov rcx, qword [r14 + 0x10]
mov edx, 1
call fcn.14001901c
mov rcx, qword [r14 + 0x10]
call fcn.14001db4c
and qword [r14 + 0x9f0], 0
lea r13, str.CoreModule
mov r15d, 0x400
mov rcx, r13
mov edx, r15d
call fcn.1401cbd78
mov rcx, qword [r14 + 0x48]
xor r9d, r9d
and qword [rsp + 0x20], 0
mov r8, rax
mov rdx, r13
call fcn.14009c6b8
movsxd rdi, eax
mov dword [rbp + 0x10], edi
cmp edi, r12d
jg 0x1400056ca
lea rcx, str._meshcore_not_found..._n
jmp 0x1400057df
lea rcx, str._Launching_meshcore..._n
call fcn.1400010e4
mov r9d, dword [r14 + 0x9fc]
test r9d, r9d
je 0x140005759
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.140090b38
mov rdx, r15
mov rcx, r13
mov r12, rax
call fcn.1401cbd78
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.14009c6b8
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 0x14000578e
xor r9d, r9d
xor r8d, r8d
xor edx, edx
mov rcx, rdi
call fcn.140090b38
mov rdx, r15
mov rcx, r13
mov r12, rax
call fcn.1401cbd78
mov rcx, qword [r14 + 0x48]
mov r9, r12
mov r8, rax
mov qword [rsp + 0x20], rdi
mov rdx, r13
call fcn.14009c6b8
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.140084348
test eax, eax
jne 0x1400057c2
mov rcx, qword [r14 + 0x10]
xor edx, edx
call fcn.140018f78
test eax, eax
je 0x1400057cb
mov rcx, qword [r14 + 0x10]
call fcn.14001db4c
mov rcx, r12
call fcn.1401cbd70
jmp 0x1400062c9
lea rcx, str._meshcore_already_running..._n
call fcn.1400010e4
jmp 0x1400062c9
mov rcx, qword [r14 + 0x38]
lea rdx, str..update.exe
mov ebx, edi
mov dword [rbp + 0x10], ebx
call fcn.14000370c
mov qword [rbp], rax
or edi, 0xffffffff
mov esi, 1
and qword [rbp + 0x18], 0
lea rcx, [0x1402c2b20]
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, [0x14029a0c8]
lea rdx, [0x1402c2b20]
lea rcx, [rbp + 0x18]
call fcn.1401ca5e0
mov r9, qword [rbp + 0x18]
test r9, r9
je 0x14000587d
lea eax, [r13 - 4]
mov r8, rsi
movsxd rdx, eax
lea rcx, [r15 + 4]
call fcn.1401cbc14
mov rcx, qword [rbp + 0x18]
mov rbx, rax
call fcn.1401cab90
test rbx, rbx
jne 0x14000589b
mov ebx, dword [rbp + 0x10]
add ebx, esi
mov dword [rbp + 0x10], ebx
cmp ebx, r12d
jge 0x1400058e1
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rax, qword [rbp]
jmp 0x14000580a
cmp dword [rbp + 0x10], r12d
jge 0x1400058e1
mov ecx, reloc.WS2_32.dll_ntohl
call qword [sym.imp.WS2_32.dll_htons]
movzx ecx, word [rbp + 8]
mov word [0x1402c6b20], ax
call qword [sym.imp.WS2_32.dll_htons]
mov word [0x1402c6b22], ax
mov r9d, r12d
lea r8, [0x1402c6b20]
mov rcx, qword [rbp + 0x20]
mov edx, 2
call fcn.14009e428
jmp 0x1400062c9
mov rcx, qword [r14 + 0x10]
call fcn.140090a84
test eax, eax
je 0x1400062c9
mov rcx, qword [r14 + 0x10]
cmp qword [rcx - 0x10], 8
jne 0x1400062c9
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.140019b04
jmp 0x1400062c9
mov rcx, qword [r14 + 0x38]
lea rdx, str..update.exe
call fcn.14000370c
mov qword [rbp], rax
mov rsi, rax
cmp r13d, r12d
jne 0x14000594d
cmp dword [r14 + 0x9e4], edi
je 0x140005cb8
lea rcx, str.SelfUpdate____Starting_download...
jmp 0x140005ca7
cmp r13d, 0x34
jne 0x1400062c9
lea rdx, [rbp + 0x130]
mov rcx, rsi
call fcn.140004254
test eax, eax
jne 0x140005c97
lea rdx, [r15 + 4]
lea r8d, [r13 - 4]
lea rcx, [rbp + 0x130]
call fcn.1401c4cb0
test eax, eax
jne 0x140005c97
mov rax, qword [r14 + 0x10]
mov r12, qword [rax + 0x70]
sub r12, qword [rax + 0x68]
sar r12, 4
cmp dword [r14 + 0x9e4], edi
je 0x1400059bb
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
lea rcx, str.SelfUpdate____Download_Complete..._Hash_verified
xor edx, edx
call fcn.14009943c
lea r15, [0x1402c5b20]
cmp dword [r14 + 0x9e8], edi
je 0x140005a53
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.140098ab0
mov ebx, eax
test eax, eax
jne 0x140005a1a
mov rdx, qword [r14 + 0x38]
lea rcx, [rbp + 0x18]
call fcn.140098ab0
mov ebx, eax
cmp dword [r14 + 0x9e4], edi
je 0x140005a3b
lea rcx, str.SelfUpdate____Overriding_update_with_same_version...
jmp 0x140005a2a
cmp dword [r14 + 0x9e4], edi
je 0x140005a3b
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.14009943c
mov rdx, qword [rbp + 0x18]
mov r8d, ebx
mov rcx, rsi
call fcn.140098bf4
cmp dword [r14 + 0x9e8], edi
jne 0x140005a5c
cmp dword [r14 + 0x9e0], edi
je 0x140005ac6
mov edx, 0x4000
lea rcx, [0x140252878]
call fcn.1401cbd78
mov edx, 0x400
lea rcx, str.disableUpdate
mov rbx, rax
call fcn.1401cbd78
mov rcx, qword [r14 + 0x48]
lea r9, [0x140252878]
mov r8, rax
mov qword [rsp + 0x28], rdi
lea rdx, str.disableUpdate
mov qword [rsp + 0x20], rbx
call fcn.14009c1c4
cmp dword [r14 + 0x9e4], edi
je 0x140005ac6
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
lea rcx, str.SelfUpdate____Disabling_future_updates...
xor edx, edx
call fcn.14009943c
mov rcx, qword [r14 + 0x10]
lea rdx, str.require_zip_reader_
mov r9d, 0xe08
call fcn.140019b04
mov rcx, qword [r14 + 0x10]
or edi, 0xffffffff
mov edx, edi
call fcn.14001b218
mov rcx, qword [r14 + 0x10]
lea r8, str.isZip
mov edx, edi
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
lea ebx, [rdi - 1]
mov edx, ebx
call fcn.14001b1dc
mov rcx, qword [r14 + 0x10]
mov rdx, rsi
call fcn.14001cd08
mov rcx, qword [r14 + 0x10]
lea esi, [rdi + 2]
mov edx, esi
call fcn.14001901c
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001bd44
xor r13d, r13d
test eax, eax
je 0x140005c7e
cmp dword [r14 + 0x9e4], r13d
je 0x140005b5c
xor r9d, r9d
mov dword [rsp + 0x20], r13d
xor r8d, r8d
lea rcx, str.SelfUpdate____Unzipping_update...
xor edx, edx
call fcn.14009943c
mov rcx, qword [r14 + 0x10]
lea rdx, str.require_update_helper_
mov r9d, 0xe08
call fcn.140019b04
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001b218
mov rcx, qword [r14 + 0x10]
lea r8, str.start
mov edx, edi
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
mov edx, ebx
call fcn.14001b1dc
mov rdx, qword [rbp]
mov rcx, qword [r14 + 0x10]
call fcn.14001cd08
mov rcx, qword [r14 + 0x10]
mov edx, esi
call fcn.14001901c
test eax, eax
jne 0x140005c2a
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001b218
mov rcx, qword [r14 + 0x10]
lea r8, str.then
mov edx, edi
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
mov edx, ebx
call fcn.14001b1dc
mov rcx, qword [r14 + 0x10]
lea rdx, [0x140004dc4]
mov ebx, 0x18075380
mov esi, 6
mov r9d, ebx
mov dword [rsp + 0x20], esi
mov r8d, edi
call fcn.14001d430
mov rcx, qword [r14 + 0x10]
lea rdx, [0x140004e28]
mov r9d, ebx
mov dword [rsp + 0x20], esi
mov r8d, edi
call fcn.14001d430
mov rcx, qword [r14 + 0x10]
lea edx, [rsi - 4]
call fcn.14001901c
jmp 0x140005c6d
cmp dword [r14 + 0x9e4], r13d
je 0x140005c6d
mov rcx, qword [r14 + 0x10]
xor r8d, r8d
mov edx, edi
call fcn.14001c0a4
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.14009943c
mov rcx, qword [r14 + 0x10]
mov edx, r12d
call fcn.14001aec4
jmp 0x1400062c9
mov rcx, qword [r14 + 0x10]
mov edx, r12d
call fcn.14001aec4
mov rcx, r14
call fcn.140004a60
jmp 0x1400062c9
cmp dword [r14 + 0x9e4], edi
je 0x140005cb8
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.14009943c
mov rcx, rsi
call fcn.14008eb50
jmp 0x1400062c9
mov ecx, listen
call qword [sym.imp.WS2_32.dll_htons]
movzx ecx, bx
mov word [0x1402c6b20], ax
call qword [sym.imp.WS2_32.dll_htons]
mov word [0x1402c6b22], ax
lea rcx, [0x1402c6b24]
cmp dword [r14 + 0x9dc], edi
je 0x140005d04
xor edx, edx
lea r8d, [rdx + 0x30]
call fcn.1401c4b00
jmp 0x140005d56
cmp dword [r14 + 0x9e0], edi
je 0x140005d40
mov edx, 0xffff
mov r8d, 0x30
call fcn.1401c4b00
cmp dword [r14 + 0x9e4], edi
je 0x140005d56
xor r9d, r9d
mov dword [rsp + 0x20], edi
xor r8d, r8d
lea rcx, str.SelfUpdate____Forcing_Update...
xor edx, edx
call fcn.14009943c
jmp 0x140005d56
mov ebx, 0x30
lea r8, [r14 + 0xa04]
mov edx, ebx
mov r9, rbx
call section..text
mov r9d, gethostname
jmp 0x1400058c7
mov edx, 0x400
lea rcx, str.CoreModule
call fcn.1401cbd78
mov rcx, qword [r14 + 0x48]
mov r8, rax
call fcn.14009cb10
mov ecx, dword [r14 + 0x84]
lea rdi, [0x1402c6b20]
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.1401c4b00
lea ecx, [rbx - 0x25]
call qword [sym.imp.WS2_32.dll_htons]
movzx ecx, word [rbp + 8]
mov word [0x1402c6b20], ax
call qword [sym.imp.WS2_32.dll_htons]
mov word [0x1402c6b22], ax
cmp dword [r14 + 0x84], 0
jne 0x140005df2
test r15, r15
je 0x140005df2
mov r9d, ebx
lea rcx, [0x1402c6b24]
mov r8, r15
mov edx, ebx
call section..text
lea esi, [rbx + 4]
mov r9d, esi
mov r8, rdi
jmp 0x1400058ce
xor ecx, ecx
test rcx, rcx
je 0x1400062c9
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.14009c4f8
mov rdx, rdi
mov rcx, r13
call fcn.1401cbd78
mov rcx, qword [r14 + 0x48]
mov r8, rax
call fcn.14009cb10
lea rdx, [r15 + 4]
mov qword [rbp], rax
mov r8, rbx
mov rcx, rax
call fcn.1401c4cb0
test eax, eax
je 0x140005e81
mov rdx, rdi
mov rcx, r13
call fcn.1401cbd78
mov rcx, qword [r14 + 0x48]
mov r8, rax
mov rdx, r13
call fcn.14009cd18
mov rcx, r14
call fcn.1400040b4
mov ecx, listen
jmp 0x1400058a6
mov rcx, r14
call fcn.1400040b4
mov rsi, rax
test rax, rax
je 0x140005efa
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.140084348
test eax, eax
jne 0x140005ec9
xor edx, edx
mov rcx, rsi
call fcn.140018f78
test eax, eax
je 0x140005efa
xor r8d, r8d
or edx, 0xffffffff
mov rcx, rsi
call fcn.14001c0a4
mov r9, rax
lea r8, [0x1402511fc]
mov edx, 0x1000
lea rcx, [0x1402c5b20]
call fcn.140001138
mov rcx, rsi
call fcn.14001db4c
mov rcx, qword [r14 + 0x48]
call fcn.14009d078
mov ecx, listen
call qword [sym.imp.WS2_32.dll_htons]
movzx ecx, word [rbp + 8]
mov word [0x1402c6b20], ax
call qword [sym.imp.WS2_32.dll_htons]
mov r8, qword [rbp]
lea rcx, [0x1402c6b24]
mov word [0x1402c6b22], ax
mov edx, 0xfffc
jmp 0x140005d4e
cmp r13d, r12d
jne 0x1400062c9
lea r13, str.CoreModule
mov edx, 0x400
mov rcx, r13
call fcn.1401cbd78
mov rcx, qword [r14 + 0x48]
mov r8, rax
mov rdx, r13
call fcn.14009cd18
mov rcx, r14
call fcn.1400040b4
mov ecx, listen
call qword [sym.imp.WS2_32.dll_htons]
movzx ecx, bx
jmp 0x1400058b0
mov rdx, qword [r14]
mov rcx, qword [r14 + 0x10]
call fcn.140002e6c
mov rcx, qword [r14 + 0x10]
lea r8, str.emit
or edi, 0xffffffff
mov edx, edi
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
lea r12d, [rdi - 1]
mov edx, r12d
call fcn.14001b1dc
mov rcx, qword [r14 + 0x10]
lea rdx, str.Command
call fcn.14001cd08
cmp byte [r15], 0x7b
mov rcx, qword [r14 + 0x10]
jne 0x140006250
call fcn.14001cf38
mov rcx, qword [r14 + 0x10]
lea r8, str.JSON
mov edx, edi
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
lea r8, str.parse
mov edx, edi
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
lea edx, [rdi - 2]
call fcn.14001b1dc
mov rcx, qword [r14 + 0x10]
call fcn.14001dbe8
mov rcx, qword [r14 + 0x10]
mov r8, r13
mov rdx, r15
call fcn.14001cc54
mov rcx, qword [r14 + 0x10]
lea esi, [rdi + 2]
mov edx, esi
call fcn.140018f78
mov rcx, qword [r14 + 0x10]
test eax, eax
je 0x14000604d
call fcn.14001db4c
mov rcx, qword [r14 + 0x10]
mov r8, r13
mov rdx, r15
call fcn.14001cc54
jmp 0x140006297
lea r8, str.action
mov edx, edi
call fcn.14001a658
test eax, eax
je 0x140006297
mov rcx, qword [r14 + 0x10]
lea r9, [0x140251148]
and qword [rsp + 0x20], 0
lea r8, str.action
mov edx, edi
call fcn.140060194
lea rdx, str.ping
mov rcx, rax
mov rbx, rax
call fcn.1401d7bc0
test eax, eax
jne 0x140006106
cmp dword [r14 + 0xb40], eax
jne 0x1400060fa
mov rdx, qword [r14]
mov rcx, qword [r14 + 0x10]
call fcn.140002e6c
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001b218
mov rcx, qword [r14 + 0x10]
lea r8, str.emit
mov edx, edi
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
mov edx, r12d
call fcn.14001b1dc
mov rcx, qword [r14 + 0x10]
lea rdx, str.idleTimeoutModeChanged
call fcn.14001cd08
mov rcx, qword [r14 + 0x10]
mov edx, esi
call fcn.14001901c
mov rcx, qword [r14 + 0x10]
call fcn.14001dbe8
mov dword [r14 + 0xb40], esi
jmp 0x140006297
lea rdx, str.pong
mov rcx, rbx
call fcn.1401d7bc0
test eax, eax
jne 0x140006297
mov rdx, qword [r14]
mov rcx, qword [r14 + 0x10]
call fcn.140002e6c
mov rcx, qword [r14 + 0x10]
lea r8, [0x140251500]
mov edx, edi
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001b9b8
test rax, rax
je 0x140006245
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001b218
mov rcx, qword [r14 + 0x10]
lea r8, str.shift
mov edx, edi
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
mov edx, r12d
call fcn.14001b1dc
mov rbx, qword [r14 + 0x10]
xor edx, edx
mov rcx, rbx
lea r8d, [rdx + 2]
call fcn.140018e9c
xor r8d, r8d
mov edx, eax
mov rcx, rbx
call fcn.140037750
mov rcx, qword [r14 + 0x10]
lea r8, [0x1402515b0]
mov edx, edi
call fcn.14001a658
test eax, eax
je 0x140006208
mov rcx, qword [r14 + 0x10]
call fcn.14001cf38
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001b218
mov rcx, qword [r14 + 0x10]
lea r8, str.clearTimeout
mov edx, edi
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
mov edx, r12d
call fcn.14001b1dc
mov rcx, qword [r14 + 0x10]
lea r8, [0x1402515b0]
mov edx, 0xfffffffc
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
mov edx, esi
call fcn.14001901c
mov rcx, qword [r14 + 0x10]
call fcn.14001dbe8
mov rcx, qword [r14 + 0x10]
mov edx, edi
call fcn.14001b218
mov rcx, qword [r14 + 0x10]
lea r8, str._res
mov edx, edi
call fcn.14001a23c
mov rcx, qword [r14 + 0x10]
mov edx, r12d
call fcn.14001b1dc
mov rcx, qword [r14 + 0x10]
xor edx, edx
call fcn.14001901c
mov rcx, qword [r14 + 0x10]
call fcn.14001dbe8
mov rcx, qword [r14 + 0x10]
call fcn.14001dbe8
jmp 0x140006297
xor edx, edx
lea r8d, [rdx + 3]
call fcn.14001d834
mov rcx, qword [r14 + 0x10]
mov edi, 0xfffffffc
mov edx, edi
call fcn.14001b2e8
mov rcx, qword [r14 + 0x10]
mov r9, r13
mov r8, r15
mov edx, edi
call fcn.140018e38
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.14001d588
lea esi, [rdi + 6]
mov rcx, qword [r14 + 0x10]
mov edx, 2
call fcn.14001901c
test eax, eax
je 0x1400062be
mov rcx, qword [r14 + 0x10]
test rcx, rcx
je 0x1400062be
lea rdx, [0x140251148]
call fcn.140060d88
mov rcx, qword [r14 + 0x10]
mov edx, esi
call fcn.14001da2c
mov rcx, qword [rbp + 0x160]
xor rcx, rbp
call fcn.1401c3630
lea rsp, [rbp + 0x178]
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret