Function at 0x1400b2850
Capabilities:
Encode data using xor

Disassembly:
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov word [rsp + 0x10], dx
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x28]
sub rsp, 0x128
mov qword [rbp + 0x10], 0xfffffffffffffffe
mov eax, r9d
mov byte [rcx], 0
mov ecx, dword [rbp + 0xa0]
mov edi, dword [rbp + 0x98]
cmp dword [0x140174c98], ecx
jne 0x1400b28aa
cmp dword [0x140174c94], edi
je 0x1400b3d05
cmp dword [0x140174ca8], ecx
jne 0x1400b28be
cmp dword [0x140174ca4], edi
je 0x1400b3d05
cmp dword [0x140174cb0], ecx
jne 0x1400b28d2
cmp dword [0x140174cac], edi
je 0x1400b3d05
cmp eax, 1
jl 0x1400b3d05
lea eax, [rdx - 9]
cmp ax, 0x17
jbe 0x1400b3d05
lea eax, [rdx - 0x69]
cmp ax, 3
jbe 0x1400b3d05
lea eax, [rdx - 0x6f]
cmp ax, 7
jbe 0x1400b3d05
test dx, dx
je 0x1400b3d05
cmp dx, 0x21
je 0x1400b3d05
cmp dx, 8
je 0x1400b3d05
mov eax, 0xe3
cmp dx, ax
je 0x1400b3d05
mov eax, 0xa9
cmp dx, ax
je 0x1400b3d05
cmp dx, 0x73
je 0x1400b3d05
cmp edi, dword [0x140174cc0]
je 0x1400b3d05
xor r14d, r14d
mov ecx, r14d
mov edx, dword [0x140173ffc]
test edx, edx
je 0x1400b2983
lea rax, [0x140173f34]
cmp dword [rax], edi
je 0x1400b2978
inc ecx
add rax, 4
cmp ecx, edx
jb 0x1400b2968
jmp 0x1400b2983
mov dword [0x140174cc0], edi
jmp 0x1400b3d05
call fcn.14001ac10
mov r11d, eax
mov eax, 0x68168169
mul r11d
mov ecx, r11d
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 6
imul ecx, ecx, 0x5b
sub r11d, ecx
mov dword [rbp - 0x80], r11d
mov dword [rsp + 0x50], r14d
mov edi, 0x190
mov qword [rsp + 0x60], rdi
mov esi, edi
mov qword [rsp + 0x40], rdi
mov edx, 0x320
xor ecx, ecx
call fcn.1401099a4
mov rbx, rax
test rax, rax
jne 0x1400b29ec
xor ecx, ecx
call fcn.140108f48
mov rbx, r14
mov qword [rsp + 0x48], rbx
mov rsi, r14
mov qword [rsp + 0x40], r14
jmp 0x1400b29fa
mov qword [rsp + 0x48], rax
mov dword [rsp + 0x50], r14d
mov word [rax], r14w
mov dword [rbp - 0x58], r14d
mov qword [rbp - 0x68], rdi
mov edx, 0x320
xor ecx, ecx
call fcn.1401099a4
mov r15, rax
test rax, rax
jne 0x1400b2a2f
xor ecx, ecx
call fcn.140108f48
mov r15, r14
mov qword [rbp - 0x60], r14
mov qword [rsp + 0x60], r14
mov qword [rbp - 0x68], r14
jmp 0x1400b2a3b
mov qword [rbp - 0x60], rax
mov dword [rbp - 0x58], r14d
mov word [rax], r14w
lea rdx, [0x140150110]
test rbx, rbx
jne 0x1400b2a60
lea rcx, [rsp + 0x40]
call fcn.14001b090
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
jmp 0x1400b2b3a
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea rdi, [rcx - 1]
lea rax, [rcx + rcx + 4]
cmp rsi, rax
jae 0x1400b2b06
shr rax, 1
lea r13, [rax + rax + 4]
lea rdx, [r13 + r13]
xor ecx, ecx
call fcn.1401099a4
mov r12, rax
test rax, rax
je 0x1400b2b3a
mov r8, rdi
mov rdx, rbx
mov rcx, rax
call fcn.14010a074
test rax, rax
je 0x1400b2afc
lea rcx, [r12 + rdi*2]
mov r8d, 2
lea rdx, [0x140150110]
call fcn.14010a074
test rax, rax
je 0x1400b2afc
mov word [r12 + rdi*2 + 4], r14w
mov r8, rsi
xor edx, edx
mov rcx, rbx
call fcn.14010ec60
mov rcx, rbx
call fcn.140108f48
mov rbx, r12
mov qword [rsp + 0x48], rbx
mov rsi, r13
mov qword [rsp + 0x40], r13
jmp 0x1400b2b3a
mov rcx, r12
call fcn.140108f48
jmp 0x1400b2b1b
lea rcx, [rbx + rcx*2 - 2]
mov r8d, 2
call fcn.14010a074
test rax, rax
jne 0x1400b2b34
mov rcx, rbx
call fcn.140108f48
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x50], r14d
jmp 0x1400b2b3f
mov word [rbx + rdi*2 + 4], r14w
test rbx, rbx
jne 0x1400b2b5f
lea rdx, [0x14012fa74]
lea rcx, [rsp + 0x40]
call fcn.14001b090
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
jmp 0x1400b2c46
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea rdi, [rcx - 1]
lea rax, [rcx + rcx + 2]
cmp rsi, rax
jae 0x1400b2c05
shr rax, 1
lea r13, [rax + rax + 4]
lea rdx, [r13 + r13]
xor ecx, ecx
call fcn.1401099a4
mov r12, rax
test rax, rax
je 0x1400b2c46
mov r8, rdi
mov rdx, rbx
mov rcx, rax
call fcn.14010a074
test rax, rax
je 0x1400b2bfb
lea rcx, [r12 + rdi*2]
mov r8d, 1
lea rdx, [0x14012fa74]
call fcn.14010a074
test rax, rax
je 0x1400b2bfb
mov word [r12 + rdi*2 + 2], r14w
mov r8, rsi
xor edx, edx
mov rcx, rbx
call fcn.14010ec60
mov rcx, rbx
call fcn.140108f48
mov rbx, r12
mov qword [rsp + 0x48], rbx
mov rsi, r13
mov qword [rsp + 0x40], r13
jmp 0x1400b2c46
mov rcx, r12
call fcn.140108f48
jmp 0x1400b2c21
lea rcx, [rbx + rcx*2 - 2]
mov r8d, 1
lea rdx, [0x14012fa74]
call fcn.14010a074
test rax, rax
jne 0x1400b2c40
mov rcx, rbx
call fcn.140108f48
mov rbx, r14
mov qword [rsp + 0x48], rbx
mov rsi, r14
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x50], r14d
jmp 0x1400b2c46
mov word [rbx + rdi*2 + 2], r14w
mov r9d, dword [rbp - 0x80]
movzx r10d, r9w
mov dword [rsp + 0x78], r10d
mov eax, r10d
and eax, 0x80000001
jge 0x1400b2c64
dec eax
or eax, 0xfffffffe
inc eax
mov r11d, dword [rbp + 0x88]
test eax, eax
je 0x1400b322b
mov r8, r14
mov qword [rsp + 0x70], r14
test r11d, r11d
jle 0x1400b37da
nop word [rax + rax]
mov rax, qword [rbp + 0x80]
mov r12, qword [rax + r8*8]
mov rdx, r14
movzx eax, word [r12]
test ax, ax
je 0x1400b2cde
mov rcx, r14
movzx edi, word [0x140169b20]
cmp ax, di
jne 0x1400b2ccd
mov rax, qword [rbp + 0x90]
mov rax, qword [rax + r8*8]
cmp word [rcx + rax], 0
jne 0x1400b31c6
inc rdx
lea rcx, [rdx + rdx]
movzx eax, word [rcx + r12]
test ax, ax
jne 0x1400b2cb2
mov edx, 0xa
mov rcx, r12
call fcn.140109434
test rax, rax
je 0x1400b2f8d
mov edx, 3
mov rcx, r12
call fcn.140109434
test rax, rax
jne 0x1400b31eb
mov rdx, r12
lea rcx, [rbp - 0x68]
call fcn.14001b090
mov r8, rax
mov qword [rbp - 0x78], rax
test rax, rax
je 0x1400b31eb
or r12d, 0xffffffff
mov dword [rsp + 0x5c], r12d
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r8
repne scasw ax, word [rdi]
not rcx
dec rcx
mov r15, rcx
mov qword [rbp - 0x70], rcx
mov rsi, r14
mov rbx, r14
mov qword [rsp + 0x68], r14
cmp word [r8], ax
je 0x1400b2f67
or rcx, 0xffffffffffffffff
lea rdi, [0x140169a5c]
repne scasw ax, word [rdi]
not rcx
lea r13, [rcx - 1]
lea eax, [rcx - 2]
mov dword [rsp + 0x58], eax
test eax, eax
je 0x1400b2ef9
cmp r15, 0x1388
jb 0x1400b2ef9
mov edi, r14d
mov r12, r8
nop word [rax + rax]
lea rdx, [0x14012fa74]
mov rcx, r12
call fcn.140109454
mov r15, rax
test rax, rax
je 0x1400b2e73
inc edi
mov dword [rsp + 0x60], edi
mov r8d, dword [rsp + 0x5c]
dec r8d
mov dword [rsp + 0x5c], r8d
mov rdi, rax
sub rdi, r12
sar rdi, 1
lea rcx, [rdi + r13]
add rcx, rbx
cmp rcx, qword [rsp + 0x68]
jb 0x1400b2e2b
sub rax, qword [rbp - 0x78]
sar rax, 1
movsxd rdx, eax
movsxd rax, ecx
movsxd r9, dword [rbp - 0x70]
movsxd rcx, dword [rsp + 0x58]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
mov edx, dword [rsp + 0x60]
call fcn.1400e6de0
mov qword [rsp + 0x68], rax
lea rdx, [rax + rax]
mov rcx, rsi
call fcn.1401099a4
test rax, rax
je 0x1400b2eae
mov rsi, rax
test rdi, rdi
je 0x1400b2e43
lea rcx, [rsi + rbx*2]
lea r8, [rdi + rdi]
mov rdx, r12
call fcn.140109100
add rbx, rdi
test r13, r13
je 0x1400b2e60
lea rcx, [rsi + rbx*2]
lea r8, [r13 + r13]
lea rdx, [0x140169a5c]
call fcn.140109100
add rbx, r13
lea r12, [r15 + 2]
cmp dword [rsp + 0x5c], 0
mov edi, dword [rsp + 0x60]
jne 0x1400b2da0
test edi, edi
je 0x1400b2f67
mov rax, r12
mov r15, qword [rbp - 0x78]
sub rax, r15
sar rax, 1
mov rdi, qword [rbp - 0x70]
sub rdi, rax
je 0x1400b2eda
lea r13, [rdi + rbx]
cmp r13, qword [rsp + 0x68]
jb 0x1400b2ec7
lea rdx, [r13 + r13 + 2]
mov rcx, rsi
call fcn.1401099a4
test rax, rax
jne 0x1400b2ec4
test rsi, rsi
je 0x1400b2f67
mov rcx, rsi
call fcn.140108f48
jmp 0x1400b2f67
mov rsi, rax
lea rcx, [rsi + rbx*2]
lea r8, [rdi + rdi]
mov rdx, r12
call fcn.140109100
mov rbx, r13
mov word [rsi + rbx*2], r14w
lea r8, [rbx + rbx + 2]
mov rdx, rsi
mov rcx, r15
call fcn.140109100
mov rcx, rsi
call fcn.140108f48
jmp 0x1400b2f67
mov rsi, r8
mov r14, r8
nop
lea rdx, [0x14012fa74]
mov rcx, rsi
call fcn.140109454
mov rdi, rax
test rax, rax
je 0x1400b2f64
lea rbx, [r13 + r13]
lea rsi, [rbx + rax]
cmp dword [rsp + 0x58], 0
je 0x1400b2f45
mov rcx, rax
sub rcx, r14
sar rcx, 1
mov r8, r15
sub r8, rcx
add r8, r8
lea rdx, [rax + 2]
mov rcx, rsi
call fcn.140109100
mov r8, rbx
lea rdx, [0x140169a5c]
mov rcx, rdi
call fcn.140109100
movsxd rdx, dword [rsp + 0x58]
add r15, rdx
dec r12d
jne 0x1400b2f00
xor r14d, r14d
mov r9d, 1
xor r8d, r8d
mov rdx, qword [rbp - 0x78]
lea rcx, [rsp + 0x40]
call fcn.14001b600
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
jmp 0x1400b309c
test rbx, rbx
jne 0x1400b2fae
mov rdx, r12
lea rcx, [rsp + 0x40]
call fcn.14001b090
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
jmp 0x1400b309c
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r13, [rcx - 1]
or rcx, 0xffffffffffffffff
mov rdi, r12
repne scasw ax, word [rdi]
not rcx
lea r15, [rcx - 1]
lea rdi, [rcx + r13 - 1]
lea rax, [rdi + rdi + 2]
cmp rsi, rax
jae 0x1400b306a
shr rax, 1
lea rax, [rax + rax + 4]
mov qword [rbp - 0x70], rax
lea rdx, [rax + rax]
xor ecx, ecx
call fcn.1401099a4
mov rdi, rax
test rax, rax
je 0x1400b309c
mov r8, r13
mov rdx, rbx
mov rcx, rax
call fcn.14010a074
test rax, rax
je 0x1400b3060
lea rcx, [rdi + r13*2]
mov r8, r15
mov rdx, r12
call fcn.14010a074
test rax, rax
je 0x1400b3060
lea rax, [r15 + r13]
mov word [rdi + rax*2], r14w
mov r8, rsi
xor edx, edx
mov rcx, rbx
call fcn.14010ec60
mov rcx, rbx
call fcn.140108f48
mov rbx, rdi
mov qword [rsp + 0x48], rbx
mov rsi, qword [rbp - 0x70]
mov qword [rsp + 0x40], rsi
jmp 0x1400b309c
mov rcx, rdi
call fcn.140108f48
jmp 0x1400b307e
lea rcx, [rbx + r13*2]
mov r8, r15
mov rdx, r12
call fcn.14010a074
test rax, rax
jne 0x1400b3097
mov rcx, rbx
call fcn.140108f48
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x50], r14d
jmp 0x1400b30a1
mov word [rbx + rdi*2], r14w
test rbx, rbx
jne 0x1400b30c1
lea rdx, [0x14012fa74]
lea rcx, [rsp + 0x40]
call fcn.14001b090
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
jmp 0x1400b31a8
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea rdi, [rcx - 1]
lea rax, [rcx + rcx + 2]
cmp rsi, rax
jae 0x1400b3167
shr rax, 1
lea r13, [rax + rax + 4]
lea rdx, [r13 + r13]
xor ecx, ecx
call fcn.1401099a4
mov r12, rax
test rax, rax
je 0x1400b31a8
mov r8, rdi
mov rdx, rbx
mov rcx, rax
call fcn.14010a074
test rax, rax
je 0x1400b315d
lea rcx, [r12 + rdi*2]
mov r8d, 1
lea rdx, [0x14012fa74]
call fcn.14010a074
test rax, rax
je 0x1400b315d
mov word [r12 + rdi*2 + 2], r14w
mov r8, rsi
xor edx, edx
mov rcx, rbx
call fcn.14010ec60
mov rcx, rbx
call fcn.140108f48
mov rbx, r12
mov qword [rsp + 0x48], rbx
mov rsi, r13
mov qword [rsp + 0x40], r13
jmp 0x1400b31a8
mov rcx, r12
call fcn.140108f48
jmp 0x1400b3183
lea rcx, [rbx + rcx*2 - 2]
mov r8d, 1
lea rdx, [0x14012fa74]
call fcn.14010a074
test rax, rax
jne 0x1400b31a2
mov rcx, rbx
call fcn.140108f48
mov rbx, r14
mov qword [rsp + 0x48], rbx
mov rsi, r14
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x50], r14d
jmp 0x1400b31a8
mov word [rbx + rdi*2 + 2], r14w
mov r8, qword [rsp + 0x70]
inc r8
mov qword [rsp + 0x70], r8
movsxd r11, dword [rbp + 0x88]
cmp r8, r11
jge 0x1400b3210
jmp 0x1400b2c90
mov rdi, qword [rbp - 0x60]
test rdi, rdi
je 0x1400b31e6
mov r8, qword [rbp - 0x68]
xor edx, edx
mov rcx, rdi
call fcn.14010ec60
mov rcx, rdi
call fcn.140108f48
nop
jmp 0x1400b3ceb
mov rdi, qword [rbp - 0x60]
test rdi, rdi
je 0x1400b320b
mov r8, qword [rbp - 0x68]
xor edx, edx
mov rcx, rdi
call fcn.14010ec60
mov rcx, rdi
call fcn.140108f48
nop
jmp 0x1400b3ceb
mov r15, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x68]
mov qword [rsp + 0x60], rdx
mov r9d, dword [rbp - 0x80]
mov r10d, dword [rsp + 0x78]
jmp 0x1400b37df
lea eax, [r11 - 1]
movsxd r8, eax
mov qword [rbp - 0x70], r8
cmp r8, 0xffffffffffffffff
jle 0x1400b37da
mov rax, qword [rbp + 0x80]
mov r12, qword [rax + r8*8]
mov rdx, r14
movzx eax, word [r12]
test ax, ax
je 0x1400b328e
mov rcx, r14
movzx edi, word [0x140169b20]
cmp ax, di
jne 0x1400b327d
mov rax, qword [rbp + 0x90]
mov rax, qword [rax + r8*8]
cmp word [rcx + rax], 0
jne 0x1400b3771
inc rdx
lea rcx, [rdx + rdx]
movzx eax, word [rcx + r12]
test ax, ax
jne 0x1400b3262
mov edx, 0xa
mov rcx, r12
call fcn.140109434
test rax, rax
je 0x1400b353e
mov edx, 3
mov rcx, r12
call fcn.140109434
test rax, rax
jne 0x1400b3796
mov rdx, r12
lea rcx, [rbp - 0x68]
call fcn.14001b090
mov r8, rax
mov qword [rbp - 0x78], rax
test rax, rax
je 0x1400b3796
or r12d, 0xffffffff
mov dword [rsp + 0x58], r12d
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, r8
repne scasw ax, word [rdi]
not rcx
dec rcx
mov r15, rcx
mov qword [rsp + 0x70], rcx
mov rsi, r14
mov rbx, r14
mov qword [rsp + 0x68], r14
cmp word [r8], ax
je 0x1400b3518
or rcx, 0xffffffffffffffff
lea rdi, [0x140169a5c]
repne scasw ax, word [rdi]
not rcx
lea r13, [rcx - 1]
lea eax, [rcx - 2]
mov dword [rsp + 0x5c], eax
test eax, eax
je 0x1400b34ab
cmp r15, 0x1388
jb 0x1400b34ab
mov edi, r14d
mov r12, r8
nop word [rax + rax]
lea rdx, [0x14012fa74]
mov rcx, r12
call fcn.140109454
mov r15, rax
test rax, rax
je 0x1400b3424
inc edi
mov dword [rsp + 0x60], edi
mov r8d, dword [rsp + 0x58]
dec r8d
mov dword [rsp + 0x58], r8d
mov rdi, rax
sub rdi, r12
sar rdi, 1
lea rcx, [rdi + r13]
add rcx, rbx
cmp rcx, qword [rsp + 0x68]
jb 0x1400b33dc
sub rax, qword [rbp - 0x78]
sar rax, 1
movsxd rdx, eax
movsxd rax, ecx
movsxd r9, dword [rsp + 0x70]
movsxd rcx, dword [rsp + 0x5c]
mov qword [rsp + 0x28], rdx
mov qword [rsp + 0x20], rax
mov edx, dword [rsp + 0x60]
call fcn.1400e6de0
mov qword [rsp + 0x68], rax
lea rdx, [rax + rax]
mov rcx, rsi
call fcn.1401099a4
test rax, rax
je 0x1400b3460
mov rsi, rax
test rdi, rdi
je 0x1400b33f4
lea rcx, [rsi + rbx*2]
lea r8, [rdi + rdi]
mov rdx, r12
call fcn.140109100
add rbx, rdi
test r13, r13
je 0x1400b3411
lea rcx, [rsi + rbx*2]
lea r8, [r13 + r13]
lea rdx, [0x140169a5c]
call fcn.140109100
add rbx, r13
lea r12, [r15 + 2]
cmp dword [rsp + 0x58], 0
mov edi, dword [rsp + 0x60]
jne 0x1400b3350
test edi, edi
je 0x1400b3518
mov rax, r12
mov r15, qword [rbp - 0x78]
sub rax, r15
sar rax, 1
mov rdi, qword [rsp + 0x70]
sub rdi, rax
je 0x1400b348c
lea r13, [rdi + rbx]
cmp r13, qword [rsp + 0x68]
jb 0x1400b3479
lea rdx, [r13 + r13 + 2]
mov rcx, rsi
call fcn.1401099a4
test rax, rax
jne 0x1400b3476
test rsi, rsi
je 0x1400b3518
mov rcx, rsi
call fcn.140108f48
jmp 0x1400b3518
mov rsi, rax
lea rcx, [rsi + rbx*2]
lea r8, [rdi + rdi]
mov rdx, r12
call fcn.140109100
mov rbx, r13
mov word [rsi + rbx*2], r14w
lea r8, [rbx + rbx + 2]
mov rdx, rsi
mov rcx, r15
call fcn.140109100
mov rcx, rsi
call fcn.140108f48
jmp 0x1400b3518
mov rbx, r8
mov r14, rbx
lea rdx, [0x14012fa74]
mov rcx, rbx
call fcn.140109454
mov rdi, rax
test rax, rax
je 0x1400b3515
lea rsi, [r13 + r13]
lea rbx, [rax + rsi]
cmp dword [rsp + 0x5c], 0
je 0x1400b34f6
mov rcx, rax
sub rcx, r14
sar rcx, 1
mov r8, r15
sub r8, rcx
add r8, r8
lea rdx, [rax + 2]
mov rcx, rbx
call fcn.140109100
mov r8, rsi
lea rdx, [0x140169a5c]
mov rcx, rdi
call fcn.140109100
movsxd rdx, dword [rsp + 0x5c]
add r15, rdx
dec r12d
jne 0x1400b34b1
xor r14d, r14d
mov r9d, 1
xor r8d, r8d
mov rdx, qword [rbp - 0x78]
lea rcx, [rsp + 0x40]
call fcn.14001b600
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
jmp 0x1400b364f
test rbx, rbx
jne 0x1400b355f
mov rdx, r12
lea rcx, [rsp + 0x40]
call fcn.14001b090
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
jmp 0x1400b364f
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea r13, [rcx - 1]
or rcx, 0xffffffffffffffff
mov rdi, r12
repne scasw ax, word [rdi]
not rcx
lea r15, [rcx - 1]
lea rdi, [rcx + r13 - 1]
lea rax, [rdi + rdi + 2]
cmp rsi, rax
jae 0x1400b361d
shr rax, 1
lea rax, [rax + rax + 4]
mov qword [rsp + 0x70], rax
lea rdx, [rax + rax]
xor ecx, ecx
call fcn.1401099a4
mov rdi, rax
test rax, rax
je 0x1400b364f
mov r8, r13
mov rdx, rbx
mov rcx, rax
call fcn.14010a074
test rax, rax
je 0x1400b3613
lea rcx, [rdi + r13*2]
mov r8, r15
mov rdx, r12
call fcn.14010a074
test rax, rax
je 0x1400b3613
lea rax, [r15 + r13]
mov word [rdi + rax*2], r14w
mov r8, rsi
xor edx, edx
mov rcx, rbx
call fcn.14010ec60
mov rcx, rbx
call fcn.140108f48
mov rbx, rdi
mov qword [rsp + 0x48], rbx
mov rsi, qword [rsp + 0x70]
mov qword [rsp + 0x40], rsi
jmp 0x1400b364f
mov rcx, rdi
call fcn.140108f48
jmp 0x1400b3631
lea rcx, [rbx + r13*2]
mov r8, r15
mov rdx, r12
call fcn.14010a074
test rax, rax
jne 0x1400b364a
mov rcx, rbx
call fcn.140108f48
mov qword [rsp + 0x48], r14
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x50], r14d
jmp 0x1400b3654
mov word [rbx + rdi*2], r14w
test rbx, rbx
jne 0x1400b3674
lea rdx, [0x14012fa74]
lea rcx, [rsp + 0x40]
call fcn.14001b090
mov rbx, qword [rsp + 0x48]
mov rsi, qword [rsp + 0x40]
jmp 0x1400b375b
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
lea rdi, [rcx - 1]
lea rax, [rcx + rcx + 2]
cmp rsi, rax
jae 0x1400b371a
shr rax, 1
lea r13, [rax + rax + 4]
lea rdx, [r13 + r13]
xor ecx, ecx
call fcn.1401099a4
mov r12, rax
test rax, rax
je 0x1400b375b
mov r8, rdi
mov rdx, rbx
mov rcx, rax
call fcn.14010a074
test rax, rax
je 0x1400b3710
lea rcx, [r12 + rdi*2]
mov r8d, 1
lea rdx, [0x14012fa74]
call fcn.14010a074
test rax, rax
je 0x1400b3710
mov word [r12 + rdi*2 + 2], r14w
mov r8, rsi
xor edx, edx
mov rcx, rbx
call fcn.14010ec60
mov rcx, rbx
call fcn.140108f48
mov rbx, r12
mov qword [rsp + 0x48], rbx
mov rsi, r13
mov qword [rsp + 0x40], r13
jmp 0x1400b375b
mov rcx, r12
call fcn.140108f48
jmp 0x1400b3736
lea rcx, [rbx + rcx*2 - 2]
mov r8d, 1
lea rdx, [0x14012fa74]
call fcn.14010a074
test rax, rax
jne 0x1400b3755
mov rcx, rbx
call fcn.140108f48
mov rbx, r14
mov qword [rsp + 0x48], rbx
mov rsi, r14
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x50], r14d
jmp 0x1400b375b
mov word [rbx + rdi*2 + 2], r14w
mov r8, qword [rbp - 0x70]
dec r8
mov qword [rbp - 0x70], r8
cmp r8, 0xffffffffffffffff
jle 0x1400b37bb
jmp 0x1400b3240
mov rdi, qword [rbp - 0x60]
test rdi, rdi
je 0x1400b3791
mov r8, qword [rbp - 0x68]
xor edx, edx
mov rcx, rdi
call fcn.14010ec60
mov rcx, rdi
call fcn.140108f48
nop
jmp 0x1400b3ceb
mov rdi, qword [rbp - 0x60]
test rdi, rdi
je 0x1400b37b6
mov r8, qword [rbp - 0x68]
xor edx, edx
mov rcx, rdi
call fcn.14010ec60
mov rcx, rdi
call fcn.140108f48
nop
jmp 0x1400b3ceb
mov r15, qword [rbp - 0x60]
mov rdx, qword [rbp - 0x68]
mov qword [rsp + 0x60], rdx
mov r9d, dword [rbp - 0x80]
mov r10d, dword [rsp + 0x78]
mov r11d, dword [rbp + 0x88]
jmp 0x1400b37df
mov rdx, qword [rsp + 0x60]
test rbx, rbx
je 0x1400b381f
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdi, rbx
repne scasw ax, word [rdi]
not rcx
dec rcx
cmp rcx, 0xccd
jb 0x1400b381f
test r15, r15
je 0x1400b381a
mov r8, rdx
xor edx, edx
mov rcx, r15
call fcn.14010ec60
mov rcx, r15
call fcn.140108f48
nop
jmp 0x1400b3cf0
mov eax, dword [0x140173ee0]
mov ecx, 0xfff
cmp eax, 2
jne 0x1400b384a
movzx eax, r9w
shl ax, 2
or ax, r9w
add ax, ax
xor ax, word [rbp + 0x78]
and ax, cx
mov r12b, pe_nt_image_headers64
jmp 0x1400b3881
cmp eax, 1
movzx eax, r9w
jne 0x1400b386b
shl ax, 2
or ax, r9w
shl ax, 2
xor ax, word [rbp + 0x78]
and ax, cx
mov r12b, 0x40
jmp 0x1400b3881
shl ax, 2
or ax, r9w
shl ax, 3
xor ax, word [rbp + 0x78]
and ax, cx
xor r12b, r12b
mov edx, dword [0x140176044]
test dl, 1
jne 0x1400b38a8
or edx, 1
mov dword [0x140176044], edx
mov rdx, qword [0x140173ee8]
shr rdx, 1
mov qword [0x140176048], rdx
jmp 0x1400b38af
mov rdx, qword [0x140176048]
mov qword [rsp + 0x70], rdx
mov rdi, qword [0x140173ef0]
mov qword [rsp + 0x68], rdi
movzx eax, ax
sub ecx, eax
lea r9d, [r10 + 0x20]
mov dword [rsp + 0x30], ecx
mov dword [rsp + 0x28], r11d
lea rax, [0x140150110]
mov qword [rsp + 0x20], rax
lea r8, str._c_s_01x_03x
mov rcx, rdi
call fcn.1400e6100
mov dword [rbp + 8], r14d
mov qword [rbp], r14
mov qword [rbp - 8], r14
mov dword [rbp - 0x10], r14d
mov qword [rbp - 0x18], r14
mov qword [rbp - 0x20], r14
mov dword [rbp - 0x40], r14d
mov qword [rbp - 0x48], r14
mov qword [rbp - 0x50], r14
mov dword [rbp - 0x28], r14d
mov r13, r14
mov qword [rbp - 0x30], r14
mov rdi, r14
mov qword [rbp - 0x38], r14
lea rcx, [0x14014fa48]
call fcn.1400dd2e0
mov qword [rsp + 0x78], r14
mov r9, rax
mov r8, qword [rsp + 0x68]
lea rdx, [rsp + 0x78]
lea rcx, [rbp - 0x50]
call fcn.1400a8430
test al, al
je 0x1400b3c4d
cmp dword [reloc.OLEAUT32.dll_SysStringLen], 0x3f
jge 0x1400b3c4d
mov rdx, qword [rsp + 0x78]
inc rdx
lea rcx, [rbp - 0x38]
call fcn.14001ad10
mov r13, qword [rbp - 0x30]
test r13, r13
je 0x1400b3c49
movzx eax, byte [reloc.OLEAUT32.dll_SysStringLen]
and al, 0x3f
or al, r12b
mov byte [r13], al
mov rcx, r14
mov r12, qword [rbp - 0x48]
mov rdx, qword [rsp + 0x78]
test rdx, rdx
je 0x1400b39b1
nop
movzx eax, byte [r12 + rcx]
xor byte [r13], al
inc rcx
cmp rcx, rdx
jb 0x1400b39a0
test r12, r12
je 0x1400b3c43
test rdx, rdx
je 0x1400b3c43
mov rdi, qword [rbp - 0x38]
lea rax, [rdx + 1]
cmp rdi, rax
jb 0x1400b3c51
lea rcx, [r13 + 1]
mov r8, rdx
mov rdx, r12
call fcn.140109100
cmp r12, r13
je 0x1400b3a21
mov r8, qword [rbp - 0x50]
xor edx, edx
mov rcx, r12
call fcn.14010ec60
mov rcx, r12
call fcn.140108f48
mov r12, r13
mov qword [rbp - 0x48], r13
mov qword [rbp - 0x50], rdi
mov eax, dword [rbp - 0x28]
mov dword [rbp - 0x40], eax
mov r13, r14
mov qword [rbp - 0x30], r14
mov rdi, r14
mov qword [rbp - 0x38], r14
mov dword [rbp - 0x28], r14d
mov r8, qword [rbp - 0x50]
mov rdx, r12
lea rcx, [rbp - 8]
call fcn.1400ac0b0
test eax, eax
jne 0x1400b3c3d
lea rcx, [0x14014fa48]
call fcn.1400dd2e0
mov qword [rsp + 0x78], r14
mov r9, rax
mov r8, rbx
lea rdx, [rsp + 0x78]
lea rcx, [rbp - 0x50]
call fcn.1400a7ee0
mov r12, qword [rbp - 0x48]
test al, al
je 0x1400b3c3d
mov r8, qword [rsp + 0x78]
test r8, r8
je 0x1400b3a8b
mov rax, r12
mov rcx, r8
mov r11d, dword [rbp - 0x80]
nop
xor byte [rax], r11b
inc rax
dec rcx
jne 0x1400b3a80
mov rdx, r12
lea rcx, [rbp - 0x20]
call fcn.1400ac420
mov r14, qword [rbp]
test eax, eax
jne 0x1400b3c51
mov rax, qword [rbp - 0x18]
mov qword [rsp + 0x20], rax
mov r9, r14
lea r8, str._s_s
mov edx, dword [rsp + 0x70]
mov rcx, qword [rsp + 0x68]
call fcn.1400e6100
xor eax, eax
or rcx, 0xffffffffffffffff
mov rdx, qword [rsp + 0x68]
mov rdi, rdx
repne scasw ax, word [rdi]
not rcx
dec rcx
add qword [0x140174cb8], rcx
cmp rcx, 0x4001
jb 0x1400b3b85
test r13, r13
je 0x1400b3b0b
mov r8, qword [rbp - 0x38]
xor edx, edx
mov rcx, r13
call fcn.14010ec60
mov rcx, r13
call fcn.140108f48
nop
test r12, r12
je 0x1400b3b27
mov r8, qword [rbp - 0x50]
xor edx, edx
mov rcx, r12
call fcn.14010ec60
mov rcx, r12
call fcn.140108f48
nop
mov rdi, qword [rbp - 0x18]
test rdi, rdi
je 0x1400b3b47
mov r8, qword [rbp - 0x20]
xor edx, edx
mov rcx, rdi
call fcn.14010ec60
mov rcx, rdi
call fcn.140108f48
nop
test r14, r14
je 0x1400b3b63
mov r8, qword [rbp - 8]
xor edx, edx
mov rcx, r14
call fcn.14010ec60
mov rcx, r14
call fcn.140108f48
nop
test r15, r15
je 0x1400b3b80
mov r8, qword [rsp + 0x60]
xor edx, edx
mov rcx, r15
call fcn.14010ec60
mov rcx, r15
call fcn.140108f48
nop
jmp 0x1400b3ceb
mov r9, rdx
mov r8d, dword [0x140174c90]
mov edx, dword [rbp + 0xa0]
mov ecx, dword [rbp + 0x98]
call fcn.1400b1430
mov rdx, qword [rbp + 0x70]
mov byte [rdx], 1
test r13, r13
je 0x1400b3bc3
mov r8, qword [rbp - 0x38]
xor edx, edx
mov rcx, r13
call fcn.14010ec60
mov rcx, r13
call fcn.140108f48
nop
test r12, r12
je 0x1400b3bdf
mov r8, qword [rbp - 0x50]
xor edx, edx
mov rcx, r12
call fcn.14010ec60
mov rcx, r12
call fcn.140108f48
nop
mov rdi, qword [rbp - 0x18]
test rdi, rdi
je 0x1400b3bff
mov r8, qword [rbp - 0x20]
xor edx, edx
mov rcx, rdi
call fcn.14010ec60
mov rcx, rdi
call fcn.140108f48
nop
test r14, r14
je 0x1400b3c1b
mov r8, qword [rbp - 8]
xor edx, edx
mov rcx, r14
call fcn.14010ec60
mov rcx, r14
call fcn.140108f48
nop
test r15, r15
je 0x1400b3c38
mov r8, qword [rsp + 0x60]
xor edx, edx
mov rcx, r15
call fcn.14010ec60
mov rcx, r15
call fcn.140108f48
nop
jmp 0x1400b3ceb
mov r14, qword [rbp]
jmp 0x1400b3c51
mov rdi, qword [rbp - 0x38]
jmp 0x1400b3c51
mov rdi, qword [rbp - 0x38]
mov r12, qword [rbp - 0x48]
mov dword [0x140173f30], 2
test r13, r13
je 0x1400b3c76
mov r8, rdi
xor edx, edx
mov rcx, r13
call fcn.14010ec60
mov rcx, r13
call fcn.140108f48
nop
test r12, r12
je 0x1400b3c92
mov r8, qword [rbp - 0x50]
xor edx, edx
mov rcx, r12
call fcn.14010ec60
mov rcx, r12
call fcn.140108f48
nop
mov rdi, qword [rbp - 0x18]
test rdi, rdi
je 0x1400b3cb2
mov r8, qword [rbp - 0x20]
xor edx, edx
mov rcx, rdi
call fcn.14010ec60
mov rcx, rdi
call fcn.140108f48
nop
test r14, r14
je 0x1400b3cce
mov r8, qword [rbp - 8]
xor edx, edx
mov rcx, r14
call fcn.14010ec60
mov rcx, r14
call fcn.140108f48
nop
test r15, r15
je 0x1400b3ceb
mov r8, qword [rsp + 0x60]
xor edx, edx
mov rcx, r15
call fcn.14010ec60
mov rcx, r15
call fcn.140108f48
nop
test rbx, rbx
je 0x1400b3d05
mov r8, rsi
xor edx, edx
mov rcx, rbx
call fcn.14010ec60
mov rcx, rbx
call fcn.140108f48
add rsp, 0x128
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret