Function at 0x18001a8a0
Capabilities:
Encode data using xor

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
mov dword [rsp + 0x20], r9d
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x4060]
mov eax, 0x4160
call fcn.180066fc0
sub rsp, rax
imul r12d, r9d, 0x19e
xor ebx, ebx
mov r15, r8
mov r13, rdx
mov r14, rcx
mov edi, r9d
cmp r9d, r12d
ja 0x18001ad0e
mov rsi, qword [rbp - 0x70]
mov ecx, 0x746e
nop dword [rax]
cmp edi, 0xd71
ja 0x18001ab52
je 0x18001ab19
cmp edi, 0x378
ja 0x18001a9cf
je 0x18001a9a7
mov eax, edi
sub eax, 0x25
je 0x18001a996
sub eax, 0x2b
je 0x18001a972
sub eax, 0x37
je 0x18001a948
cmp eax, 0x27
jne 0x18001acfc
mov word [rsp + 0x60], cx
jmp 0x18001acfc
mov rax, qword [r14 + 8]
mov qword [rbp + 0x10], rax
mov dword [rbp + 8], 9
test r15, r15
je 0x18001a969
mov rax, qword [r15 + 0x10]
mov qword [rbp + 0x18], rax
jmp 0x18001acfc
mov qword [rbp + 0x18], rbx
jmp 0x18001acfc
mov qword [r14 + 8], rbx
mov r9d, 0x40
mov qword [r14], rbx
mov r8d, 0x1000
mov rdx, qword [r13 + 0x10]
xor ecx, ecx
call qword [r15]
mov rsi, rax
jmp 0x18001acf7
lea rcx, str.._data_dav_b.txt
call fcn.1800767d0
jmp 0x18001acf7
lea rcx, str.._data_dav_d
call fcn.180081d00
lea r8, str.sust.b.2d.v2.b8.trap
lea rdx, [0x180098954]
lea rcx, [rbp + 0x60]
call fcn.180040db0
jmp 0x18001acf7
cmp edi, 0x6cb
je 0x18001aab4
cmp edi, 0x780
je 0x18001aa8c
cmp edi, 0xa1e
je 0x18001aa19
cmp edi, 0xca8
jne 0x18001acfc
xor r9d, r9d
mov qword [rsp + 0x20], r13
xor edx, edx
lea rcx, [rbp + 8]
mov r8d, 0x8e
call fcn.18000c5c0
jmp 0x18001acf7
lea r8, str.Error_in_fetching_kXQ_ApplicationArgs_...
lea rdx, [0x180098954]
lea rcx, [rbp + 0x60]
call fcn.180040db0
inc dword [0x1800bb644]
lea r8, [rbp + 0x60]
mov edx, 0x9c
lea rcx, str.HTTP_1.1_415
call fcn.180014ba0
test eax, eax
je 0x18001ab0d
lea r8, str.CmdSetDeviceMaskKHX
lea rdx, [0x180098954]
lea rcx, [rbp + 0x60]
call fcn.180040db0
inc dword [0x1800bb644]
lea r8, [rbp + 0x60]
mov edx, 0x9c
lea rcx, str.HTTP_1.1_201
call fcn.180014ba0
test eax, eax
jmp 0x18001acf1
test rsi, rsi
je 0x18001ad78
cmp qword [r13 + 0x18], 0x10
mov rdx, r13
jb 0x18001aaa3
mov rdx, qword [r13]
mov r8, qword [r13 + 0x10]
mov rcx, rsi
call fcn.180069040
jmp 0x18001acf7
inc dword [0x1800bb644]
lea r8, [rbp + 0x60]
mov edx, 0x9c
lea rcx, str.gN_c_e5ba00
call fcn.180014ba0
test eax, eax
je 0x18001ab0d
inc dword [0x1800bb644]
lea rdx, str.a.txt
lea rcx, [rbp + 0x60]
call fcn.180067e7c
test rax, rax
je 0x18001ab0d
inc dword [0x1800bb644]
lea rdx, str.btrace_conf.dtd
lea rcx, [rbp + 0x60]
call fcn.180067e7c
test rax, rax
je 0x18001acf7
lea rax, str.false
jmp 0x18001b3ee
lea r8, str._Ql_QX_QD_Q0_Q
lea rdx, [0x180098954]
lea rcx, [rbp + 0x60]
call fcn.180040db0
inc dword [0x1800bb644]
lea r8, [rbp + 0x60]
mov edx, 0x9c
lea rcx, str.VPMULUDQZrrk
call fcn.180014ba0
test eax, eax
jmp 0x18001acf1
cmp edi, 0x15e0
ja 0x18001ac2f
je 0x18001ac1c
mov eax, edi
sub eax, 0xeb0
je 0x18001ac0c
sub eax, 0x1a0
je 0x18001abf0
sub eax, 0x74
je 0x18001abaa
cmp eax, 0x353
jne 0x18001acfc
inc dword [0x1800bb644]
lea r8, [rbp + 0x60]
mov edx, 0x9c
lea rcx, str.MuteStream:
call fcn.180014ba0
test eax, eax
jmp 0x18001acf1
lea r8, str._clientThreadIdOffset
lea rdx, [0x180098954]
lea rcx, [rbp + 0x60]
call fcn.180040db0
inc dword [0x1800bb644]
lea r8, [rbp + 0x60]
mov edx, 0x9c
lea rcx, str.get_OldValue
call fcn.180014ba0
test eax, eax
je 0x18001ab0d
lea r8, str.PUT__b.txt_HTTP_1.0_nContent_Length:_5_n_n12345
jmp 0x18001a9ba
movzx eax, word [0x18009f818]
mov word [rsp + 0x62], ax
movzx eax, byte [0x18009f81a]
mov byte [rsp + 0x64], al
jmp 0x18001acfc
mov eax, dword [r13 + 0x20]
add rax, rsi
mov qword [r14 + 8], rax
jmp 0x18001acfc
mov eax, dword [r13 + 0x24]
add rax, rsi
mov byte [rbp - 0x80], 1
mov qword [r14], rax
jmp 0x18001acfc
cmp edi, 0x176a
je 0x18001ac9e
cmp edi, 0x1ff2
je 0x18001ac68
cmp edi, 0x2f94
jne 0x18001acfc
movsd xmm0, qword [0x18009f792]
movzx eax, word [0x18009f79a]
movsd qword [rbp - 0x1e], xmm0
mov word [rbp - 0x16], ax
jmp 0x18001acfc
mov r8d, 3
mov byte [rsp + 0x65], bl
lea rdx, [0x18009f89c]
mov word [rbp - 0x28], bx
lea rcx, [rbp - 0x28]
call fcn.18006db94
mov r8d, 2
lea rdx, [0x18009f95e]
lea rcx, [rbp - 0x22]
call fcn.18006dbdc
jmp 0x18001acf7
lea r8, str.1onConnectWiFiButtonClicked___
lea rdx, [0x180098954]
lea rcx, [rbp + 0x60]
call fcn.180040db0
inc dword [0x1800bb644]
lea r8, [rbp + 0x60]
mov edx, 0x9c
lea rcx, str.HTTP_1.1_200
call fcn.180014ba0
test eax, eax
je 0x18001ab0d
inc dword [0x1800bb644]
lea rdx, str.DEPRECATED_BEHAVIOR
lea rcx, [rbp + 0x60]
call fcn.180067e7c
test rax, rax
je 0x18001ab0d
mov ecx, 0x746e
imul eax, dword [rbp + 0x40a8], 0x17
add edi, eax
cmp edi, r12d
jbe 0x18001a900
mov edi, dword [rbp + 0x40a8]
lea edx, [rdi - 0x11]
mov dword [rsp + 0x48], edx
cmp edi, edx
jbe case.0x18001ad76.2
mov rsi, qword [rbp - 0x70]
lea edx, [rdi - 0x24]
mov r15, qword [rbp - 0x70]
lea r14, str.timelineList
mov r12, qword [rbp - 0x70]
mov eax, dword [rsp + 0x48]
mov dword [rsp + 0x4c], edx
lea r8, [0x180000000]
mov r11d, 0x73
lea r10d, [r11 - 0xb]
lea r9d, [r11 - 7]
cmp edx, 0x8a
ja case.default.0x18001ad76
movzx eax, byte [r8 + rdx + 0x1b458]
mov ecx, dword [r8 + rax*4 + 0x1b410]
add rcx, r8
jmp rcx
mov byte [rbp - 0x80], bl
jmp case.0x18001ad76.2
mov dword [rbp - 0x36], 0x6c
jmp case.0x18001ad76.9
inc dword [0x1800bb644]
lea rax, [rbp + 0x60]
mov r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rax + r8], bl
jne 0x18001ada0
lea rax, [rbp + 0x60]
mov qword [rsp + 0x28], rbx
sub rax, 7
mov dword [rsp + 0x20], 0xc1
add r8, rax
lea r9, str._r_n12345
xor edx, edx
xor ecx, ecx
call fcn.1800516d0
test eax, eax
je 0x18001ab0d
lea r8, str.Library_not_found_at:__s
lea rdx, [0x180098954]
lea rcx, [rbp + 0x60]
call fcn.180040db0
inc dword [0x1800bb644]
lea r8, [rbp + 0x60]
mov edx, 0x9c
lea rcx, str.TLBINVF_MMR6
call fcn.180014ba0
test eax, eax
je 0x18001ab0d
inc dword [0x1800bb644]
lea rax, str.LAO_268_SIGN_EI
xor r9d, r9d
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], rax
lea rcx, [rbp - 0x60]
lea rax, [rbp + 0x20]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea edx, [r9 + 0x7e]
call fcn.180052210
movups xmm1, xmmword [rax]
movsd xmm0, qword [rax + 0x10]
movd eax, xmm1
movsd qword [rbp - 0x50], xmm0
test eax, eax
je 0x18001ab0d
mov edx, dword [rsp + 0x4c]
jmp case.0x18001ad76.9
mov rax, qword [r13 + 0x48]
mov qword [rbp - 0x68], rax
mov qword [rbp - 0x30], rbx
jmp case.0x18001ad76.9
mov eax, dword [0x18009fac8]
mov dword [rbp - 0x3e], eax
movzx eax, word [0x18009facc]
mov word [rbp - 0x3a], ax
mov word [rbp - 0x38], r9w
jmp case.0x18001ad76.9
mov eax, 0x6e
mov word [rbp - 0x14], bx
mov word [rsp + 0x50], ax
mov eax, 0x74
mov word [rsp + 0x51], ax
mov eax, 0x6f
mov word [rsp + 0x52], ax
jmp case.0x18001ad76.9
mov rax, qword [rbp - 0x68]
lea r12, [rsi + 1]
add rax, rsi
mov r15, rsi
mov qword [rbp - 0x10], rax
jmp case.0x18001ad76.9
mov eax, dword [0x18009fb5e]
mov dword [rbp - 0x44], eax
movzx eax, word [0x18009fb62]
mov word [rbp - 0x40], ax
jmp case.0x18001ad76.9
mov edi, 0xb
mov eax, edi
sub eax, 0xb
je 0x18001af07
cmp eax, 1
jne 0x18001af63
mov rax, rbx
jmp 0x18001b3ee
lea r8, str.V_CMPX_NE_I64_e32_vi
lea rdx, [0x180098954]
lea rcx, [rbp + 0x60]
call fcn.180040db0
inc dword [0x1800bb644]
lea rax, [rbp + 0x20]
xor r9d, r9d
mov qword [rsp + 0x30], rbx
mov qword [rsp + 0x28], r14
lea rcx, [rbp - 0x60]
xor r8d, r8d
mov qword [rsp + 0x20], rax
lea edx, [r9 + 0x7e]
call fcn.180052210
movups xmm1, xmmword [rax]
movsd xmm0, qword [rax + 0x10]
movd eax, xmm1
movsd qword [rbp - 0x50], xmm0
test eax, eax
je 0x18001ab0d
inc edi
cmp edi, 0xd
jb 0x18001aef3
mov edx, dword [rsp + 0x4c]
mov edi, dword [rbp + 0x40a8]
mov rsi, qword [r13 + 0x40]
mov qword [rsp + 0x78], rbx
jmp case.0x18001ad76.9
mov r14, qword [rsp + 0x78]
mov r8, qword [rsp + 0x58]
lea rdi, [r8 + r14]
mov qword [rbp - 8], rdi
test rdi, rdi
je 0x18001afa4
mov eax, 1
cmp rdi, qword [rbp - 0x68]
jbe 0x18001afa6
mov eax, ebx
mov dword [rsp + 0x70], eax
test eax, eax
je 0x18001b3bb
mov eax, 0xca
mov dword [rsp + 0x68], eax
nop dword [rax + rax]
sub eax, 0xca
je 0x18001b1ce
sub eax, 1
je 0x18001b191
sub eax, 1
je 0x18001b000
cmp eax, 1
jne 0x18001b1e1
movzx eax, byte [r15]
and al, 0xf
cmp al, 8
jne 0x18001b1e1
or dword [r13 + 0xc0], 0x400
jmp 0x18001b1e1
cmp dword [rsp + 0x6c], ebx
je 0x18001b151
mov r14d, 0x3a
cmp r14d, 0x3a
je 0x18001b0b9
cmp r14d, 0xf5
je 0x18001b090
cmp r14d, 0x1b0
jne 0x18001b12a
test byte [rbp - 0x50], 0x80
je 0x18001b12a
lea rax, [rsi + 5]
mov r8, r13
mov qword [rbp - 0x60], rax
lea rdx, [rbp - 0x60]
mov eax, dword [r12]
mov ecx, 0xbf
mov qword [rbp - 0x58], rax
call fcn.180043ea0
mov eax, dword [r12]
mov r9d, 0x10d
add rax, 5
xor r8d, r8d
mov qword [rbp - 0x78], rax
xor edx, edx
lea rax, [r13 + 0x40]
xor ecx, ecx
mov qword [rsp + 0x28], rax
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
call fcn.180036f10
jmp 0x18001b12a
mov rdi, qword [rbp - 0x60]
mov rcx, r15
mov r8, qword [rbp - 0x10]
mov rdx, rdi
sub r8, rdi
call fcn.180069040
mov eax, dword [rbp - 0x58]
add dword [r12], eax
mov rax, r15
sub rax, rdi
add qword [r13 + 0x48], rax
jmp 0x18001b12a
movzx eax, byte [rbp - 0x50]
xor r9d, r9d
mov byte [rsp + 0x40], al
xor edx, edx
lea rax, [rsp + 0x40]
xor ecx, ecx
mov r8d, 0xac
mov qword [rsp + 0x20], rax
call fcn.18002f060
test eax, eax
je 0x18001b12a
mov edi, 0xd7
mov eax, edi
sub eax, 0xd7
je 0x18001b0fe
cmp eax, 0x7e
jne 0x18001b11f
lea r15, [rsi + 5]
mov dword [r12], ebx
jmp 0x18001b11f
mov rax, qword [r13 + 0x50]
lea rcx, [r13 + 0x40]
add rax, 4
lea r8, [rbp - 0x78]
mov edx, 0x52
mov qword [rbp - 0x78], rax
call fcn.1800481a0
and byte [rsi], 0xf0
add edi, 0x7e
cmp edi, 0x1d3
jb 0x18001b0e6
add r14d, 0xbb
cmp r14d, 0x26b
jb 0x18001b010
mov r14, qword [rsp + 0x78]
mov r8, qword [rsp + 0x58]
mov rdi, qword [rbp - 8]
jmp 0x18001b1e1
mov r8, r13
lea rdx, [rbp - 0x60]
mov ecx, 0xbf
call fcn.180043ea0
lea rax, [r13 + 0x40]
mov qword [rbp - 0x78], rdi
mov qword [rsp + 0x28], rax
mov r9d, 0x10d
lea rax, [rbp - 0x78]
xor r8d, r8d
xor edx, edx
mov qword [rsp + 0x20], rax
xor ecx, ecx
call fcn.180036f10
mov r8, qword [rsp + 0x58]
jmp 0x18001b1e1
mov r9, qword [rbp - 0x30]
test r9, r9
je 0x18001b1e1
mov rcx, rbx
test r8, r8
je 0x18001b1e1
lea rdx, [r14 + r15]
nop word [rax + rax]
mov rax, rcx
and eax, 3
sub rax, r9
add rax, r14
movzx eax, byte [rax + r15]
xor byte [rdx + rcx], al
inc rcx
cmp rcx, r8
jb 0x18001b1b0
jmp 0x18001b1e1
lea rax, [r14 + r15]
mov qword [rbp - 0x58], r8
mov qword [rbp - 0x60], rax
movzx eax, byte [r15]
mov byte [rbp - 0x50], al
mov eax, dword [rsp + 0x68]
inc eax
mov dword [rsp + 0x68], eax
cmp eax, 0xce
jb 0x18001afc0
jmp 0x18001b3b7
mov word [rsp + 0x53], r10w
mov word [rsp + 0x54], r11w
mov dword [rbp - 0x48], 0x730077
mov word [rbp - 0x44], bx
jmp case.0x18001ad76.9
mov qword [rsp + 0x30], rbx
lea r8, [rsp + 0x50]
mov qword [rsp + 0x28], rbx
lea rcx, [rbp - 0x48]
xor r9d, r9d
mov dword [rsp + 0x20], 0xe9
xor edx, edx
call fcn.18000df30
mov edx, dword [rsp + 0x4c]
mov qword [rbp], rax
mov qword [rsp + 0x58], rbx
jmp case.0x18001ad76.9
mov qword [rsp + 0x30], rbx
lea r8, [rsp + 0x60]
mov qword [rsp + 0x28], rbx
lea rcx, [rbp - 0x28]
xor r9d, r9d
mov dword [rsp + 0x20], 0xe9
xor edx, edx
call fcn.18000df30
mov edx, dword [rsp + 0x4c]
mov qword [rbp - 0x70], rax
jmp case.0x18001ad76.9
mov rdi, qword [rbp - 0x68]
test rdi, rdi
je 0x18001b31d
movzx eax, byte [rsi]
mov r9d, 0x45
mov byte [rsp + 0x40], al
xor r8d, r8d
lea rax, [rsp + 0x40]
xor edx, edx
xor ecx, ecx
mov qword [rsp + 0x20], rax
call fcn.18005f7d0
test eax, eax
je 0x18001b31d
test dword [r13 + 0xc0], 0x2000
jne 0x18001b31d
movzx eax, byte [rsi]
xor r9d, r9d
mov byte [rsp + 0x40], al
xor edx, edx
lea rax, [rsp + 0x40]
mov dword [rsp + 0x6c], 1
xor ecx, ecx
mov qword [rsp + 0x20], rax
mov r8d, 0xac
call fcn.18002f060
test eax, eax
jne 0x18001b321
cmp rdi, 5
jb 0x18001b321
mov ecx, dword [r12]
lea rax, [rcx + 5]
cmp rdi, rax
jb 0x18001b321
add r15, 5
mov rax, 0xfffffffffffffffb
add r15, rcx
sub rax, rcx
add rdi, rax
mov qword [rbp - 0x68], rdi
jmp 0x18001b321
mov dword [rsp + 0x6c], ebx
cmp rdi, 2
jb 0x18001b357
movzx r9d, byte [r15 + 1]
mov eax, r9d
shr r9, 5
and r9d, 4
and eax, 0x7f
mov qword [rbp - 0x30], r9
cmp rax, 0x7e
jae 0x18001b361
cmp rdi, r9
jb 0x18001b35d
mov qword [rsp + 0x58], rax
lea rax, [r9 + 2]
mov qword [rsp + 0x78], rax
mov edx, dword [rsp + 0x4c]
jmp 0x18001b3c2
cmp rax, 0x7e
jne 0x18001b387
lea rax, [r9 + 4]
cmp rdi, rax
jb 0x18001b387
movzx ecx, word [r15 + 2]
mov qword [rsp + 0x78], rax
call qword [rbp]
mov edx, dword [rsp + 0x4c]
movzx eax, ax
mov qword [rsp + 0x58], rax
jmp 0x18001b3c2
lea rax, [r9 + 0xa]
cmp rdi, rax
jb 0x18001b357
mov ecx, dword [r15 + 2]
mov r14, qword [rbp - 0x70]
mov qword [rsp + 0x78], rax
call r14
mov ecx, dword [r15 + 6]
mov edi, eax
shl rdi, 0x20
call r14
mov eax, eax
add rax, rdi
mov qword [rsp + 0x58], rax
mov edx, dword [rsp + 0x4c]
lea r14, str.timelineList
mov edi, dword [rbp + 0x40a8]
mov eax, dword [rsp + 0x48]
dec edi
dec edx
mov dword [rbp + 0x40a8], edi
mov dword [rsp + 0x4c], edx
cmp edi, eax
jbe case.0x18001ad76.2
jmp 0x18001ad41
mov eax, dword [rsp + 0x70]
mov dword [rbp - 0x80], eax
mov rax, qword [rbp - 0x80]
lea r11, [rsp + 0x4160]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rdi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret