Function at 0x140014ef4
Capabilities:
Encode data using xor

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x18], rsi
mov qword [rax + 0x20], rdi
push rbp
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x78]
sub rsp, 0x150
mov rax, qword [0x1400399a8]
xor rax, rsp
mov qword [rbp + 0x48], rax
mov rax, qword [0x1400396a8]
xor ebx, ebx
movzx edi, word [0x1400396d0]
mov rsi, rcx
mov byte [rsp + 0x33], al
mov r13d, 0x51a0f6f3
mov eax, dword [0x14003969c]
mov dword [rsp + 0x58], eax
movsx rax, word [0x1400396f8]
mov qword [rbp - 0x78], rax
mov byte [rsp + 0x30], 0xe8
mov rax, qword [0x140039710]
mov byte [rsp + 0x33], al
mov rax, qword [0x1400396e8]
mov word [rsp + 0x3c], ax
mov al, byte [0x140039674]
mov byte [rsp + 0x34], bl
mov byte [rsp + 0x31], al
movzx eax, byte [0x1400395b4]
mov dword [rsp + 0x44], eax
mov al, byte [0x1400395b5]
movsx r12d, byte [0x1400395b6]
movsx r14d, byte [0x1400396e0]
mov byte [rsp + 0x32], al
mov eax, dword [0x1400396c8]
mov dword [rsp + 0x60], 0xf95e
mov byte [rsp + 0x31], 0x35
mov qword [rbp - 0x28], rax
mov qword [rbp - 0x58], rdx
mov edx, 0x6a
mov dword [rsp + 0x6c], edi
mov dword [rsp + 0x70], edx
mov qword [rbp - 0x70], 0xcc68
lea eax, [rdx + 0x21]
mov dword [rbp - 0x80], r12d
mov byte [rsp + 0x5c], al
lea r8d, [rdx - 0xf]
movsx eax, word [0x1400396f8]
mov dword [rsp + 0x60], eax
mov al, byte [0x14003961e]
mov byte [rsp + 0x31], 0x2d
mov byte [rsp + 0x31], al
mov rax, qword [0x1400396e8]
mov eax, 0x83edb443
mov qword [rbp - 0x48], r8
mov qword [rsp + 0x60], rax
mov dword [rsp + 0x60], 0xd8982779
mov dword [rsp + 0x60], 0xe472ebd8
mov al, byte [0x1400395b3]
movzx eax, byte [0x14003961e]
mov word [rsp + 0x48], ax
mov qword [rsp + 0x60], 0xccad
mov rax, qword [0x1400396d8]
mov eax, dword [0x1400396e4]
movsx rax, word [0x1400396bc]
mov qword [rsp + 0x60], rax
mov eax, dword [0x140dcf1a0]
mov dword [rsp + 0x40], eax
mov al, byte [0x1400396b4]
add al, 0x4a
mov byte [rsp + 0x31], al
mov eax, dword [rsp + 0x40]
add eax, 0xdaae
cmp word [0x140039698], bx
mov dword [rsp + 0x74], eax
jne 0x14001508a
mov eax, dword [rsp + 0x44]
mov eax, dword [rsp + 0x40]
mov ecx, 0x51fd
add eax, edx
mov edx, 0xded3
mov dword [rsp + 0x38], eax
movzx eax, byte [rsp + 0x31]
sub ax, cx
mov word [0x1400396b4], ax
mov eax, dword [rsp + 0x40]
add eax, 0xae
mov dword [rsp + 0x4c], eax
movzx eax, byte [rsp + 0x32]
mov ecx, dword [rsp + 0x44]
imul ecx, eax
mov eax, dword [rsp + 0x44]
and eax, ecx
mov dword [rsp + 0x44], eax
mov ecx, dword [rsp + 0x38]
mov eax, dword [rsp + 0x74]
xor ecx, eax
sub edx, ecx
mov ecx, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x38]
xor ecx, eax
sub edx, ecx
mov qword [0x140039708], 0xccee
mov dword [rbp - 0x40], edx
mov ecx, 0xcfe7
mov eax, dword [0x1400396e4]
movzx edx, ax
mov eax, dword [0x140dcf1a0]
imul edx, ecx
mov word [0x1400396c4], dx
mov edx, ebx
mov dword [rsp + 0x40], eax
mov eax, dword [0x1400396cc]
add eax, 0xdaa1
movsxd rcx, eax
mov eax, dword [rsp + 0x40]
add qword [0x140039708], rcx
add eax, 0x71
cmp word [0x1400396b8], r8w
mov r8d, 0x41
mov dword [rsp + 0x74], eax
mov eax, ebx
setbe dl
cmp word [0x1400396b8], r8w
setle al
cmp edx, eax
jne 0x14001516f
mov ecx, 0x3397
movzx eax, r12w
or ax, cx
mov word [0x1400396b4], ax
mov eax, dword [rsp + 0x40]
mov dl, 0x25
mov cl, byte [0x140039674]
add eax, 0x208c
mov dword [rsp + 0x60], eax
call fcn.14001bd04
mov dword [rsp + 0x48], eax
test al, al
jns 0x1400151df
movzx eax, byte [rsp + 0x31]
mov edx, ebx
cmp eax, dword [0x14003969c]
mov ecx, ebx
mov al, byte [rsp + 0x31]
sete dl
cmp al, 0x1e
sete cl
cmp edx, ecx
jbe 0x1400151cc
movzx r12d, word [0x1400396cc]
mov eax, 0x8882
imul r12d, eax
mov byte [rsp + 0x34], 0xff
mov dword [rbp - 0x80], r12d
jmp 0x14001520a
mov eax, dword [0x14003969c]
add eax, 0x6d603b3
mov dword [0x1400396f4], eax
jmp 0x14001520a
cmp dword [0x1400396e0], ebx
je 0x14001520a
mov al, byte [0x1400396c4]
and al, 0x24
mov byte [rsp + 0x32], al
mov eax, dword [rsp + 0x44]
movsx ecx, byte [0x140039700]
movsx edx, al
imul edx, ecx
not dl
mov byte [rsp + 0x33], dl
mov eax, dword [rsp + 0x40]
mov ecx, dword [0x1400395dc]
add eax, 0xf7
mov dword [rsp + 0x60], eax
lea eax, [rdi - 0x32]
mov dword [rsp + 0x7c], eax
call fcn.14001ba24
mov dword [0x1400395dc], eax
mov edi, 1
test eax, eax
je 0x14001524d
sub r14d, 0x40a46197
mov dword [0x1400396f4], r14d
mov r14d, dword [rsp + 0x58]
jmp 0x140015267
mov al, byte [0x14003961f]
mov r14d, 0x8c88
sub al, dil
mov dword [rsp + 0x58], r14d
mov byte [0x14003961f], al
mov ecx, dword [rsp + 0x74]
mov eax, 0xff08
xor ecx, 0xfd11
mov r15d, 4
sub eax, ecx
mov dword [rbp - 0x3c], eax
mov eax, dword [0x140dcf1a0]
mov dword [rsp + 0x40], eax
movzx eax, word [0x1400396b0]
cmp dword [0x1400396cc], eax
je 0x1400152c3
movsx eax, word [0x1400396a0]
imul r13d, eax, 0x51a0f6f3
mov qword [rbp - 0x70], r15
lea eax, [rdi + r13]
mov byte [rsp + 0x34], al
mov eax, dword [0x1400396f4]
mov word [0x1400396b4], ax
jmp 0x1400152ef
movzx ecx, byte [0x14003961e]
movzx eax, word [0x1400396d0]
sub ecx, eax
cmp ecx, 0x6c2b7794
je 0x1400152ef
mov al, byte [0x1400395b4]
add al, al
sub al, byte [0x1400396c8]
mov byte [0x1400395b4], al
mov eax, dword [rsp + 0x40]
add eax, 0xde
mov dword [rsp + 0x74], eax
movzx eax, word [0x140039700]
add word [0x1400396b8], ax
mov eax, dword [rsp + 0x40]
add eax, 0x2d87
mov dword [rsp + 0x60], eax
test r13d, r13d
je 0x14001532b
mov eax, dword [0x1400396c8]
add qword [0x140039680], rax
jmp 0x140015358
cmp dword [0x140039674], ebx
mov ecx, ebx
mov eax, dword [0x1400396e0]
mov r10d, dword [rsp + 0x48]
not eax
sete cl
xor ecx, eax
movsx eax, r10b
imul eax, dword [0x1400396cc]
sub eax, ecx
mov dword [0x1400396e4], eax
mov eax, dword [rsp + 0x40]
mov edx, 0x82
add eax, 0xb1
xor ecx, ecx
mov dword [rsp + 0x60], eax
call fcn.14001c06c
mov qword [0x1400396d8], rax
mov rax, qword [0x1400396d8]
test rax, rax
je 0x1400153c3
cmp qword [0x140039708], rbx
je 0x140015399
mov dword [str.M_fbO], r15d
jmp 0x14001546d
movzx eax, word [0x1400396bc]
test ax, ax
je 0x14001546d
movsx ecx, word [0x1400396bc]
movzx eax, r12w
inc ecx
add eax, ecx
cdqe
mov qword [rbp - 0x48], rax
jmp 0x14001546d
movzx edx, word [0x1400396c0]
mov ecx, ebx
movsx eax, word [0x1400396b8]
add edx, 0xffffff75
cmp eax, r13d
seta cl
cmp ecx, edx
mov ecx, ebx
mov edx, ebx
jl 0x140015434
movzx r9d, byte [0x1400395b5]
movzx eax, byte [rsp + 0x32]
cmp rax, qword [0x140039690]
movzx eax, byte [rsp + 0x34]
movzx r8d, byte [0x1400395b7]
sete cl
add r8d, ecx
movzx ecx, r12w
sub r8d, eax
mov eax, dword [rsp + 0x6c]
not eax
add ecx, eax
mov eax, ebx
cmove edx, r8d
cmp r9d, r14d
cmove eax, r8d
add edx, eax
mov dword [0x140039674], edx
jmp 0x14001546d
test r12w, r12w
mov rax, rbx
mov r8d, 0x6a
sete al
cmp rax, qword [0x140039700]
mov al, byte [rsp + 0x33]
sete dl
cmp al, r8b
sete cl
cmp ecx, edx
jae 0x14001546d
mov rax, qword [0x1400396d8]
neg ax
mov word [0x1400396c4], ax
mov ecx, 0x106
mov byte [rsp + 0x31], 8
mov al, byte [rsp + 0x30]
add al, dil
mov byte [rsp + 0x30], al
sub rcx, rdi
jne 0x140015472
mov ecx, dword [rsp + 0x74]
mov eax, 0x34b
xor ecx, 0x4e
sub eax, ecx
mov dword [rbp - 0x38], eax
movsx rax, word [0x1400396a0]
cmp rax, qword [rbp - 0x70]
je 0x1400154ba
mov rax, qword [0x140039710]
add rax, 0xa998
mov qword [0x1400396e8], rax
mov eax, dword [0x140dcf1a0]
mov rcx, rbx
mov dword [rsp + 0x40], eax
mov edx, ebx
movzx eax, byte [0x14003961f]
mov r9b, 0x55
mov r8d, dword [0x14003965c]
imul eax, eax, 0xfd
mov dword [rsp + 0x78], r9d
sub r8d, eax
mov rax, qword [0x1400396d8]
test r14d, r14d
mov r14d, 0x8b
sete cl
add rcx, rax
mov eax, dword [rsp + 0x44]
sete dl
add edx, dword [0x14003965c]
sub dl, al
movsx eax, r8b
movsx ecx, dl
imul ecx, eax
mov byte [0x1400395b3], cl
mov eax, dword [rsp + 0x40]
add eax, 0x3d9
cmp byte [0x1400395b4], bl
mov dword [rbp - 0x68], eax
je 0x1400155be
lea edx, [r14 + 0x12]
mov ecx, r14d
call fcn.14001c06c
mov r9d, dword [rsp + 0x78]
mov byte [rsp + 0x30], al
movzx eax, word [0x1400396c0]
mov dword [0x140e0da60], eax
mov r10d, 0x6a
mov eax, dword [rsp + 0x40]
add eax, 0x174
mov dword [rbp - 0x34], eax
movsx eax, byte [rsp + 0x33]
mov edx, dword [0x14003969c]
cmp edx, eax
je 0x14001560e
test r13d, r13d
je 0x140015590
movsx eax, word [0x1400396a4]
not eax
test eax, eax
mov eax, edi
jne 0x140015592
mov eax, ebx
imul eax, edx
test eax, eax
je 0x1400155ea
movsx eax, word [0x1400396a0]
movsx ecx, al
movzx eax, word [0x1400396bc]
imul edx, ecx, 0x3a
add ax, r13w
mov word [0x1400396bc], ax
mov dword [rsp + 0x48], edx
jmp 0x140015612
cmp byte [0x1400395b7], bl
je 0x140015557
mov al, byte [0x14003961f]
test al, al
je 0x1400155e1
mov r10b, byte [0x1400395b7]
mov dword [rsp + 0x70], r10d
jmp 0x14001555d
mov r10d, dword [str.M_fbO]
jmp 0x1400155d7
mov r9d, dword [rsp + 0x44]
mov ecx, 0xff88
movsx eax, byte [0x1400395b6]
add r9b, 0x5f
sub cx, ax
mov dword [rsp + 0x78], r9d
add word [0x1400396c4], cx
mov edx, dword [rsp + 0x48]
mov eax, dword [rsp + 0x40]
add eax, 0x386
mov dword [rsp + 0x60], eax
mov eax, dword [0x140dcf1a0]
mov dword [0x1400396e4], eax
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x40]
add eax, 0x3c
mov dword [rsp + 0x4c], eax
movzx eax, word [0x1400396d4]
cmp eax, dword [0x1400396c8]
jb 0x1400156b2
movsx eax, byte [rsp + 0x33]
movsx r8d, byte [rsp + 0x30]
mov r11d, dword [rsp + 0x6c]
imul r8d, eax
mov rax, qword [rbp - 0x78]
test rax, rax
movsx ecx, dl
movsx eax, word [0x140039698]
mov edx, ebx
cmove edx, ecx
movsx r9d, r9b
imul eax, r11d
not r8d
add r8d, edx
mov rdx, qword [0x1400396e8]
add dx, ax
movsx eax, r8w
mov r8, qword [rbp - 0x70]
not dx
movsx ecx, dx
imul ecx, eax
movsx eax, r11b
imul r9d, eax
mov word [0x1400396a0], cx
mov dword [rsp + 0x78], r9d
jmp 0x1400156d1
mov r8, qword [rbp - 0x70]
mov eax, 0xeb56
movzx ecx, r8w
mov r10b, 0xfb
imul ecx, eax
mov dword [rsp + 0x70], r10d
mov word [0x1400396c0], cx
mov eax, dword [rsp + 0x40]
add eax, 0x29f
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x40]
add eax, 0x3c8
mov dword [rsp + 0x60], eax
mov eax, 0x7ae9
mov r11d, dword [rsp + 0x44]
add r11w, ax
movsx eax, byte [0x1400395b6]
add eax, dword [0x1400396e0]
mov eax, dword [0x140dcf1a0]
sete cl
mov dword [rsp + 0x50], r11d
sub cl, r13b
add cl, byte [0x1400396c8]
mov byte [0x1400395b5], cl
mov dword [rsp + 0x40], eax
movzx eax, word [0x1400396f8]
cmp r14w, ax
jg 0x14001575e
movsx ecx, byte [0x1400395b3]
mov rdx, qword [0x1400396a8]
not ecx
movsx eax, word [0x140039698]
add ecx, 0x1e
not edx
imul edx, ecx
imul eax, edx
not eax
mov dword [0x1400396e0], eax
mov eax, dword [rsp + 0x40]
add eax, 0x33
mov dword [rsp + 0x60], eax
movsx eax, byte [rsp + 0x33]
sub eax, 0x3c62095a
cdqe
mov qword [0x1400396e8], rax
imul eax, dword [0x1400396cc], 0x342c
mov dword [0x1400396f4], eax
mov eax, dword [rsp + 0x40]
add eax, 0x1cb
mov dword [rbp - 0x64], eax
cmp qword [rbp - 0x28], rbx
je 0x1400157e9
movsx rcx, byte [rsp + 0x30]
mov rax, qword [0x1400396e8]
cmp rax, rcx
ja 0x1400157c3
mov cl, byte [rsp + 0x31]
movzx eax, byte [0x1400395dc]
mov byte [0x1400395b4], al
jmp 0x140015804
mov rax, qword [0x1400396e8]
test rax, rax
je 0x140015804
mov eax, 0x7b9
mov word [0x1400396bc], ax
mov eax, 0x39eb
mov word [0x1400396bc], ax
jmp 0x140015804
mov al, byte [rsp + 0x30]
cmp al, r9b
je 0x140015804
movzx eax, byte [rsp + 0x32]
mov rcx, qword [0x1400396e8]
add cl, al
mov byte [rsp + 0x32], cl
mov eax, dword [rsp + 0x40]
mov edx, ebx
add eax, 0x66
mov dword [rsp + 0x40], eax
movsx ecx, word [rsp + 0x3c]
movzx eax, r12w
cmp ecx, eax
movzx eax, word [rsp + 0x3c]
mov ecx, ebx
setl dl
cmp ax, 0x51
setl cl
cmp edx, ecx
jbe 0x140015868
mov dl, r10b
mov ecx, 0x90
shl dl, 5
mov dword [rsp + 0x5c], edx
mov al, byte [0x140039690]
sub byte [0x14003961e], al
mov rax, qword [rbp - 0x78]
test rax, rax
mov rax, qword [0x1400396e8]
mov word [0x1400396f8], ax
sub rcx, rdi
jne 0x140015840
jmp 0x14001586c
mov edx, dword [rsp + 0x5c]
mov eax, dword [0x140dcf1a0]
mov ecx, 0x128
add r13d, ecx
mov dword [rsp + 0x38], eax
mov rax, qword [0x140039688]
sub ecx, edi
mov dword [0x14003965c], eax
test ecx, ecx
jg 0x14001587e
mov eax, dword [rsp + 0x38]
mov r14d, r8d
add eax, 0x129
mov byte [0x1400395b7], dil
mov dword [rsp + 0x60], eax
xor r14d, 0xb99b1e73
mov eax, dword [0x140dcf1a0]
mov dword [0x140039674], eax
movsx eax, r9b
mov dword [rbp - 0x50], eax
movzx eax, word [0x1400396f8]
movsx ecx, r9b
add cx, ax
mov dword [rsp + 0x54], r14d
mov word [0x1400396f8], cx
mov eax, dword [rsp + 0x38]
add eax, 0x29
mov dword [rsp + 0x60], eax
test r12w, r12w
je 0x140015956
mov edx, dword [0x14003969c]
xor ecx, ecx
call fcn.14001c06c
mov r10d, dword [rsp + 0x48]
mov r11d, dword [rsp + 0x50]
mov byte [0x14003961f], al
mov al, byte [0x14003961f]
test al, al
je 0x140015932
movsx r12d, byte [rsp + 0x30]
movzx eax, r10b
imul r9d, eax, 0x4d
mov eax, 0xa939
xor r12w, ax
mov dword [rsp + 0x7c], r9d
jmp 0x140015950
mov eax, dword [rsp + 0x7c]
mov ecx, 0x9680
movzx edx, al
mov r14d, 0xd9
imul edx, ecx
mov dword [rsp + 0x54], r14d
add r12w, dx
mov dword [rbp - 0x80], r12d
jmp 0x140015996
movzx eax, word [rsp + 0x3c]
test ax, ax
jne 0x140015966
cmp dword [rsp + 0x58], ebx
je 0x140015991
movzx ecx, dl
movsx eax, r11w
imul eax, ecx
mov ecx, ebx
cmp qword [0x140039690], rbx
sete cl
cdqe
mov qword [rbp - 0x78], rax
mov eax, dword [rsp + 0x7c]
movzx eax, al
add ecx, eax
mov dword [0x1400396e0], ecx
mov r10d, dword [rsp + 0x48]
mov eax, dword [rsp + 0x38]
mov r8d, 0x126
mov r9d, dword [rsp + 0x5c]
add eax, 0x3dd
mov r14d, dword [rsp + 0x6c]
mov dword [rbp - 0x60], eax
mov al, byte [rsp + 0x30]
mov edx, ebx
test al, al
mov eax, ebx
sete dl
cmp dword [0x140039674], edx
setg al
cmp dword [0x140039674], eax
jg 0x140015a0b
movzx eax, word [rsp + 0x3c]
cmp r11w, ax
jg 0x140015a0b
movzx ecx, word [rsp + 0x3c]
mov edx, ebx
movzx eax, r9b
cmp cx, ax
sete dl
not edx
imul edx, r13d
test edx, edx
je 0x140015a21
lea eax, [r14 - 0x36]
mov byte [rsp + 0x7c], al
movsx rax, r10b
mov qword [0x140f54a50], rax
jmp 0x140015a21
movzx eax, byte [0x1400395b7]
mov ecx, dword [0x1400396e4]
imul ecx, eax
mov dword [0x1400396e4], ecx
mov rax, qword [rbp - 0x78]
sub r8d, edi
add rax, rdi
mov qword [rbp - 0x78], rax
test r8d, r8d
jg 0x1400159b2
mov eax, dword [0x140dcf1a0]
mov cl, r12b
mov dword [rsp + 0x38], eax
mov dl, byte [rsp + 0x33]
call fcn.14001bd04
mov r14d, dword [rsp + 0x54]
movsx ecx, al
mov word [0x1400396f8], cx
movzx eax, word [0x1400396f8]
test ax, ax
js 0x140015aa2
cmp byte [rsp + 0x78], bl
je 0x140015a8d
movzx eax, byte [rsp + 0x34]
mov r13d, 0xba192e9d
movsx ecx, byte [0x1400395f3]
add cx, ax
mov word [0x1400396a0], cx
jmp 0x140015acb
mov al, byte [rsp + 0x32]
mov eax, dword [rsp + 0x50]
cwde
not eax
test eax, eax
je 0x140015acb
mov al, byte [rsp + 0x32]
jmp 0x140015acb
mov al, byte [0x1400395b3]
test al, al
jne 0x140015acb
mov eax, dword [rsp + 0x44]
mov ecx, ebx
cmp eax, r14d
sete cl
cmp ecx, dword [0x14003965c]
je 0x140015acb
mov qword [0x1400396e8], 0x7f6213af
mov eax, dword [rsp + 0x38]
mov edx, ebx
mov r8d, dword [rsp + 0x70]
add eax, 0x17e
mov dword [rsp + 0x60], eax
movsxd rcx, dword [0x1400396e4]
mov rax, qword [0x140039710]
cmp rax, rcx
movsx r8d, r8b
movzx eax, byte [rsp + 0x32]
mov ecx, ebx
setg dl
mov dword [rsp + 0x70], r8d
cmp eax, r8d
setg cl
add ecx, edx
je 0x140015b1d
movzx eax, byte [rsp + 0x34]
mov r13d, 0x9d9c
sub r13d, eax
jmp 0x140015b94
cmp word [0x1400396a4], bx
je 0x140015b3e
movzx eax, word [0x1400395dc]
mov ecx, 0x1135
sub ax, cx
mov word [0x1400396f8], ax
jmp 0x140015b94
movzx eax, word [rsp + 0x3c]
test ax, ax
je 0x140015b74
movsx eax, byte [0x1400395f3]
movzx ecx, word [0x1400396f0]
and ecx, eax
mov al, byte [0x1400395b7]
add al, al
mov dword [0x14003965c], ecx
add al, byte [0x140039680]
mov byte [0x1400395b7], al
jmp 0x140015b94
test r12w, r12w
je 0x140015b94
movsx eax, byte [rsp + 0x33]
add eax, 0xf30e
mov dword [rsp + 0x6c], eax
mov al, byte [0x1400395b3]
add al, 0x42
mov byte [rsp + 0x48], al
mov eax, dword [rsp + 0x38]
add eax, 0x302
mov dword [rsp + 0x68], eax
mov al, byte [rsp + 0x31]
movzx eax, byte [rsp + 0x32]
cmp eax, 0xfde5
sbb rax, rax
and rax, qword [rbp - 0x48]
cmp rax, rdi
je 0x140015bdd
mov al, byte [rsp + 0x30]
mov edx, ebx
test al, al
movsx eax, word [0x1400396bc]
sete dl
sub edx, 0x76bbf147
or edx, eax
mov dword [str.M_fbO], edx
jmp 0x140015be8
mov qword [0x140039708], 0x4642
mov eax, dword [rsp + 0x38]
mov r9d, 0x163
mov r12d, dword [rsp + 0x58]
add eax, 0xc6
mov dword [rsp + 0x60], eax
movzx eax, word [0x1400396f8]
mov edx, ebx
add ax, di
mov ecx, ebx
mov word [0x1400396f8], ax
mov al, byte [rsp + 0x31]
movzx r8d, byte [rsp + 0x31]
movsx ecx, byte [rsp + 0x33]
xor r8d, ebx
movzx eax, byte [0x14003961e]
not ecx
add ecx, r12d
sete dl
add qword [0x140039680], rdi
imul r14d, eax, 0xf9
sub edx, r8d
sub r14d, dword [0x1400396e0]
add r14d, edx
sub r9, rdi
jne 0x140015c00
mov eax, dword [0x140dcf1a0]
mov edx, 0xd8
mov r12d, dword [rsp + 0x7c]
mov dword [rsp + 0x38], eax
mov byte [rsp + 0x30], 0x31
mov eax, dword [rsp + 0x38]
lea r8d, [rdx + 0x1f]
add eax, 0x285
mov dword [rsp + 0x60], eax
mov eax, dword [rsp + 0x38]
mov ecx, dword [0x1400396e0]
add eax, 0x341
mov dword [rbp - 0x28], eax
movzx eax, r12b
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rbx
call fcn.14001bba8
mov byte [rsp + 0x34], al
mov al, byte [rsp + 0x34]
test al, al
je 0x140015d69
xor edx, edx
mov qword [rsp + 0x28], rbx
xor r9d, r9d
mov qword [rsp + 0x20], rbx
xor r8d, r8d
lea ecx, [rdx + 0x64]
call fcn.14001bba8
mov byte [rsp + 0x33], al
mov edx, ebx
mov al, byte [rsp + 0x33]
mov ecx, ebx
cmp al, 0x56
mov al, byte [rsp + 0x33]
setl dl
test al, al
sets cl
cmp ecx, edx
jbe 0x140015dc4
movsx ecx, word [0x1400396bc]
movzx eax, byte [rsp + 0x31]
mov r9d, dword [rsp + 0x54]
mov r10d, dword [rsp + 0x48]
cmp eax, ecx
jl 0x140015dce
movsx eax, word [0x140039698]
mov edx, ebx
movzx r8d, word [0x1400396d0]
sub eax, 0x6e4
add r8d, r9d
xor r8d, eax
movzx eax, byte [rsp + 0x32]
not eax
add eax, dword [0x1400396c8]
movsx eax, r10b
sete dl
sub edx, eax
movsx eax, byte [rsp + 0x30]
not eax
add eax, edx
imul eax, r8d
cdqe
mov qword [0x140039708], rax
movzx eax, byte [rsp + 0x34]
add eax, 0x4818e37c
mov dword [0x14003969c], eax
jmp 0x140015dce
movabs rax, 0x7dfc89bdb19ce
mov rcx, rbx
cmp qword [0x140039680], rax
mov rax, qword [0x140039688]
setne cl
cmp rax, rcx
jge 0x140015db4
movzx eax, word [0x1400396d4]
movzx ecx, r12b
imul eax, ecx
mov word [0x1400396d4], ax
movabs rax, 0xca56403deda24
mov qword [0x140039690], rax
jmp 0x140015dc4
cmp dword [rsp + 0x58], ebx
je 0x140015dc4
mov dword [0x1400396e4], 0x81149873
mov r10d, dword [rsp + 0x48]
mov r9d, dword [rsp + 0x54]
mov eax, dword [rsp + 0x38]
add eax, 0x311
mov dword [rbp - 0x30], eax
mov eax, dword [0x140dcf1a0]
mov dword [rsp + 0x38], eax
movzx eax, word [0x1400396f8]
test ax, ax
je 0x140015ee7
mov al, byte [rsp + 0x34]
test al, al
je 0x140015e95
movzx eax, word [0x1400396c0]
neg eax
mov dword [rsp + 0x58], eax
mov rax, qword [0x140039690]
lea rcx, [rax + rax]
movsx rax, word [0x1400396b8]
sub rcx, rax
mov qword [0x140039690], rcx
mov edx, dword [rsp + 0x50]
mov eax, dword [rsp + 0x38]
movsx rcx, word [0x1400396a4]
add eax, 0x3b0
mov dword [rsp + 0x74], eax
mov rax, qword [0x1400396a8]
cmp rax, rcx
jg 0x140015f2a
movzx ecx, byte [rsp + 0x34]
mov edx, ebx
mov rax, qword [0x1400396d8]
cmp rcx, rax
mov al, byte [rsp + 0x34]
mov ecx, ebx
setle dl
cmp al, 0x1b
setbe cl
cmp edx, ecx
je 0x140015f0f
movzx eax, word [0x1400396a4]
mov ecx, 0x3d5f
and ax, cx
mov word [0x1400396b0], ax
jmp 0x140015fc0
movsx ecx, word [rsp + 0x3c]
mov r8, qword [0x1400396e8]
and r8d, 0x6198
movsx eax, r10b
sub eax, ecx
movsxd rcx, eax
xor r8, rcx
movsx ecx, byte [rsp + 0x30]
movzx eax, word [0x1400396f0]
inc eax
add ecx, eax
mov eax, ebx
movsxd rdx, ecx
sub rdx, qword [rbp - 0x70]
movsx rcx, byte [rsp + 0x30]
add rcx, rdx
test r8, rcx
sete al
mov dword [0x1400396c8], eax
jmp 0x140015e2a
mov eax, dword [str.M_fbO]
cmp r9d, eax
je 0x140015e2a
mov edx, dword [rsp + 0x50]
mov ecx, 0x1bb2
movzx eax, dx
sub ax, cx
mov word [rsp + 0x3c], ax
jmp 0x140015e2e
cmp byte [0x1400395b7], bl
mov r14d, 2
je 0x140015fc6
mov eax, dword [rsp + 0x44]
jmp 0x140015fc6
movsx ecx, byte [rsp + 0x30]
movzx eax, byte [0x1400395b4]
cmp ecx, eax
je 0x140015f48
mov eax, 0xdb27
mov word [0x1400396d4], ax
jmp 0x140015fc0
mov eax, dword [str.M_fbO]
test eax, eax
je 0x140015f9a
mov cl, byte [rsp + 0x30]
xor r14b, dl
movzx eax, word [0x1400396f8]
not cl
mov dl, byte [0x140039680]
sub cl, al
sub dl, r14b
movzx ecx, cl
mov r14d, 2
add dl, r14b
not dl
movzx eax, dl
imul ecx, eax
mov al, byte [0x1400396cc]
not al
movzx eax, al
movzx ecx, cl
imul eax, ecx
not al
mov dword [rsp + 0x5c], eax
jmp 0x140015fc6
cmp byte [rsp + 0x78], bl
je 0x140015fc0
mov al, byte [0x140039700]
mov ecx, 0x52e8
sub al, 0x4f
mov byte [rsp + 0x48], al
movsx eax, byte [0x1400395b6]
sub ax, cx
mov word [rsp + 0x3c], ax
mov r14d, 2
mov eax, dword [rsp + 0x38]
mov ecx, 0x19
add eax, 0x5d
mov dword [rsp + 0x74], eax
mov eax, dword [rsp + 0x38]
add eax, 0xe7
mov dword [rsp + 0x38], eax
call fcn.14001ba24
mov r12d, dword [rbp - 0x80]
mov cl, 0xe9
mov word [0x140039698], ax
movzx eax, word [0x1400396f8]
mov al, byte [rsp + 0x33]
mov eax, dword [rsp + 0x44]
mov al, byte [rsi]
cmp al, cl
jne 0x14001612a
movsx r8d, byte [rsp + 0x30]
mov ecx, ebx
movzx edx, byte [rsp + 0x32]
movzx eax, word [0x1400396d4]
mov r10d, dword [rsp + 0x48]
sub r8d, eax
movzx eax, byte [rsp + 0x31]
cmp r8d, edx
movzx r8d, byte [rsp + 0x5c]
cmove cx, ax
movsx eax, word [0x14003969c]
movsx edx, cx
add r12b, 0x6e
imul edx, eax
mov eax, 0xbc
cwde
movsx ecx, dx
imul ecx, eax
movsx eax, r10b
sub word [0x1400396b0], ax
mov eax, dword [0x140dcf1a0]
mov word [0x1400396a0], cx
mov byte [rsp + 0x31], r12b
mov dword [rsp + 0x38], eax
mov al, byte [rsp + 0x31]
sub al, byte [0x14003965c]
mov byte [0x1400395b3], al
mov eax, dword [rsp + 0x38]
add eax, 0x9c
mov dword [rsp + 0x40], eax
mov eax, dword [rsp + 0x38]
add eax, 0x21
mov dword [rsp + 0x60], eax
movsx eax, byte [0x1400395b3]
cmp eax, r8d
jle 0x1400160d5
movsx ecx, word [0x1400396b8]
mov edx, ebx
cmp ecx, r8d
setge dl
cmp ecx, 0x4c
setge bl
cmp edx, ebx
jne 0x1400160d5
movzx eax, byte [0x1410581aa]
or word [0x1400396b4], ax
mov eax, dword [rsp + 0x38]
add eax, 0x174
mov dword [rsp + 0x38], eax
mov edx, dword [rsp + 0x38]
mov eax, dword [rbp - 0x40]
add edx, eax
mov r8d, dword [rsp + 0x40]
add r8d, 0x21
and r8d, edx
mov edx, dword [rsp + 0x38]
mov ecx, dword [rsp + 0x40]
xor edx, ecx
cmp r8d, edx
je 0x140017295
mov cl, byte [rsp + 0x30]
mov ecx, dword [0x1400396e4]
mov rcx, qword [0x140039710]
mov rcx, qword [rbp - 0x58]
mov qword [rcx], rdi
mov eax, r14d
jmp 0x140017297
cmp al, 0x90
jne 0x14001616f
cmp byte [rsi + 1], cl
jne 0x140016361
movzx eax, word [rsp + 0x3c]
mov rcx, qword [rbp - 0x58]
not al
xor al, byte [0x1400396cc]
mov byte [rsp + 0x30], al
mov eax, dword [str.M_fbO]
sub eax, edi
mov dword [str.M_fbO], eax
mov al, byte [rsp + 0x34]
test al, al
sete bl
mov qword [0x140039710], rbx
mov qword [rcx], r14
jmp 0x140016122
mov r8d, 0x8b
cmp al, r8b
jne 0x140016367
cmp byte [rsi + 1], 0xff
jne 0x140016367
cmp byte [rsi + 2], cl
jne 0x140016367
mov eax, dword [0x140dcf1a0]
lea rcx, [rbp - 0x20]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x38]
movups xmm0, xmmword [str.AADTBAcquireToken]
add eax, 0x210
mov dword [rsp + 0x40], eax
movzx eax, word [0x14002a700]
mov word [rbp - 0x10], ax
movups xmmword [rbp - 0x20], xmm0
call qword [sym.imp.KERNEL32.dll_lstrlenA]
mov word [0x1400396a0], ax
mov edx, ebx
mov eax, dword [rsp + 0x38]
add eax, 0x394
mov dword [rsp + 0x60], eax
mov al, byte [rsp + 0x33]
cmp byte [0x1400395b6], al
mov eax, ebx
setl dl
cmp byte [0x1400395b6], 0x36
setl al
cmp edx, eax
jne 0x140016213
mov r9d, dword [rsp + 0x50]
cmp r9w, 0x27
jge 0x14001626a
mov eax, 0xffffbf6f
mov word [0x1400396a0], ax
mov edx, dword [rsp + 0x58]
mov ecx, dword [rsp + 0x38]
mov eax, dword [rbp - 0x3c]
add ecx, eax
mov dword [rsp + 0x60], ecx
mov eax, dword [rsp + 0x40]
mov ecx, dword [rbp - 0x38]
sub ecx, eax
mov eax, dword [rsp + 0x40]
cmp ecx, eax
je 0x140017295
movzx ecx, word [0x1400396c0]
mov rax, qword [0x1400396d8]
cmp rax, rcx
je 0x1400162a0
movsx rcx, byte [0x1400395b3]
mov rax, qword [rbp - 0x78]
sub rcx, rax
mov cl, byte [rsp + 0x30]
sete al
sub cl, al
mov byte [rsp + 0x32], cl
jmp 0x1400162cb
movzx eax, word [0x1400396bc]
test ax, ax
je 0x140016213
movzx ecx, byte [rsp + 0x31]
movzx eax, byte [rsp + 0x31]
sub rcx, rax
mov rax, qword [0x140039688]
add al, cl
mov byte [rsp + 0x31], al
movzx edx, byte [rsp + 0x32]
sub edx, 0xbfef
jmp 0x140016217
movsx ecx, word [0x1400396f8]
and ecx, dword [rsp + 0x6c]
cmp dword [0x1400396e0], ecx
je 0x1400162cb
shl r13b, 7
mov byte [rsp + 0x31], r13b
mov eax, dword [rsp + 0x44]
add eax, 0x5a40
mov dword [str.M_fbO], eax
movzx ecx, word [0x140039698]
movzx eax, byte [rsp + 0x5c]
xor cx, ax
mov dword [0x14003965c], r15d
movsx eax, cx
add eax, 0xcc1e
mov word [0x140039698], cx
dec r15d
mov dword [0x1400396e4], eax
sub r15d, edi
je 0x140016341
sub r15d, edi
je 0x14001631d
cmp r15d, edi
jne 0x140017284
mov eax, dword [0x1400396c8]
mov dword [0x14003969c], eax
jmp 0x140017284
movsxd rax, dword [rsp + 0x54]
movabs rcx, 0x4cb3680569167
add rax, rcx
mov qword [0x140039710], rax
mov eax, dword [str.M_fbO]
jmp 0x140017284
movsx ecx, byte [rsp + 0x30]
mov eax, dword [rsp + 0x70]
add eax, ecx
mov cl, byte [rsp + 0x30]
or cl, al
add byte [0x1400395b4], dl
mov byte [rsp + 0x30], cl
jmp 0x140017284
mov r8d, 0x8b
mov ecx, dword [rbp - 0x68]
mov eax, dword [rbp - 0x68]
or ecx, eax
mov eax, dword [rbp - 0x34]
cmp ecx, eax
je 0x140017295
mov rax, qword [rbp - 0x78]
mov r10b, 0xc3
mov dword [0x1400395dc], 0x8da08440
cmp byte [rsi], 0x68
jne 0x1400163ef
cmp byte [rsi + 5], r10b
jne 0x1400164f6
mov eax, dword [rbp - 0x50]
mov edx, ebx
mov dword [0x140fafb38], eax
movzx eax, byte [rsp + 0x32]
cmp dword [0x14003965c], eax
setle dl
cmp dword [0x14003965c], 0x22
setle bl
cmp edx, ebx
jne 0x1400167d7
movsx ecx, word [rsp + 0x3c]
mov eax, dword [str.M_fbO]
add ax, cx
mov word [rsp + 0x3c], ax
mov eax, 0x2e6e
movsx ecx, byte [rsp + 0x30]
sub eax, ecx
add dword [0x140039674], eax
jmp 0x1400167d7
cmp byte [rsi], 0x90
jne 0x1400164f6
cmp byte [rsi + 1], 0x68
jne 0x1400164f6
cmp byte [rsi + 6], r10b
jne 0x1400164f6
mov eax, dword [rsp + 0x7c]
movzx eax, al
not eax
cmp dword [0x1400396e0], eax
ja 0x1400164b5
movsx rcx, byte [rsp + 0x30]
mov rax, qword [rbp - 0x78]
cmp rax, rcx
movzx eax, byte [rsp + 0x31]
mov ecx, ebx
sete cl
cmp ecx, eax
jbe 0x140016466
movsx rcx, word [rsp + 0x3c]
movabs rax, 0x2d7e3090a16d2
imul rcx, rax
mov rax, qword [rbp - 0x70]
xor eax, 0x32
mov qword [0x140039690], rcx
mov dword [0x14003965c], eax
jmp 0x1400164b5
movzx eax, byte [rsp + 0x31]
mov ecx, ebx
movsx edx, word [0x1400396b4]
or edx, eax
mov rax, qword [rbp - 0x78]
cmp rax, 0x2db0733b
setge cl
cmp edx, ecx
jne 0x14001649f
movzx eax, byte [rsp + 0x34]
cmp byte [rsp + 0x5c], bl
jne 0x140016496
mov rax, qword [rbp - 0x48]
mov word [0x1400396f8], ax
jmp 0x1400164b5
cmp byte [rsp + 0x5c], bl
jne 0x1400164b5
mov al, byte [0x14003961f]
mov cl, byte [rsp + 0x32]
xor cl, al
mov byte [rsp + 0x32], cl
xor edx, edx
mov cl, 6
call fcn.14001bd04
mov byte [rsp + 0x33], al
mov al, byte [rsp + 0x33]
test al, al
je 0x1400164ec
neg r12w
mov ecx, 0xb7
mov word [0x1400396d0], r12w
mov al, byte [rsp + 0x32]
mov al, byte [rsp + 0x30]
mov al, byte [rsp + 0x32]
sub rcx, rdi
jne 0x1400164db
mov eax, 3
jmp 0x1400165c2
mov eax, dword [rsp + 0x4c]
mov ecx, 0x226
sub ecx, eax
mov eax, dword [rsp + 0x4c]
cmp ecx, eax
je 0x140017295
movsx ecx, word [0x1400396b4]
test cx, cx
je 0x140016528
mov eax, dword [0x1400396c8]
mov rdx, rdi
not eax
test eax, eax
jne 0x14001652b
mov rdx, rbx
mov eax, ecx
not eax
movsxd rcx, eax
mov rax, qword [rbp - 0x78]
imul rcx, rax
imul rcx, rdx
mov edx, dword [rsp + 0x50]
test rcx, rcx
je 0x140016556
movzx eax, word [0x1400396c0]
sub al, 0x37
mov byte [rsp + 0x78], al
jmp 0x140016573
mov al, byte [rsp + 0x31]
mov ecx, 0x5564
movzx eax, dx
sub ax, word [0x1400396c8]
sub ax, cx
mov word [0x1400396b0], ax
cmp byte [rsi], 0xff
jne 0x1400165ce
cmp byte [rsi + 1], 0x25
jne 0x140016798
cmp byte [rsi + 2], bl
jne 0x140016798
mov eax, dword [0x14002a728]
lea rcx, [rbp - 8]
movups xmm0, xmmword [str.incorrect_data_che]
mov dword [rbp + 0x18], eax
movups xmm1, xmmword [0x14002a718]
movzx eax, word [0x14002a72c]
movups xmmword [rbp - 8], xmm0
mov word [rbp + 0x1c], ax
movups xmmword [rbp + 8], xmm1
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov eax, r15d
mov rcx, qword [rbp - 0x58]
mov qword [rcx], r14
jmp 0x140017297
cmp byte [rsi], r8b
jne 0x140016798
cmp byte [rsi + 1], 0xff
jne 0x140016798
cmp byte [rsi + 2], 0xff
jne 0x140016798
cmp byte [rsi + 3], 0x25
jne 0x140016798
mov eax, dword [0x14002a750]
lea rcx, [rbp + 0x20]
movups xmm0, xmmword [str.RegisterTraceGuids]
mov dword [rbp + 0x40], eax
movups xmm1, xmmword [0x14002a740]
movzx eax, word [0x14002a754]
movups xmmword [rbp + 0x20], xmm0
mov word [rbp + 0x44], ax
movups xmmword [rbp + 0x30], xmm1
call qword [sym.imp.KERNEL32.dll_lstrlenW]
mov ecx, dword [rsp + 0x44]
mov esi, eax
test ecx, ecx
je 0x140016654
mov ecx, dword [rsp + 0x44]
test ecx, ecx
je 0x14001666a
mov cl, byte [rsp + 0x34]
sub cl, dil
mov byte [rsp + 0x34], cl
mov cl, byte [0x1400396d4]
mov byte [0x14102ec3e], cl
jmp 0x14001666a
movzx ecx, byte [0x1400395b5]
movsx eax, byte [rsp + 0x78]
sub eax, ecx
not eax
mov dword [0x1400396f4], eax
mov eax, dword [0x140dcf1a0]
xor r9d, r9d
mov dword [rsp + 0x38], eax
xor edx, edx
mov eax, dword [rsp + 0x38]
xor ecx, ecx
add eax, 0x145
mov qword [rsp + 0x28], 0xc2
mov r8d, 0xdc
mov dword [rsp + 0x60], eax
mov qword [rsp + 0x20], rbx
call fcn.14001bba8
mov dword [str.M_fbO], eax
mov eax, dword [str.M_fbO]
test eax, eax
jne 0x1400166c2
movsx ecx, byte [rsp + 0x33]
sub ecx, 0x3a59859b
mov dword [0x1400396cc], ecx
mov eax, dword [rsp + 0x38]
movsx ecx, byte [0x1400395f3]
add eax, 0x1ec
mov dword [rbp - 0x50], eax
movzx eax, word [0x1400396bc]
cmp cx, ax
je 0x1400166f2
movzx ecx, word [0x1400396f0]
mov eax, dword [0x1400396e4]
cmp eax, ecx
jne 0x1400166f4
mov edi, ebx
cmp dword [rsp + 0x58], ebx
mov al, byte [0x14003961f]
mov eax, ebx
setle al
cmp eax, edi
je 0x140016715
mov al, byte [0x1400396c4]
mov byte [0x140e394e7], al
jmp 0x140016732
movzx eax, word [rsp + 0x3c]
test ax, ax
je 0x140016732
test sil, sil
je 0x140016732
movsx eax, byte [rsp + 0x31]
imul eax, eax, 0xd
mov byte [0x1400395b6], al
mov eax, dword [rsp + 0x38]
add eax, 0x3b7
mov dword [rsp + 0x4c], eax
mov ecx, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x4c]
and ecx, eax
mov eax, dword [rbp - 0x50]
add eax, 0x122
cmp eax, ecx
je 0x140017295
movsx rcx, word [0x1400396b4]
mov edx, ebx
cmp rcx, qword [rbp - 0x48]
sete dl
cmp ecx, 9
sete bl
cmp edx, ebx
jne 0x140016786
xor byte [0x14003961e], 0x3e
mov qword [0x140039700], 0xb76b
mov eax, dword [rsp + 0x7c]
add byte [0x1400395b6], al
mov eax, r15d
jmp 0x140017140
mov ecx, dword [rsp + 0x40]
mov eax, dword [rbp - 0x64]
imul ecx, eax
mov eax, dword [rsp + 0x40]
sub ecx, eax
mov eax, dword [rsp + 0x40]
add ecx, eax
mov eax, dword [rsp + 0x40]
cmp eax, ecx
je 0x140017295
cmp byte [rsi], 0xb8
jne 0x1400167e8
cmp byte [rsi + 5], 0xff
jne 0x1400167e8
cmp byte [rsi + 6], 0xe0
jne 0x1400167e8
mov eax, dword [0x140dcf1a0]
mov dword [0x1400396cc], eax
mov rcx, qword [rbp - 0x58]
mov eax, 3
mov qword [rcx], rdi
jmp 0x140017297
mov eax, dword [rbp - 0x60]
cmp eax, 0x2f2
je 0x140017295
mov r8d, dword [rsp + 0x54]
mov eax, r8d
movsx ecx, word [0x1400396f8]
not eax
cmp eax, ecx
jl 0x14001681a
mov al, byte [rsp + 0x32]
test al, al
je 0x14001681a
movzx eax, word [0x1400396a0]
mov eax, dword [0x140dcf1a0]
mov r9d, dword [rsp + 0x6c]
mov dword [rsp + 0x38], eax
mov eax, dword [rsp + 0x38]
add eax, 0x113
mov dword [rbp - 0x68], eax
lea ecx, [r9 - 0x68f591f6]
mov qword [0x1400396a8], rcx
mov r14b, byte [rsp + 0x30]
mov eax, dword [rsp + 0x38]
xor r14b, byte [rbp - 0x70]
add eax, 0x57
movzx ecx, byte [0x1400395f3]
not r14b
add r14b, byte [0x140039700]
mov dword [rsp + 0x40], eax
test r9d, r9d
movzx eax, byte [0x1400396b0]
cmovne ecx, eax
mov byte [rsp + 0x34], cl
movzx eax, byte [rsp + 0x34]
add eax, r8d
or r8d, eax
mov eax, dword [rsp + 0x38]
add eax, 0x137
mov dword [rsp + 0x54], r8d
cmp byte [rsi], 0xb8
mov dword [rsp + 0x70], eax
jne 0x1400168b7
cmp byte [rsi + 5], 0x50
jne 0x1400168b7
cmp byte [rsi + 6], r10b
jne 0x1400168b7
mov al, byte [rsp + 0x31]
mov al, byte [rsp + 0x34]
sub al, dil
jmp 0x140017042
mov eax, dword [rsp + 0x68]
cmp eax, 0xa1
je 0x140017295
mov eax, dword [0x140dcf1a0]
mov dword [rsp + 0x38], eax
mov eax, 0x94
mov word [0x1400396bc], ax
mov eax, dword [rsp + 0x38]
mov rcx, qword [0x140039680]
add eax, r15d
mov dword [rbp - 0x60], eax
movsxd rax, r8d
imul rcx, rax
mov al, byte [rsp + 0x33]
mov qword [0x140039680], rcx
mov ecx, ebx
shl r13d, 5
test al, al
mov word [0x1400396c4], r15w
movzx eax, byte [rsp + 0x31]
sete cl
sub eax, ecx
movzx ecx, word [0x1400396c4]
sub ax, word [0x1400396b8]
not ax
mov word [rsp + 0x3c], ax
test ecx, ecx
je 0x14001697f
sub ecx, edi
je 0x140016973
sub ecx, edi
je 0x140016960
sub ecx, edi
je 0x140016948
cmp ecx, edi
jne 0x140016996
mov r14b, 0x4b
jmp 0x140016996
mov eax, dword [rsp + 0x44]
xor eax, 0xb0e0ae8f
add eax, dword [0x1400396c8]
mov qword [0x140039688], rax
jmp 0x140016996
mov eax, 0x595d
add ax, word [0x1400395dc]
mov word [rsp + 0x3c], ax
jmp 0x140016996
mov eax, dword [0x140dcf1a0]
mov qword [rbp - 0x70], rax
jmp 0x140016996
lea r8d, [r13 + 0x533d]
mov qword [0x140039708], 2
mov dword [rsp + 0x54], r8d
mov eax, dword [rsp + 0x38]
add eax, 0xf3ee
mov dword [rsp + 0x68], eax
movsx ecx, byte [rsp + 0x33]
movzx eax, word [0x1400396a0]
cmp cx, ax
jg 0x1400169c2
mov al, byte [0x1400395b4]
xor al, 0xeb
mov byte [rsp + 0x48], al
jmp 0x140016a18
test dx, dx
je 0x1400169d2
movsx eax, dx
mov dword [0x140e142f4], eax
jmp 0x140016a18
cmp byte [0x1400395b4], bl
mov edx, ebx
movsx eax, word [0x1400396a0]
sete dl
cmp eax, edx
jl 0x140016a18
cmp word [0x1400396d4], bx
mov ecx, ebx
movsx eax, r14b
sete cl
cmp ecx, eax
jle 0x140016a18
movzx ecx, byte [0x14003961f]
mov edx, r13d
sub edx, r8d
sub rdx, qword [0x140039708]
add ecx, edx
mov dword [str.M_fbO], ecx
mov eax, dword [rsp + 0x38]
mov ecx, 0x6c
add eax, 0xec
movsx rdx, r14b
mov dword [rsp + 0x68], eax
call fcn.14001c06c
mov r11d, dword [rsp + 0x6c]
mov qword [rbp - 0x50], rax
test al, al
jne 0x140016a8a
mov r8b, byte [rsp + 0x33]
mov rax, qword [rbp - 0x78]
cmp word [0x1400396a4], bx
mov dl, byte [0x140039698]
sete cl
sub dl, cl
mov cl, byte [0x1400396b8]
not cl
sub dl, r11b
sub cl, al
add r8b, dl
movzx ecx, cl
movzx eax, r8b
imul ecx, eax
mov eax, dword [rsp + 0x44]
cmp eax, 0x48
movzx edx, cl
mov ecx, ebx
cmove ecx, edx
mov byte [0x1400395b7], cl
mov al, byte [0x140039690]
mov r8, qword [rbp - 0x70]
mov r10d, dword [rsp + 0x48]
mov byte [0x1400395b4], al
mov eax, dword [0x140039680]
and eax, 0x82e2c6ce
mov byte [0x14003961e], r15b
mov dword [rsp + 0x44], eax
mov rax, qword [0x1400396d8]
mov ecx, dword [rsp + 0x68]
and r12w, ax
mov eax, dword [rbp - 0x60]
or ecx, eax
mov dword [rbp - 0x80], r12d
mov eax, 0x27b
sub eax, ecx
mov dword [rbp - 0x60], eax
mov eax, dword [rsp + 0x50]
add ax, ax
sub ax, word [0x1400396e0]
mov dword [rsp + 0x50], eax
mov eax, dword [0x140dcf1a0]
mov dword [rsp + 0x38], eax
movzx edx, byte [0x14003961f]
movzx eax, byte [rsp + 0x5c]
xor rax, r8
and r8, rax
mov rax, qword [0x1400396d8]
movzx ecx, byte [0x1400395b7]
sub rdx, rax
movsx eax, r10b
imul ecx, eax
mov eax, ebx
test rdx, rdx
mov qword [rbp - 0x70], r8
not ecx
cmove eax, ecx
mov ecx, ebx
movsxd rdx, eax
movzx eax, word [0x1400396f8]
test ax, ax
mov rax, qword [0x140039688]
mov r12, qword [0x1400396d8]
not rax
sete cl
add r12, rax
mov eax, dword [rsp + 0x38]
sub r11d, ecx
add eax, 0xa2
mov ecx, r11d
mov dword [rsp + 0x68], eax
add rcx, rdx
mov eax, dword [0x14003969c]
not r12
add eax, 0x386fe4fa
add r12, rcx
mov ecx, dword [0x140039708]
add ecx, eax
mov eax, dword [rsp + 0x38]
add eax, 0xde
mov dword [0x14003969c], ecx
mov dword [rsp + 0x4c], eax
mov eax, dword [rsp + 0x44]
test eax, eax
je 0x140016ba5
movzx r9d, word [0x1400396f8]
jmp 0x140016bac
mov r9b, byte [0x140039680]
mov eax, dword [rsp + 0x38]
mov ecx, ebx
movzx edx, word [0x1400396c4]
add eax, 0xad8
mov dword [rsp + 0x68], eax
mov eax, dword [0x1400396f4]
cmp edx, eax
mov eax, ebx
mov word [rsp + 0x48], r9w
setne cl
cmp edx, 0x34
setne al
cmp ecx, eax
jb 0x140016c40
cmp word [0x140039698], bx
je 0x140016bf9
movsx ecx, byte [rsp + 0x33]
mov al, byte [rsp + 0x30]
add al, cl
mov byte [rsp + 0x30], al
jmp 0x140016c70
cmp word [0x1400396b4], bx
je 0x140016c70
movsx rcx, word [rsp + 0x3c]
mov rdx, rbx
mov rax, qword [0x1400396e8]
cmp rax, rcx
movsx rax, word [0x1400396b4]
seta dl
imul rax, qword [0x140039690]
cmp rax, rdx
je 0x140016c70
movsx eax, byte [0x1400395b6]
imul ecx, eax, 0xe9c4bbae
mov dword [rsp + 0x44], ecx
jmp 0x140016c70
movsx ecx, byte [rsp + 0x30]
mov edx, ebx
movzx eax, byte [0x1400395b4]
cmp eax, ecx
movsx eax, word [rsp + 0x3c]
sete dl
cmp edx, eax
jge 0x140016c70
movzx eax, word [0x1400396b4]
mov ecx, 0xab
sub ax, cx
mov word [rsp + 0x3c], ax
mov edx, dword [rsp + 0x68]
mov eax, dword [rsp + 0x4c]
or edx, eax
mov ecx, dword [rsp + 0x4c]
mov eax, 0x247fc53
xor ecx, 0x3563
imul ecx, edx
sub eax, ecx
mov dword [rsp + 0x68], eax
movsx rax, word [0x1400396b4]
cmp rax, r8
jle 0x140016cbc
mov ecx, dword [str.M_fbO]
movsx r12, word [0x140039698]
sub ecx, 0x2a91c626
add r12, rcx
add r12, qword [rbp - 0x48]
jmp 0x140016cdc
mov eax, dword [0x140039680]
movzx ecx, word [rsp + 0x54]
add eax, 0xfffffff3
mov dword [rsp + 0x6c], eax
movsx eax, r14b
movzx edx, ax
imul edx, ecx
mov word [rbp - 0x80], dx
mov eax, dword [0x140dcf1a0]
mov ecx, 0x500a
mov r9d, dword [rsp + 0x50]
mov r8d, 0x1cf
mov dword [rsp + 0x38], eax
movzx eax, word [0x1400396a0]
add ax, di
mov word [0x1400396a0], ax
movzx eax, r12w
sub ax, cx
mov word [0x140039698], ax
movsx rax, byte [0x1400395b3]
mov edx, ebx
cmp rax, r12
mov ecx, ebx
mov al, byte [0x1400395b3]
setg dl
cmp al, 0x11
setg cl
cmp edx, ecx
jne 0x140016d6b
mov eax, dword [rsp + 0x44]
movzx ecx, r13w
or ax, r9w
not cx
add cx, word [0x140039690]
movzx edx, ax
mov rax, qword [0x140039710]
movzx ecx, cx
imul edx, ecx
mov dword [0x14003965c], eax
mov word [0x1400396c4], dx
jmp 0x140016db6
test r14b, r14b
je 0x140016d7e
mov al, byte [0x1400396cc]
add al, 0xb
mov byte [rsp + 0x48], al
jmp 0x140016db6
movsx eax, byte [0x1400395b6]
mov ecx, ebx
not eax
cmp eax, 0x41
movzx eax, byte [rsp + 0x32]
setl cl
cmp eax, ecx
jae 0x140016db6
movsx eax, word [rsp + 0x3c]
movsx ecx, al
imul r14d, ecx, 0xffffffed
movsxd rcx, dword [rsp + 0x44]
mov rax, qword [0x140039688]
sub ecx, eax
mov dword [rsp + 0x44], ecx
sub r8, rdi
jne 0x140016d15
mov eax, dword [rsp + 0x38]
mov ecx, 0x1e5
add eax, 0x2007
mov dword [rbp - 0x64], eax
mov al, byte [rsp + 0x34]
add al, dil
mov byte [rsp + 0x34], al
sub rcx, rdi
jne 0x140016dd0
mov eax, dword [rsp + 0x38]
mov edx, 0xd1
add eax, 0xb6
mov qword [rsp + 0x28], 0xec
mov dword [rsp + 0x4c], eax
movzx eax, word [0x140dcf1a0]
mov word [0x1400396d4], ax
lea ecx, [rdx + 3]
mov eax, dword [rsp + 0x38]
add eax, r15d
mov qword [rsp + 0x20], rbx
mov dword [rbp - 0x64], eax
movsxd r9, dword [rsp + 0x44]
mov r8, qword [0x1400396d8]
call fcn.14001bba8
mov r10, qword [rbp - 0x50]
mov r11d, dword [rsp + 0x58]
mov dword [0x140039674], eax
test eax, eax
jle 0x140016e75
mov cl, byte [rbp - 0x70]
movsx eax, r10b
sub eax, 0x9b
mov dword [rsp + 0x44], eax
mov al, byte [rsp + 0x30]
mov edx, dword [0x140039674]
test al, al
sete al
add cl, byte [0x1400395b6]
add cl, byte [rsp + 0x48]
add al, dl
xor cl, al
xor cl, r11b
mov byte [rsp + 0x5c], cl
jmp 0x140016ea2
movzx eax, word [0x1400396c0]
mov rax, qword [rbp - 0x78]
movzx eax, byte [rsp + 0x32]
mov edx, dword [0x14003965c]
add edx, dword [0x1400396c8]
not edx
add eax, edx
mov edx, dword [0x140039674]
mov qword [0x140039680], rax
mov ecx, dword [rbp - 0x68]
mov eax, dword [rsp + 0x70]
xor ecx, 0x2b3
mov r9d, dword [rsp + 0x6c]
sub ecx, eax
mov eax, dword [rbp - 0x68]
add r9d, 0xdb35a2e7
add ecx, eax
add r9d, edx
mov eax, dword [rsp + 0x70]
mov edx, dword [rsp + 0x40]
mov r8d, dword [rsp + 0x40]
sub edx, eax
mov eax, dword [rsp + 0x40]
xor r8d, eax
imul edx, ecx
mov ecx, dword [rsp + 0x4c]
mov eax, dword [rsp + 0x4c]
sub ecx, eax
imul r8d, edx
mov edx, 0xff
xor ecx, edx
sub ecx, r8d
cmp byte [rsi], 0xa1
mov dword [rbp - 0x64], ecx
jne 0x140017117
mov al, byte [rsi + 5]
cmp al, dl
jne 0x140017099
cmp byte [rsi + 6], 0xe0
jne 0x14001714c
movzx eax, byte [0x1400395b4]
cmp ax, word [0x1400396d0]
jbe 0x140016f31
mov dword [rsp + 0x44], 2
jmp 0x140016f49
mov rax, qword [0x140039710]
mov ecx, ebx
test rax, rax
sete cl
add cx, r12w
mov word [rsp + 0x3c], cx
mov eax, dword [rsp + 0x44]
mov ecx, ebx
mov eax, dword [0x140dcf1a0]
mov dword [rsp + 0x38], eax
movzx eax, word [0x1400396b0]
cmp r9d, eax
mov eax, ebx
setbe cl
cmp r9d, 0x12
setbe al
cmp ecx, eax
je 0x140016f84
mov al, byte [rsp + 0x31]
mov al, byte [rsp + 0x34]
mov word [0x1400396c0], di
jmp 0x140016fa0
movzx eax, word [rsp + 0x3c]
test ax, ax
je 0x140016f94
lea r8d, [r11 + 0x3f]
jmp 0x140016fa5
mov eax, dword [0x1410953b8]
sub dword [0x14003965c], eax
mov r8d, dword [rsp + 0x5c]
mov ecx, dword [rbp - 0x60]
mov eax, dword [rsp + 0x38]
add ecx, eax
mov dword [rsp + 0x4c], ecx
mov ecx, dword [rsp + 0x68]
mov eax, dword [rsp + 0x38]
add ecx, eax
mov eax, dword [0x140dcf1a0]
mov dword [rsp + 0x68], ecx
mov ecx, dword [rsp + 0x38]
mov dword [0x140039674], eax
mov eax, dword [rbp - 0x64]
add ecx, eax
mov dword [rsp + 0x60], ecx
mov edx, dword [rsp + 0x68]
mov eax, dword [rsp + 0x4c]
imul edx, eax
mov eax, dword [rsp + 0x4c]
imul ecx, eax, 0x2dc
cmp ecx, edx
je 0x140017295
mov eax, dword [0x1400396e4]
test eax, eax
je 0x14001704b
movsxd rax, r11d
cmp rax, qword [rbp - 0x70]
jne 0x1400167d7
movsx ecx, byte [rsp + 0x33]
movzx eax, word [rbp - 0x80]
movzx edx, r8b
imul edx, eax
mov rax, qword [0x140039688]
add rax, 0xc4
sub ecx, edx
movzx edx, al
movsxd r8, ecx
mov rcx, qword [0x1400396e8]
movzx eax, cl
imul eax, edx
sub al, r8b
mov byte [rsp + 0x34], al
jmp 0x1400167d7
cmp r11d, 0x8c45
jl 0x140017063
mov al, byte [0x14109ce70]
mov byte [rsp + 0x32], al
jmp 0x1400167d7
movzx ecx, word [0x1400396bc]
movsx eax, r14b
cmp ax, cx
jl 0x1400167d7
mov rcx, qword [0x140039680]
movsx rax, r10b
sub rcx, rax
movzx eax, word [0x1400396bc]
sub cl, al
not cl
mov byte [rsp + 0x33], cl
jmp 0x1400167d7
cmp al, 0x50
jne 0x14001714c
cmp byte [rsi + 6], 0xc3
jne 0x14001714c
mov byte [rsp + 0x32], 0x48
mov eax, 0x3616
movsx ecx, byte [rsp + 0x33]
sub cx, ax
mov rax, qword [0x1400396e8]
mov word [0x1400396d0], cx
movzx ecx, word [0x1400396c0]
mov rdx, qword [0x140039710]
movzx eax, word [0x1400396f0]
add ecx, eax
movabs rax, 0xcc7bdff8d91ec
add rdx, rax
movsx eax, r10b
imul rdx, rcx
mov ecx, dword [rsp + 0x44]
sub ecx, eax
mov byte [0x14003961e], 0x82
imul eax, ecx, 0x81
add eax, edx
mov dword [0x1400396f4], eax
jmp 0x1400167d7
cmp byte [rsi], 0x90
jne 0x14001714c
cmp byte [rsi + 1], 0x90
jne 0x14001714c
cmp byte [rsi + 3], 0xe9
jne 0x14001714c
mov eax, 0xa1e5
movzx ecx, r9w
imul ecx, eax
mov eax, 3
mov word [0x1400396c0], cx
mov rcx, qword [rbp - 0x58]
mov qword [rcx], r15
jmp 0x140017297
mov ecx, dword [rbp - 0x30]
mov eax, dword [rbp - 0x28]
imul ecx, eax
mov eax, dword [rsp + 0x60]
imul eax, ecx
cmp eax, 0x307
je 0x140017295
cmp byte [rsi + 5], dl
jne 0x140017229
cmp byte [rsi + 6], 0x25
jne 0x140017229
cmp dword [0x1400396e0], ebx
je 0x1400171b2
movzx eax, byte [rsp + 0x32]
cmp eax, dword [0x140039674]
jle 0x1400171b2
movsx ecx, word [rsp + 0x3c]
add cx, word [0x1400396d4]
mov word [rsp + 0x3c], cx
mov rax, qword [0x140039710]
sub ax, 0x68
mov word [0x1400396d0], ax
test r10b, r10b
je 0x1400171e6
movzx ecx, byte [rsp + 0x31]
movsx eax, r14b
cmp eax, ecx
jg 0x1400171de
movzx eax, byte [0x1400395b7]
movsx ecx, r10b
not cx
add cx, ax
mov word [0x1400396d4], cx
jmp 0x14001721a
mov word [rsp + 0x3c], r13w
jmp 0x14001721a
mov cl, byte [0x1400395b5]
mov rcx, qword [0x140039710]
add rcx, 0xbe
cmp rcx, rdi
jl 0x14001721a
mov rcx, qword [0x1400396a8]
add cl, 0x6c
mov qword [0x140039708], 0xbd
mov byte [0x1400395b7], cl
mov rcx, qword [rbp - 0x58]
mov eax, edi
mov qword [rcx], 7
jmp 0x140017297
mov eax, dword [rsp + 0x74]
imul ecx, eax, 0x3ef
mov eax, dword [rsp + 0x74]
add eax, 0xb2
cmp eax, ecx
je 0x140017295
cmp byte [rsi], 0x48
jne 0x140017295
cmp byte [rsi + 1], dl
jne 0x140017295
cmp byte [rsi + 2], 0x25
jne 0x140017295
movsx ecx, byte [0x1400395b6]
mov edx, ebx
cmp ecx, r11d
setne dl
cmp cl, 0x5b
setne bl
cmp edx, ebx
jb 0x140017276
movzx eax, word [0x14109d2fe]
mov dword [0x1400396e4], eax
mov al, byte [rsp + 0x30]
mov r14d, edi
movzx eax, word [0x1400396a0]
mov rcx, qword [rbp - 0x58]
mov eax, 3
mov qword [rcx], rax
jmp 0x140016122
xor eax, eax
mov rcx, qword [rbp + 0x48]
xor rcx, rsp
call fcn.14001e2d0
lea r11, [rsp + 0x150]
mov rbx, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x40]
mov rdi, qword [r11 + 0x48]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rbp
ret