Function at 0x1401f0390
Capabilities:
Authenticate hmac

Disassembly:
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x5a0]
sub rsp, 0x6a0
mov qword [rsp + 0x78], 0xfffffffffffffffe
mov qword [rsp + 0x6e0], rbx
mov rax, qword [0x140735840]
xor rax, rsp
mov qword [rbp + 0x598], rax
mov r14, r9
mov r13, r8
mov rbx, rdx
mov qword [rbp + 0x190], rdx
mov r15d, ecx
mov dword [rsp + 0x40], ecx
xor edi, edi
mov dword [rsp + 0x20], edi
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x28], xmm0
mov esi, edi
mov qword [rsp + 0x38], rdi
lea rax, [0x1403d37c8]
mov qword [rbp - 0x50], rax
mov dword [rsp + 0x20], 0x40
lea rax, [0x1403d0800]
mov qword [rbp + 0x40], rax
mov dword [rbp + 0x3c], 0x78
mov qword [rbp - 0x48], rdi
xor r8d, r8d
lea rdx, [rbp - 0x40]
lea rcx, [rbp + 0x40]
call fcn.1400322f0
nop
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
lea rax, [0x1403d37c0]
mov qword [rbp + rcx - 0x50], rax
mov rax, qword [rbp - 0x50]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x90]
mov dword [rbp + rcx - 0x54], edx
lea r8d, [rdi + 1]
mov rdx, rbx
lea rcx, [rbp - 0x40]
call fcn.1401d4dc0
nop
mov qword [rbp + 0x2b0], 0xf
mov qword [rbp + 0x2a8], rdi
mov byte [rbp + 0x298], dil
xor r12b, r12b
mov r8b, 0x2c
lea rdx, [rbp + 0x298]
lea rcx, [rbp - 0x50]
call fcn.14006a4b0
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
mov rdi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x28]
test byte [rdx + rax + 0x10], 6
jne 0x1401f0717
movabs rcx, 0x7ffffffffffffff
test r12b, r12b
je 0x1401f04e8
mov qword [rbp - 0x80], rdi
lea rcx, [rdi - 0x20]
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x298]
call fcn.14001ec90
xor r12b, r12b
jmp 0x1401f06d2
cmp qword [rbp + 0x2a8], 0
jne 0x1401f0517
cmp rbx, rdi
sete al
test al, al
jne 0x1401f06d2
mov r12b, 1
mov qword [rbp - 0x78], rdi
lea rcx, [rdi - 0x20]
mov dl, 0x2c
call fcn.1400f1320
jmp 0x1401f06d2
lea rax, [rbp + 0x298]
cmp rax, rdi
jae 0x1401f0600
lea rax, [rbp + 0x298]
cmp rbx, rax
ja 0x1401f0600
lea r15, [rbp + 0x298]
sub r15, rbx
cmp rdi, rsi
jne 0x1401f05ae
mov rax, rsi
sub rax, rdi
sar rax, 5
cmp rax, 1
jae 0x1401f05ae
sub rdi, rbx
sar rdi, 5
mov rax, rcx
sub rax, rdi
cmp rax, 1
jb 0x1401f06f8
lea rdx, [rdi + 1]
sub rsi, rbx
sar rsi, 5
mov rax, rsi
shr rax, 1
sub rcx, rax
add rax, rsi
xor r8d, r8d
cmp rcx, rsi
cmovae r8, rax
cmp r8, rdx
cmovae rdx, r8
lea rcx, [rsp + 0x28]
call fcn.1400bc400
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x28]
mov qword [rbp + 0x1a0], rdi
and r15, 0xffffffffffffffe0
add r15, rbx
mov qword [rbp + 0x1b0], rdi
test rdi, rdi
je 0x1401f05fb
xor eax, eax
mov qword [rdi + 0x18], 0xf
mov qword [rdi + 0x10], rax
cmp qword [rdi + 0x18], 0x10
jb 0x1401f05e2
mov rax, qword [rdi]
jmp 0x1401f05e5
mov rax, rdi
mov byte [rax], 0
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, r15
mov rcx, rdi
call fcn.14001ef10
nop
jmp 0x1401f06c9
cmp rdi, rsi
jne 0x1401f066d
mov rax, rsi
sub rax, rdi
sar rax, 5
cmp rax, 1
jae 0x1401f066d
sub rdi, rbx
sar rdi, 5
mov rax, rcx
sub rax, rdi
cmp rax, 1
jb 0x1401f0705
lea rdx, [rdi + 1]
sub rsi, rbx
sar rsi, 5
mov rax, rsi
shr rax, 1
sub rcx, rax
add rax, rsi
xor r8d, r8d
cmp rcx, rsi
cmovae r8, rax
cmp r8, rdx
cmovae rdx, r8
lea rcx, [rsp + 0x28]
call fcn.1400bc400
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x28]
mov qword [rbp + 0x1b0], rdi
mov qword [rbp + 0x1a0], rdi
test rdi, rdi
je 0x1401f06c9
mov qword [rdi + 0x10], 0
mov qword [rdi + 0x18], 0
mov qword [rdi + 0x18], 0xf
mov qword [rdi + 0x10], 0
cmp qword [rdi + 0x18], 0x10
jb 0x1401f06ac
mov rax, qword [rdi]
jmp 0x1401f06af
mov rax, rdi
mov byte [rax], 0
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x298]
mov rcx, rdi
call fcn.14001ef10
nop
add rdi, 0x20
mov qword [rsp + 0x30], rdi
mov r8b, 0x2c
lea rdx, [rbp + 0x298]
lea rcx, [rbp - 0x50]
call fcn.14006a4b0
mov rcx, qword [rax]
movsxd rdx, dword [rcx + 4]
test byte [rdx + rax + 0x10], 6
jne 0x1401f0712
jmp 0x1401f04b6
lea rcx, str.vector_T__too_long
call fcn.14032c428
int3
lea rcx, str.vector_T__too_long
call fcn.14032c428
int3
mov r15d, dword [rsp + 0x40]
cmp rbx, rdi
je 0x1401f24ee
mov r12, qword [rbp + 0x190]
nop word [rax + rax]
xor r8d, r8d
mov dl, 0x3a
mov rcx, rbx
call fcn.14006d740
mov rsi, rax
lea rcx, [rax - 1]
cmp rcx, 0xfffffffffffffffd
ja 0x1401f1741
mov rcx, qword [rbx + 0x10]
add rcx, 0xfffffffffffffffe
cmp rax, rcx
ja 0x1401f1741
mov cl, 1
call fcn.14032c978
mov qword [rsp + 0x60], rax
mov cl, 1
call fcn.14032c978
mov rdi, rax
mov qword [rbp - 0x68], rax
mov r9, rsi
xor r8d, r8d
lea rdx, [rbp + 0x4d8]
mov rcx, rbx
call fcn.1400413e0
nop
lea r8, [rbp - 0x70]
mov rdx, rax
lea rcx, [rbp + 0x3b8]
call fcn.1400f5260
nop
lea r8, [rsp + 0x58]
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.14001a310
nop
lea rcx, [rbp + 0x3b8]
call fcn.14001c970
nop
lea rcx, [rbp + 0x4d8]
call fcn.14001c970
nop
test rdi, rdi
je 0x1401f07f4
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
test rax, rax
je 0x1401f07f4
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
nop
mov rcx, qword [rsp + 0x60]
test rcx, rcx
je 0x1401f0818
mov rax, qword [rcx]
call qword [rax + 0x10]
test rax, rax
je 0x1401f0818
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
nop
mov cl, 1
call fcn.14032c978
mov rdi, rax
mov qword [rbp - 0x58], rax
lea r8, [rsi + 1]
or r9, 0xffffffffffffffff
lea rdx, [rbp + 0x4f8]
mov rcx, rbx
call fcn.1400413e0
nop
lea r8, [rbp - 0x60]
mov rdx, rax
lea rcx, [rbp + 0x208]
call fcn.1400f5260
nop
lea rcx, [rbp + 0x4f8]
call fcn.14001c970
nop
test rdi, rdi
je 0x1401f0881
mov rax, qword [rdi]
mov rcx, rdi
call qword [rax + 0x10]
test rax, rax
je 0x1401f0881
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
nop
mov rdx, r13
lea rcx, [rbp + 0x208]
call fcn.1401c62c0
mov dword [rbp + 0x258], 0x20
mov dword [rbp + 0x25c], 0x1c
mov eax, dword [rbp + 0x25c]
xor eax, 0x50
mov byte [rbp + 0x260], al
movsx ecx, byte [rbp + 0x260]
xor ecx, 0x4f
mov byte [rbp + 0x261], cl
movsx ecx, byte [rbp + 0x261]
xor ecx, 0x4f
mov byte [rbp + 0x262], cl
movsx ecx, byte [rbp + 0x262]
xor ecx, 0x4c
mov byte [rbp + 0x263], cl
xor eax, eax
mov byte [rbp + 0x264], al
movzx eax, byte [rbp + 0x260]
lea rdx, [rbp + 0x518]
lea rcx, [rbp + 0x258]
call fcn.1400b8000
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.140013390
movzx edi, al
lea rcx, [rbp + 0x518]
call fcn.14001c970
test dil, dil
je 0x1401f093c
lea rdx, [rbp + 0x208]
mov rcx, r14
call fcn.1401efb40
jmp 0x1401f1728
mov dword [rbp + 0x1b0], 0x65
mov eax, dword [rbp + 0x1b0]
xor eax, 0x77
add eax, 5
mov byte [rbp + 0x1b4], al
movsx ecx, byte [rbp + 0x1b4]
xor ecx, 0x61
add ecx, 5
mov byte [rbp + 0x1b5], cl
movsx ecx, byte [rbp + 0x1b5]
xor ecx, 0x6c
add ecx, 5
mov byte [rbp + 0x1b6], cl
movsx ecx, byte [rbp + 0x1b6]
xor ecx, 0x6c
add ecx, 5
mov byte [rbp + 0x1b7], cl
movsx ecx, byte [rbp + 0x1b7]
xor ecx, 0x65
add ecx, 5
mov byte [rbp + 0x1b8], cl
movsx ecx, byte [rbp + 0x1b8]
xor ecx, 0x74
add ecx, 5
mov byte [rbp + 0x1b9], cl
mov byte [rbp + 0x1ba], 0
movzx eax, byte [rbp + 0x1b4]
lea rdx, [rbp + 0x558]
lea rcx, [rbp + 0x1b0]
call fcn.14020b630
nop
mov edi, dword [rsp + 0x20]
or edi, 1
mov dword [rsp + 0x20], edi
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.140013390
test al, al
jne 0x1401f0a7f
mov dword [rbp + 0x228], 0x2c
mov dword [rbp + 0x22c], 4
mov eax, dword [rbp + 0x22c]
xor eax, 0x5b
mov byte [rbp + 0x230], al
movsx ecx, byte [rbp + 0x230]
xor ecx, 0x4d
mov byte [rbp + 0x231], cl
movsx ecx, byte [rbp + 0x231]
xor ecx, 0x40
mov byte [rbp + 0x232], cl
xor eax, eax
mov byte [rbp + 0x233], al
movzx eax, byte [rbp + 0x230]
lea rdx, [rbp + 0x538]
lea rcx, [rbp + 0x228]
call fcn.140024d40
mov edi, dword [rsp + 0x20]
or edi, 2
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.140013390
test al, al
jne 0x1401f0a7f
xor sil, sil
jmp 0x1401f0a82
mov sil, 1
test dil, 2
je 0x1401f0a98
and edi, 0xfffffffd
lea rcx, [rbp + 0x538]
call fcn.14001c970
nop
and edi, 0xfffffffe
mov dword [rsp + 0x20], edi
lea rcx, [rbp + 0x558]
call fcn.14001c970
test sil, sil
je 0x1401f0adc
lea rcx, [r14 + 0x40]
lea rax, [rbp + 0x208]
cmp rcx, rax
je 0x1401f1728
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x208]
call fcn.14001ef10
jmp 0x1401f1728
mov dword [rbp + 0x268], 0x42
mov dword [rbp + 0x26c], 0x64
mov eax, dword [rbp + 0x26c]
xor eax, 0x32
mov byte [rbp + 0x270], al
movsx ecx, byte [rbp + 0x270]
xor ecx, 0x23
mov byte [rbp + 0x271], cl
movsx ecx, byte [rbp + 0x271]
xor ecx, 0x31
mov byte [rbp + 0x272], cl
movsx ecx, byte [rbp + 0x272]
xor ecx, 0x31
mov byte [rbp + 0x273], cl
xor eax, eax
mov byte [rbp + 0x274], al
movzx eax, byte [rbp + 0x270]
lea rdx, [rbp + 0x2d8]
lea rcx, [rbp + 0x268]
call fcn.1400b8000
nop
mov edi, dword [rsp + 0x20]
or edi, 4
mov dword [rsp + 0x20], edi
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.140013390
test al, al
jne 0x1401f0bf8
mov dword [rbp + 0x238], 0x5f
mov dword [rbp + 0x23c], 0x11
mov eax, dword [rbp + 0x23c]
xor eax, 0x2f
mov byte [rbp + 0x240], al
movsx ecx, byte [rbp + 0x240]
xor ecx, 0x2c
mov byte [rbp + 0x241], cl
movsx ecx, byte [rbp + 0x241]
xor ecx, 0x28
mov byte [rbp + 0x242], cl
xor eax, eax
mov byte [rbp + 0x243], al
movzx eax, byte [rbp + 0x240]
lea rdx, [rbp + 0x2b8]
lea rcx, [rbp + 0x238]
call fcn.140024d40
mov edi, dword [rsp + 0x20]
or edi, 8
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.140013390
test al, al
jne 0x1401f0bf8
xor sil, sil
jmp 0x1401f0bfb
mov sil, 1
test dil, 8
je 0x1401f0c11
and edi, 0xfffffff7
lea rcx, [rbp + 0x2b8]
call fcn.14001c970
nop
and edi, 0xfffffffb
mov dword [rsp + 0x20], edi
lea rcx, [rbp + 0x2d8]
call fcn.14001c970
test sil, sil
je 0x1401f0c55
lea rcx, [r14 + 0x60]
lea rax, [rbp + 0x208]
cmp rcx, rax
je 0x1401f1728
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x208]
call fcn.14001ef10
jmp 0x1401f1728
mov dword [rbp + 0x1a0], 0x2d
mov eax, dword [rbp + 0x1a0]
xor eax, 0x77
add eax, 4
mov byte [rbp + 0x1a4], al
movsx ecx, byte [rbp + 0x1a4]
xor ecx, 0x6f
add ecx, 4
mov byte [rbp + 0x1a5], cl
movsx ecx, byte [rbp + 0x1a5]
xor ecx, 0x72
add ecx, 4
mov byte [rbp + 0x1a6], cl
movsx ecx, byte [rbp + 0x1a6]
xor ecx, 0x6b
add ecx, 4
mov byte [rbp + 0x1a7], cl
movsx ecx, byte [rbp + 0x1a7]
xor ecx, 0x65
add ecx, 4
mov byte [rbp + 0x1a8], cl
movsx ecx, byte [rbp + 0x1a8]
xor ecx, 0x72
add ecx, 4
mov byte [rbp + 0x1a9], cl
mov byte [rbp + 0x1aa], 0
movzx eax, byte [rbp + 0x1a4]
lea rdx, [rbp + 0x2f8]
lea rcx, [rbp + 0x1a0]
call fcn.1401be980
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.140013390
movzx edi, al
lea rcx, [rbp + 0x2f8]
call fcn.14001c970
test dil, dil
je 0x1401f0d43
lea rcx, [r14 + 0x80]
lea rax, [rbp + 0x208]
cmp rcx, rax
je 0x1401f1728
or r9, 0xffffffffffffffff
xor r8d, r8d
lea rdx, [rbp + 0x208]
call fcn.14001ef10
jmp 0x1401f1728
mov dword [rbp + 0x248], 0x22
mov dword [rbp + 0x24c], 0x33
mov eax, dword [rbp + 0x24c]
xor eax, 0x47
mov byte [rbp + 0x250], al
movsx ecx, byte [rbp + 0x250]
xor ecx, 0x51
mov byte [rbp + 0x251], cl
movsx ecx, byte [rbp + 0x251]
xor ecx, 0x4f
mov byte [rbp + 0x252], cl
xor eax, eax
mov byte [rbp + 0x253], al
movzx eax, byte [rbp + 0x250]
lea rdx, [rbp + 0x318]
lea rcx, [rbp + 0x248]
call fcn.140024d40
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.140013390
movzx edi, al
lea rcx, [rbp + 0x318]
call fcn.14001c970
test dil, dil
je 0x1401f0e4f
cmp qword [rbp + 0x218], 0
je 0x1401f1728
lea rax, [rbp + 0x208]
cmp qword [rbp + 0x220], 0x10
cmovae rax, qword [rbp + 0x208]
movsx ecx, byte [rax]
sub ecx, 0x30
je 0x1401f0e3f
sub ecx, 1
je 0x1401f0e2f
sub ecx, 1
je 0x1401f0e1f
cmp ecx, 1
jne 0x1401f19d3
mov dword [r14 + 0xa0], 4
jmp 0x1401f1728
mov dword [r14 + 0xa0], 1
jmp 0x1401f1728
mov dword [r14 + 0xa0], 3
jmp 0x1401f1728
mov dword [r14 + 0xa0], 2
jmp 0x1401f1728
mov dword [rbp + 0x1d8], 0x7f
mov eax, dword [rbp + 0x1d8]
xor eax, 0x70
mov byte [rbp + 0x1dc], al
movsx ecx, byte [rbp + 0x1dc]
xor ecx, 0x72
mov byte [rbp + 0x1dd], cl
movsx ecx, byte [rbp + 0x1dd]
xor ecx, 0x6f
mov byte [rbp + 0x1de], cl
movsx ecx, byte [rbp + 0x1de]
xor ecx, 0x74
mov byte [rbp + 0x1df], cl
movsx ecx, byte [rbp + 0x1df]
xor ecx, 0x6f
mov byte [rbp + 0x1e0], cl
mov byte [rbp + 0x1e1], 0
movzx eax, byte [rbp + 0x1dc]
lea rdx, [rbp + 0x338]
lea rcx, [rbp + 0x1d8]
call fcn.1400b7520
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.140013390
movzx edi, al
lea rcx, [rbp + 0x338]
call fcn.14001c970
test dil, dil
je 0x1401f0f65
mov rax, qword [rbp + 0x218]
test rax, rax
je 0x1401f1728
cmp rax, 1
jne 0x1401f1bd7
lea rax, [rbp + 0x208]
mov rcx, qword [rbp + 0x208]
mov rdx, qword [rbp + 0x220]
cmp rdx, 0x10
cmovae rax, rcx
cmp byte [rax], 0x31
jl 0x1401f1bd7
lea rax, [rbp + 0x208]
cmp rdx, 0x10
cmovae rax, rcx
cmp byte [rax], 0x34
jg 0x1401f1bd7
lea rax, [rbp + 0x208]
cmp rdx, 0x10
cmovae rax, rcx
movsx eax, byte [rax]
sub eax, 0x30
mov dword [r14 + 0xa0], eax
jmp 0x1401f1728
mov dword [rbp + 0x1f8], 0x3e
mov eax, dword [rbp + 0x1f8]
xor eax, 0x63
add eax, 0xb
mov byte [rbp + 0x1fc], al
movsx ecx, byte [rbp + 0x1fc]
xor ecx, 0x6f
add ecx, 0xb
mov byte [rbp + 0x1fd], cl
movsx ecx, byte [rbp + 0x1fd]
xor ecx, 0x69
add ecx, 0xb
mov byte [rbp + 0x1fe], cl
movsx ecx, byte [rbp + 0x1fe]
xor ecx, 0x6e
add ecx, 0xb
mov byte [rbp + 0x1ff], cl
mov byte [rbp + 0x200], 0
movzx eax, byte [rbp + 0x1fc]
lea rdx, [rbp + 0x358]
lea rcx, [rbp + 0x1f8]
call fcn.14020c2d0
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.140013390
movzx edi, al
lea rcx, [rbp + 0x358]
call fcn.14001c970
test dil, dil
je 0x1401f1036
cmp qword [rbp + 0x218], 0
je 0x1401f1728
lea rdx, [r14 + 0xa8]
lea rcx, [r14 + 0xa4]
lea r9, [rbp + 0x208]
mov r8d, r15d
call fcn.1401ee560
test al, al
je 0x1401f1f1b
jmp 0x1401f1728
mov dword [rbp + 0x1c0], 0x73
mov eax, dword [rbp + 0x1c0]
add al, 0x73
movsx ecx, al
xor ecx, 0x2d
mov dword [rbp + 0x1c4], ecx
mov eax, dword [rbp + 0x1c4]
mov ecx, dword [rbp + 0x1c0]
xor ecx, eax
xor ecx, 0x61
mov byte [rbp + 0x1c8], cl
movsx ecx, byte [rbp + 0x1c8]
mov eax, dword [rbp + 0x1c0]
inc al
xor eax, ecx
xor eax, 0x6c
mov byte [rbp + 0x1c9], al
movsx ecx, byte [rbp + 0x1c9]
mov eax, dword [rbp + 0x1c0]
add al, 2
xor eax, ecx
xor eax, 0x6c
mov byte [rbp + 0x1ca], al
movsx ecx, byte [rbp + 0x1ca]
mov eax, dword [rbp + 0x1c0]
add al, 3
xor eax, ecx
xor eax, 0x70
mov byte [rbp + 0x1cb], al
movsx ecx, byte [rbp + 0x1cb]
mov eax, dword [rbp + 0x1c0]
add al, 4
xor eax, ecx
xor eax, 0x6f
mov byte [rbp + 0x1cc], al
movsx ecx, byte [rbp + 0x1cc]
mov eax, dword [rbp + 0x1c0]
add al, 5
xor eax, ecx
xor eax, 0x6f
mov byte [rbp + 0x1cd], al
movsx ecx, byte [rbp + 0x1cd]
mov eax, dword [rbp + 0x1c0]
add al, 6
xor eax, ecx
xor eax, 0x6c
mov byte [rbp + 0x1ce], al
movsx ecx, byte [rbp + 0x1ce]
mov eax, dword [rbp + 0x1c0]
add al, 7
xor eax, ecx
xor eax, 0x73
mov byte [rbp + 0x1cf], al
xor eax, eax
mov byte [rbp + 0x1d0], al
movzx eax, byte [rbp + 0x1c8]
lea rdx, [rbp + 0x378]
lea rcx, [rbp + 0x1c0]
call fcn.140066810
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.140013390
movzx edi, al
lea rcx, [rbp + 0x378]
call fcn.14001c970
test dil, dil
jne 0x1401f1728
mov dword [rbp + 0x190], 0x1b
mov eax, dword [rbp + 0x190]
xor eax, 0x65
add eax, 0xa
mov byte [rbp + 0x194], al
movsx ecx, byte [rbp + 0x194]
xor ecx, 0x73
add ecx, 0xa
mov byte [rbp + 0x195], cl
movsx ecx, byte [rbp + 0x195]
xor ecx, 0x74
add ecx, 0xa
mov byte [rbp + 0x196], cl
movsx ecx, byte [rbp + 0x196]
xor ecx, 0x61
add ecx, 0xa
mov byte [rbp + 0x197], cl
movsx ecx, byte [rbp + 0x197]
xor ecx, 0x6c
add ecx, 0xa
mov byte [rbp + 0x198], cl
movsx ecx, byte [rbp + 0x198]
xor ecx, 0x65
add ecx, 0xa
mov byte [rbp + 0x199], cl
mov byte [rbp + 0x19a], dil
movzx eax, byte [rbp + 0x194]
lea rdx, [rbp + 0x498]
lea rcx, [rbp + 0x190]
call fcn.14015d640
nop
mov edi, dword [rsp + 0x20]
or edi, 0x10
mov dword [rsp + 0x20], edi
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.140013390
test al, al
jne 0x1401f12dd
mov dword [rbp + 0x1e8], 0x37
mov dword [rbp + 0x1ec], 0x79
mov eax, dword [rbp + 0x1ec]
xor eax, 0x44
mov byte [rbp + 0x1f0], al
movsx ecx, byte [rbp + 0x1f0]
xor ecx, 0x43
mov byte [rbp + 0x1f1], cl
movsx ecx, byte [rbp + 0x1f1]
xor ecx, 0x56
mov byte [rbp + 0x1f2], cl
movsx ecx, byte [rbp + 0x1f2]
xor ecx, 0x5b
mov byte [rbp + 0x1f3], cl
movsx ecx, byte [rbp + 0x1f3]
xor ecx, 0x52
mov byte [rbp + 0x1f4], cl
movsx ecx, byte [rbp + 0x1f4]
xor ecx, 0x44
mov byte [rbp + 0x1f5], cl
xor eax, eax
mov byte [rbp + 0x1f6], al
movzx eax, byte [rbp + 0x1f0]
lea rdx, [rbp + 0x398]
lea rcx, [rbp + 0x1e8]
call fcn.140219f50
mov edi, dword [rsp + 0x20]
or edi, 0x20
mov rdx, rax
lea rcx, [rbp + 0x278]
call fcn.140013390
test al, al
jne 0x1401f12dd
xor sil, sil
jmp 0x1401f12e0
mov sil, 1
test dil, 0x20
je 0x1401f12f6
and edi, 0xffffffdf
lea rcx, [rbp + 0x398]
call fcn.14001c970
nop
and edi, 0xffffffef
mov dword [rsp + 0x20], edi
lea rcx, [rbp + 0x498]
call fcn.14001c970
test sil, sil
je 0x1401f135e
cmp qword [rbp + 0x218], 0
je 0x1401f1728
lea rax, [rbp + 0x208]
cmp qword [rbp + 0x220], 0x10
cmovae rax, qword [rbp + 0x208]
movsx ecx, byte [rax]
sub ecx, 0x30
je 0x1401f1351
cmp ecx, 1
jne 0x1401f2245
mov byte [r14 + 0xac], 0
jmp 0x1401f1728
mov byte [r14 + 0xac], 1
jmp 0x1401f1728
mov cl, 1
call fcn.14032c978
mov qword [rsp + 0x70], rax
lea r8, [rsp + 0x68]
lea rdx, [rbp + 0x278]
lea rcx, [rbp + 0x3f8]
call fcn.14001a330
mov rdi, rax
mov dword [rbp + 0xa0], 0x54
mov ecx, dword [rbp + 0xa0]
add cl, 0x54
movsx edx, cl
xor edx, 0xb
mov dword [rbp + 0xa4], edx
mov ecx, dword [rbp + 0xa4]
mov edx, dword [rbp + 0xa0]
xor edx, ecx
xor edx, 0x7b
mov byte [rbp + 0xa8], dl
movsx ecx, byte [rbp + 0xa8]
mov eax, dword [rbp + 0xa0]
inc al
xor eax, ecx
xor eax, 0x7d
mov byte [rbp + 0xa9], al
movsx ecx, byte [rbp + 0xa9]
mov eax, dword [rbp + 0xa0]
add al, 2
xor eax, ecx
xor eax, 0x3a
mov byte [rbp + 0xaa], al
movsx ecx, byte [rbp + 0xaa]
mov eax, dword [rbp + 0xa0]
add al, 3
xor eax, ecx
xor eax, 0x20
mov byte [rbp + 0xab], al
movsx ecx, byte [rbp + 0xab]
mov eax, dword [rbp + 0xa0]
add al, 4
xor eax, ecx
xor eax, 0x55
mov byte [rbp + 0xac], al
movsx ecx, byte [rbp + 0xac]
mov eax, dword [rbp + 0xa0]
add al, 5
xor eax, ecx
xor eax, 0x6e
mov byte [rbp + 0xad], al
movsx ecx, byte [rbp + 0xad]
mov eax, dword [rbp + 0xa0]
add al, 6
xor eax, ecx
xor eax, 0x6b
mov byte [rbp + 0xae], al
movsx ecx, byte [rbp + 0xae]
mov eax, dword [rbp + 0xa0]
add al, 7
xor eax, ecx
xor eax, 0x6e
mov byte [rbp + 0xaf], al
movsx ecx, byte [rbp + 0xaf]
mov eax, dword [rbp + 0xa0]
add al, 8
xor eax, ecx
xor eax, 0x6f
mov byte [rbp + 0xb0], al
movsx ecx, byte [rbp + 0xb0]
mov eax, dword [rbp + 0xa0]
add al, 9
xor eax, ecx
xor eax, 0x77
mov byte [rbp + 0xb1], al
movsx ecx, byte [rbp + 0xb1]
mov eax, dword [rbp + 0xa0]
add al, 0xa
xor eax, ecx
xor eax, 0x6e
mov byte [rbp + 0xb2], al
movsx ecx, byte [rbp + 0xb2]
mov eax, dword [rbp + 0xa0]
add al, 0xb
xor eax, ecx
xor eax, 0x20
mov byte [rbp + 0xb3], al
movsx ecx, byte [rbp + 0xb3]
mov eax, dword [rbp + 0xa0]
add al, 0xc
xor eax, ecx
xor eax, 0x70
mov byte [rbp + 0xb4], al
movsx ecx, byte [rbp + 0xb4]
mov eax, dword [rbp + 0xa0]
add al, 0xd
xor eax, ecx
xor eax, 0x6f
mov byte [rbp + 0xb5], al
movsx ecx, byte [rbp + 0xb5]
mov eax, dword [rbp + 0xa0]
add al, 0xe
xor eax, ecx
xor eax, 0x6f
mov byte [rbp + 0xb6], al
movsx ecx, byte [rbp + 0xb6]
mov eax, dword [rbp + 0xa0]
add al, 0xf
xor eax, ecx
xor eax, 0x6c
mov byte [rbp + 0xb7], al
movsx ecx, byte [rbp + 0xb7]
mov eax, dword [rbp + 0xa0]
add al, 0x10
xor eax, ecx
xor eax, 0x20
mov byte [rbp + 0xb8], al
movsx ecx, byte [rbp + 0xb8]
mov eax, dword [rbp + 0xa0]
add al, 0x11
xor eax, ecx
xor eax, 0x70
mov byte [rbp + 0xb9], al
movsx ecx, byte [rbp + 0xb9]
mov eax, dword [rbp + 0xa0]
add al, 0x12
xor eax, ecx
xor eax, 0x61
mov byte [rbp + 0xba], al
movsx ecx, byte [rbp + 0xba]
mov eax, dword [rbp + 0xa0]
add al, 0x13
xor eax, ecx
xor eax, 0x72
mov byte [rbp + 0xbb], al
movsx ecx, byte [rbp + 0xbb]
mov eax, dword [rbp + 0xa0]
add al, 0x14
xor eax, ecx
xor eax, 0x61
mov byte [rbp + 0xbc], al
movsx ecx, byte [rbp + 0xbc]
mov eax, dword [rbp + 0xa0]
add al, 0x15
xor eax, ecx
xor eax, 0x6d
mov byte [rbp + 0xbd], al
movsx ecx, byte [rbp + 0xbd]
mov eax, dword [rbp + 0xa0]
add al, 0x16
xor eax, ecx
xor eax, 0x65
mov byte [rbp + 0xbe], al
movsx ecx, byte [rbp + 0xbe]
mov eax, dword [rbp + 0xa0]
add al, 0x17
xor eax, ecx
xor eax, 0x74
mov byte [rbp + 0xbf], al
movsx ecx, byte [rbp + 0xbf]
mov eax, dword [rbp + 0xa0]
add al, 0x18
xor eax, ecx
xor eax, 0x65
mov byte [rbp + 0xc0], al
movsx ecx, byte [rbp + 0xc0]
mov eax, dword [rbp + 0xa0]
add al, 0x19
xor eax, ecx
xor eax, 0x72
mov byte [rbp + 0xc1], al
movsx ecx, byte [rbp + 0xc1]
mov eax, dword [rbp + 0xa0]
add al, 0x1a
xor eax, ecx
xor eax, 0x20
mov byte [rbp + 0xc2], al
movsx ecx, byte [rbp + 0xc2]
mov eax, dword [rbp + 0xa0]
add al, 0x1b
xor eax, ecx
xor eax, 0x27
mov byte [rbp + 0xc3], al
movsx ecx, byte [rbp + 0xc3]
mov eax, dword [rbp + 0xa0]
add al, 0x1c
xor eax, ecx
xor eax, 0x7b
mov byte [rbp + 0xc4], al
movsx ecx, byte [rbp + 0xc4]
mov eax, dword [rbp + 0xa0]
add al, 0x1d
xor eax, ecx
xor eax, 0x7d
mov byte [rbp + 0xc5], al
movsx ecx, byte [rbp + 0xc5]
mov eax, dword [rbp + 0xa0]
add al, 0x1e
xor eax, ecx
xor eax, 0x27
mov byte [rbp + 0xc6], al
xor eax, eax
mov byte [rbp + 0xc7], al
movzx eax, byte [rbp + 0xa8]
lea rdx, [rbp + 0x3d8]
lea rcx, [rbp + 0xa0]
call fcn.140209bc0
nop
cmp qword [rax + 0x18], 0x10
jb 0x1401f16f4
mov rax, qword [rax]
mov r8, rdi
mov rdx, r13
mov rcx, rax
call fcn.140124890
nop
lea rcx, [rbp + 0x3d8]
call fcn.14001c970
nop
lea rcx, [rbp + 0x3f8]
call fcn.14001c970
nop
lea rcx, [rsp + 0x68]
call fcn.14001d000
nop
lea rcx, [rbp + 0x208]
call fcn.14001c970
nop
lea rcx, [rbp + 0x278]
jmp 0x1401f19b7
mov dword [rbp + 0x138], 0x15
mov dword [rbp + 0x13c], 0x55
mov eax, dword [rbp + 0x13c]
xor eax, 0x6e
mov byte [rbp + 0x140], al
movsx ecx, byte [rbp + 0x140]
xor ecx, 0x68
mov byte [rbp + 0x141], cl
movsx ecx, byte [rbp + 0x141]
xor ecx, 0x2f
mov byte [rbp + 0x142], cl
movsx ecx, byte [rbp + 0x142]
xor ecx, 0x35
mov byte [rbp + 0x143], cl
movsx ecx, byte [rbp + 0x143]
xor ecx, 0x5c
mov byte [rbp + 0x144], cl
movsx ecx, byte [rbp + 0x144]
xor ecx, 0x7b
mov byte [rbp + 0x145], cl
movsx ecx, byte [rbp + 0x145]
xor ecx, 0x63
mov byte [rbp + 0x146], cl
movsx ecx, byte [rbp + 0x146]
xor ecx, 0x74
mov byte [rbp + 0x147], cl
movsx ecx, byte [rbp + 0x147]
xor ecx, 0x79
mov byte [rbp + 0x148], cl
movsx ecx, byte [rbp + 0x148]
xor ecx, 0x7c
mov byte [rbp + 0x149], cl
movsx ecx, byte [rbp + 0x149]
xor ecx, 0x71
mov byte [rbp + 0x14a], cl
movsx ecx, byte [rbp + 0x14a]
xor ecx, 0x35
mov byte [rbp + 0x14b], cl
movsx ecx, byte [rbp + 0x14b]
xor ecx, 0x65
mov byte [rbp + 0x14c], cl
movsx ecx, byte [rbp + 0x14c]
xor ecx, 0x7a
mov byte [rbp + 0x14d], cl
movsx ecx, byte [rbp + 0x14d]
xor ecx, 0x7a
mov byte [rbp + 0x14e], cl
movsx ecx, byte [rbp + 0x14e]
xor ecx, 0x79
mov byte [rbp + 0x14f], cl
movsx ecx, byte [rbp + 0x14f]
xor ecx, 0x35
mov byte [rbp + 0x150], cl
movsx ecx, byte [rbp + 0x150]
xor ecx, 0x65
mov byte [rbp + 0x151], cl
movsx ecx, byte [rbp + 0x151]
xor ecx, 0x74
mov byte [rbp + 0x152], cl
movsx ecx, byte [rbp + 0x152]
xor ecx, 0x67
mov byte [rbp + 0x153], cl
movsx ecx, byte [rbp + 0x153]
xor ecx, 0x74
mov byte [rbp + 0x154], cl
movsx ecx, byte [rbp + 0x154]
xor ecx, 0x78
mov byte [rbp + 0x155], cl
movsx ecx, byte [rbp + 0x155]
xor ecx, 0x70
mov byte [rbp + 0x156], cl
movsx ecx, byte [rbp + 0x156]
xor ecx, 0x61
mov byte [rbp + 0x157], cl
movsx ecx, byte [rbp + 0x157]
xor ecx, 0x70
mov byte [rbp + 0x158], cl
movsx ecx, byte [rbp + 0x158]
xor ecx, 0x67
mov byte [rbp + 0x159], cl
movsx ecx, byte [rbp + 0x159]
xor ecx, 0x35
mov byte [rbp + 0x15a], cl
movsx ecx, byte [rbp + 0x15a]
xor ecx, 0x7c
mov byte [rbp + 0x15b], cl
movsx ecx, byte [rbp + 0x15b]
xor ecx, 0x7b
mov byte [rbp + 0x15c], cl
movsx ecx, byte [rbp + 0x15c]
xor ecx, 0x35
mov byte [rbp + 0x15d], cl
movsx ecx, byte [rbp + 0x15d]
xor ecx, 0x32
mov byte [rbp + 0x15e], cl
movsx ecx, byte [rbp + 0x15e]
xor ecx, 0x6e
mov byte [rbp + 0x15f], cl
movsx ecx, byte [rbp + 0x15f]
xor ecx, 0x68
mov byte [rbp + 0x160], cl
movsx ecx, byte [rbp + 0x160]
xor ecx, 0x32
mov byte [rbp + 0x161], cl
xor eax, eax
mov byte [rbp + 0x162], al
movzx eax, byte [rbp + 0x140]
lea rdx, [rbp + 0x418]
lea rcx, [rbp + 0x138]
call fcn.140159890
nop
cmp qword [rax + 0x18], 0x10
jb 0x1401f19a1
mov rax, qword [rax]
mov r8, r12
mov rdx, r13
mov rcx, rax
call fcn.1401d26a0
nop
lea rcx, [rbp + 0x418]
call fcn.14001c970
add rbx, 0x20
mov rdi, qword [rsp + 0x30]
cmp rbx, rdi
je 0x1401f24e4
jmp 0x1401f0730
mov dword [rbp + 0x168], 0x5f
mov dword [rbp + 0x16c], 0x4d
mov eax, dword [rbp + 0x16c]
xor eax, 0x24
mov byte [rbp + 0x170], al
movsx ecx, byte [rbp + 0x170]
xor ecx, 0x22
mov byte [rbp + 0x171], cl
movsx ecx, byte [rbp + 0x171]
xor ecx, 0x65
mov byte [rbp + 0x172], cl
movsx ecx, byte [rbp + 0x172]
xor ecx, 0x7f
mov byte [rbp + 0x173], cl
movsx ecx, byte [rbp + 0x173]
xor ecx, 0x16
mov byte [rbp + 0x174], cl
movsx ecx, byte [rbp + 0x174]
xor ecx, 0x31
mov byte [rbp + 0x175], cl
movsx ecx, byte [rbp + 0x175]
xor ecx, 0x29
mov byte [rbp + 0x176], cl
movsx ecx, byte [rbp + 0x176]
xor ecx, 0x3e
mov byte [rbp + 0x177], cl
movsx ecx, byte [rbp + 0x177]
xor ecx, 0x33
mov byte [rbp + 0x178], cl
movsx ecx, byte [rbp + 0x178]
xor ecx, 0x36
mov byte [rbp + 0x179], cl
movsx ecx, byte [rbp + 0x179]
xor ecx, 0x3b
mov byte [rbp + 0x17a], cl
movsx ecx, byte [rbp + 0x17a]
xor ecx, 0x7f
mov byte [rbp + 0x17b], cl
movsx ecx, byte [rbp + 0x17b]
xor ecx, 0x1a
mov byte [rbp + 0x17c], cl
movsx ecx, byte [rbp + 0x17c]
xor ecx, 0xc
mov byte [rbp + 0x17d], cl
movsx ecx, byte [rbp + 0x17d]
xor ecx, 0x12
mov byte [rbp + 0x17e], cl
movsx ecx, byte [rbp + 0x17e]
xor ecx, 0x7f
mov byte [rbp + 0x17f], cl
movsx ecx, byte [rbp + 0x17f]
xor ecx, 0x29
mov byte [rbp + 0x180], cl
movsx ecx, byte [rbp + 0x180]
xor ecx, 0x3e
mov byte [rbp + 0x181], cl
movsx ecx, byte [rbp + 0x181]
xor ecx, 0x33
mov byte [rbp + 0x182], cl
movsx ecx, byte [rbp + 0x182]
xor ecx, 0x2a
mov byte [rbp + 0x183], cl
movsx ecx, byte [rbp + 0x183]
xor ecx, 0x3a
mov byte [rbp + 0x184], cl
movsx ecx, byte [rbp + 0x184]
xor ecx, 0x7f
mov byte [rbp + 0x185], cl
movsx ecx, byte [rbp + 0x185]
xor ecx, 0x78
mov byte [rbp + 0x186], cl
movsx ecx, byte [rbp + 0x186]
xor ecx, 0x24
mov byte [rbp + 0x187], cl
movsx ecx, byte [rbp + 0x187]
xor ecx, 0x22
mov byte [rbp + 0x188], cl
movsx ecx, byte [rbp + 0x188]
xor ecx, 0x78
mov byte [rbp + 0x189], cl
xor eax, eax
mov byte [rbp + 0x18a], al
movzx eax, byte [rbp + 0x170]
lea rdx, [rbp + 0x438]
lea rcx, [rbp + 0x168]
call fcn.1401087f0
nop
cmp qword [rax + 0x18], 0x10
jb 0x1401f1bb3
mov rax, qword [rax]
lea r8, [rbp + 0x208]
mov rdx, r13
mov rcx, rax
call fcn.1401d26a0
nop
lea rcx, [rbp + 0x438]
call fcn.14001c970
jmp 0x1401f24b7
mov dword [rbp + 0xf0], 3
mov eax, dword [rbp + 0xf0]
add al, 3
movsx ecx, al
xor ecx, 0x43
mov dword [rbp + 0xf4], ecx
mov eax, dword [rbp + 0xf4]
mov ecx, dword [rbp + 0xf0]
xor ecx, eax
xor ecx, 0x7b
mov byte [rbp + 0xf8], cl
movsx ecx, byte [rbp + 0xf8]
mov eax, dword [rbp + 0xf0]
inc al
xor eax, ecx
xor eax, 0x7d
mov byte [rbp + 0xf9], al
movsx ecx, byte [rbp + 0xf9]
mov eax, dword [rbp + 0xf0]
add al, 2
xor eax, ecx
xor eax, 0x3a
mov byte [rbp + 0xfa], al
movsx ecx, byte [rbp + 0xfa]
mov eax, dword [rbp + 0xf0]
add al, 3
xor eax, ecx
xor eax, 0x20
mov byte [rbp + 0xfb], al
movsx ecx, byte [rbp + 0xfb]
mov eax, dword [rbp + 0xf0]
add al, 4
xor eax, ecx
xor eax, 0x49
mov byte [rbp + 0xfc], al
movsx ecx, byte [rbp + 0xfc]
mov eax, dword [rbp + 0xf0]
add al, 5
xor eax, ecx
xor eax, 0x6e
mov byte [rbp + 0xfd], al
movsx ecx, byte [rbp + 0xfd]
mov eax, dword [rbp + 0xf0]
add al, 6
xor eax, ecx
xor eax, 0x76
mov byte [rbp + 0xfe], al
movsx ecx, byte [rbp + 0xfe]
mov eax, dword [rbp + 0xf0]
add al, 7
xor eax, ecx
xor eax, 0x61
mov byte [rbp + 0xff], al
movsx ecx, byte [rbp + 0xff]
mov eax, dword [rbp + 0xf0]
add al, 8
xor eax, ecx
xor eax, 0x6c
mov byte [rbp + 0x100], al
movsx ecx, byte [rbp + 0x100]
mov eax, dword [rbp + 0xf0]
add al, 9
xor eax, ecx
xor eax, 0x69
mov byte [rbp + 0x101], al
movsx ecx, byte [rbp + 0x101]
mov eax, dword [rbp + 0xf0]
add al, 0xa
xor eax, ecx
xor eax, 0x64
mov byte [rbp + 0x102], al
movsx ecx, byte [rbp + 0x102]
mov eax, dword [rbp + 0xf0]
add al, 0xb
xor eax, ecx
xor eax, 0x20
mov byte [rbp + 0x103], al
movsx ecx, byte [rbp + 0x103]
mov eax, dword [rbp + 0xf0]
add al, 0xc
xor eax, ecx
xor eax, 0x50
mov byte [rbp + 0x104], al
movsx ecx, byte [rbp + 0x104]
mov eax, dword [rbp + 0xf0]
add al, 0xd
xor eax, ecx
xor eax, 0x52
mov byte [rbp + 0x105], al
movsx ecx, byte [rbp + 0x105]
mov eax, dword [rbp + 0xf0]
add al, 0xe
xor eax, ecx
xor eax, 0x4f
mov byte [rbp + 0x106], al
movsx ecx, byte [rbp + 0x106]
mov eax, dword [rbp + 0xf0]
add al, 0xf
xor eax, ecx
xor eax, 0x54
mov byte [rbp + 0x107], al
movsx ecx, byte [rbp + 0x107]
mov eax, dword [rbp + 0xf0]
add al, 0x10
xor eax, ecx
xor eax, 0x4f
mov byte [rbp + 0x108], al
movsx ecx, byte [rbp + 0x108]
mov eax, dword [rbp + 0xf0]
add al, 0x11
xor eax, ecx
xor eax, 0x20
mov byte [rbp + 0x109], al
movsx ecx, byte [rbp + 0x109]
mov eax, dword [rbp + 0xf0]
add al, 0x12
xor eax, ecx
xor eax, 0x76
mov byte [rbp + 0x10a], al
movsx ecx, byte [rbp + 0x10a]
mov eax, dword [rbp + 0xf0]
add al, 0x13
xor eax, ecx
xor eax, 0x61
mov byte [rbp + 0x10b], al
movsx ecx, byte [rbp + 0x10b]
mov eax, dword [rbp + 0xf0]
add al, 0x14
xor eax, ecx
xor eax, 0x6c
mov byte [rbp + 0x10c], al
movsx ecx, byte [rbp + 0x10c]
mov eax, dword [rbp + 0xf0]
add al, 0x15
xor eax, ecx
xor eax, 0x75
mov byte [rbp + 0x10d], al
movsx ecx, byte [rbp + 0x10d]
mov eax, dword [rbp + 0xf0]
add al, 0x16
xor eax, ecx
xor eax, 0x65
mov byte [rbp + 0x10e], al
movsx ecx, byte [rbp + 0x10e]
mov eax, dword [rbp + 0xf0]
add al, 0x17
xor eax, ecx
xor eax, 0x20
mov byte [rbp + 0x10f], al
movsx ecx, byte [rbp + 0x10f]
mov eax, dword [rbp + 0xf0]
add al, 0x18
xor eax, ecx
xor eax, 0x27
mov byte [rbp + 0x110], al
movsx ecx, byte [rbp + 0x110]
mov eax, dword [rbp + 0xf0]
add al, 0x19
xor eax, ecx
xor eax, 0x7b
mov byte [rbp + 0x111], al
movsx ecx, byte [rbp + 0x111]
mov eax, dword [rbp + 0xf0]
add al, 0x1a
xor eax, ecx
xor eax, 0x7d
mov byte [rbp + 0x112], al
movsx ecx, byte [rbp + 0x112]
mov eax, dword [rbp + 0xf0]
add al, 0x1b
xor eax, ecx
xor eax, 0x27
mov byte [rbp + 0x113], al
xor eax, eax
mov byte [rbp + 0x114], al
movzx eax, byte [rbp + 0xf8]
lea rdx, [rbp + 0x458]
lea rcx, [rbp + 0xf0]
call fcn.14016b7d0
nop
cmp qword [rax + 0x18], 0x10
jb 0x1401f1ef7
mov rax, qword [rax]
lea r8, [rbp + 0x208]
mov rdx, r13
mov rcx, rax
call fcn.1401d26a0
nop
lea rcx, [rbp + 0x458]
call fcn.14001c970
jmp 0x1401f24b7
mov dword [rbp + 0xc8], 0x29
mov eax, dword [rbp + 0xc8]
add al, 0x29
movsx ecx, al
xor ecx, 0x74
mov dword [rbp + 0xcc], ecx
mov eax, dword [rbp + 0xcc]
mov ecx, dword [rbp + 0xc8]
xor ecx, eax
xor ecx, 0x7b
mov byte [rbp + 0xd0], cl
movsx ecx, byte [rbp + 0xd0]
mov eax, dword [rbp + 0xc8]
inc al
xor eax, ecx
xor eax, 0x7d
mov byte [rbp + 0xd1], al
movsx ecx, byte [rbp + 0xd1]
mov eax, dword [rbp + 0xc8]
add al, 2
xor eax, ecx
xor eax, 0x3a
mov byte [rbp + 0xd2], al
movsx ecx, byte [rbp + 0xd2]
mov eax, dword [rbp + 0xc8]
add al, 3
xor eax, ecx
xor eax, 0x20
mov byte [rbp + 0xd3], al
movsx ecx, byte [rbp + 0xd3]
mov eax, dword [rbp + 0xc8]
add al, 4
xor eax, ecx
xor eax, 0x49
mov byte [rbp + 0xd4], al
movsx ecx, byte [rbp + 0xd4]
mov eax, dword [rbp + 0xc8]
add al, 5
xor eax, ecx
xor eax, 0x6e
mov byte [rbp + 0xd5], al
movsx ecx, byte [rbp + 0xd5]
mov eax, dword [rbp + 0xc8]
add al, 6
xor eax, ecx
xor eax, 0x76
mov byte [rbp + 0xd6], al
movsx ecx, byte [rbp + 0xd6]
mov eax, dword [rbp + 0xc8]
add al, 7
xor eax, ecx
xor eax, 0x61
mov byte [rbp + 0xd7], al
movsx ecx, byte [rbp + 0xd7]
mov eax, dword [rbp + 0xc8]
add al, 8
xor eax, ecx
xor eax, 0x6c
mov byte [rbp + 0xd8], al
movsx ecx, byte [rbp + 0xd8]
mov eax, dword [rbp + 0xc8]
add al, 9
xor eax, ecx
xor eax, 0x69
mov byte [rbp + 0xd9], al
movsx ecx, byte [rbp + 0xd9]
mov eax, dword [rbp + 0xc8]
add al, 0xa
xor eax, ecx
xor eax, 0x64
mov byte [rbp + 0xda], al
movsx ecx, byte [rbp + 0xda]
mov eax, dword [rbp + 0xc8]
add al, 0xb
xor eax, ecx
xor eax, 0x20
mov byte [rbp + 0xdb], al
movsx ecx, byte [rbp + 0xdb]
mov eax, dword [rbp + 0xc8]
add al, 0xc
xor eax, ecx
xor eax, 0x43
mov byte [rbp + 0xdc], al
movsx ecx, byte [rbp + 0xdc]
mov eax, dword [rbp + 0xc8]
add al, 0xd
xor eax, ecx
xor eax, 0x4f
mov byte [rbp + 0xdd], al
movsx ecx, byte [rbp + 0xdd]
mov eax, dword [rbp + 0xc8]
add al, 0xe
xor eax, ecx
xor eax, 0x49
mov byte [rbp + 0xde], al
movsx ecx, byte [rbp + 0xde]
mov eax, dword [rbp + 0xc8]
add al, 0xf
xor eax, ecx
xor eax, 0x4e
mov byte [rbp + 0xdf], al
movsx ecx, byte [rbp + 0xdf]
mov eax, dword [rbp + 0xc8]
add al, 0x10
xor eax, ecx
xor eax, 0x20
mov byte [rbp + 0xe0], al
movsx ecx, byte [rbp + 0xe0]
mov eax, dword [rbp + 0xc8]
add al, 0x11
xor eax, ecx
xor eax, 0x76
mov byte [rbp + 0xe1], al
movsx ecx, byte [rbp + 0xe1]
mov eax, dword [rbp + 0xc8]
add al, 0x12
xor eax, ecx
xor eax, 0x61
mov byte [rbp + 0xe2], al
movsx ecx, byte [rbp + 0xe2]
mov eax, dword [rbp + 0xc8]
add al, 0x13
xor eax, ecx
xor eax, 0x6c
mov byte [rbp + 0xe3], al
movsx ecx, byte [rbp + 0xe3]
mov eax, dword [rbp + 0xc8]
add al, 0x14
xor eax, ecx
xor eax, 0x75
mov byte [rbp + 0xe4], al
movsx ecx, byte [rbp + 0xe4]
mov eax, dword [rbp + 0xc8]
add al, 0x15
xor eax, ecx
xor eax, 0x65
mov byte [rbp + 0xe5], al
movsx ecx, byte [rbp + 0xe5]
mov eax, dword [rbp + 0xc8]
add al, 0x16
xor eax, ecx
xor eax, 0x20
mov byte [rbp + 0xe6], al
movsx ecx, byte [rbp + 0xe6]
mov eax, dword [rbp + 0xc8]
add al, 0x17
xor eax, ecx
xor eax, 0x27
mov byte [rbp + 0xe7], al
movsx ecx, byte [rbp + 0xe7]
mov eax, dword [rbp + 0xc8]
add al, 0x18
xor eax, ecx
xor eax, 0x7b
mov byte [rbp + 0xe8], al
movsx ecx, byte [rbp + 0xe8]
mov eax, dword [rbp + 0xc8]
add al, 0x19
xor eax, ecx
xor eax, 0x7d
mov byte [rbp + 0xe9], al
movsx ecx, byte [rbp + 0xe9]
mov eax, dword [rbp + 0xc8]
add al, 0x1a
xor eax, ecx
xor eax, 0x27
mov byte [rbp + 0xea], al
xor eax, eax
mov byte [rbp + 0xeb], al
movzx eax, byte [rbp + 0xd0]
lea rdx, [rbp + 0x478]
lea rcx, [rbp + 0xc8]
call fcn.1401570a0
nop
cmp qword [rax + 0x18], 0x10
jb 0x1401f2221
mov rax, qword [rax]
lea r8, [rbp + 0x208]
mov rdx, r13
mov rcx, rax
call fcn.1401d26a0
nop
lea rcx, [rbp + 0x478]
call fcn.14001c970
jmp 0x1401f24b7
mov cl, 1
call fcn.14032c978
mov qword [rsp + 0x50], rax
lea r8, [rsp + 0x48]
lea rdx, [rbp + 0x278]
lea rcx, [rbp + 0x4b8]
call fcn.14001a330
mov rbx, rax
mov dword [rbp + 0x118], 0x5f
mov ecx, dword [rbp + 0x118]
xor ecx, 0x7b
add ecx, 8
mov byte [rbp + 0x11c], cl
movsx edx, byte [rbp + 0x11c]
xor edx, 0x7d
add edx, 8
mov byte [rbp + 0x11d], dl
movsx ecx, byte [rbp + 0x11d]
xor ecx, 0x3a
add ecx, 8
mov byte [rbp + 0x11e], cl
movsx ecx, byte [rbp + 0x11e]
xor ecx, 0x20
add ecx, 8
mov byte [rbp + 0x11f], cl
movsx ecx, byte [rbp + 0x11f]
xor ecx, 0x49
add ecx, 8
mov byte [rbp + 0x120], cl
movsx ecx, byte [rbp + 0x120]
xor ecx, 0x6e
add ecx, 8
mov byte [rbp + 0x121], cl
movsx ecx, byte [rbp + 0x121]
xor ecx, 0x76
add ecx, 8
mov byte [rbp + 0x122], cl
movsx ecx, byte [rbp + 0x122]
xor ecx, 0x61
add ecx, 8
mov byte [rbp + 0x123], cl
movsx ecx, byte [rbp + 0x123]
xor ecx, 0x6c
add ecx, 8
mov byte [rbp + 0x124], cl
movsx ecx, byte [rbp + 0x124]
xor ecx, 0x69
add ecx, 8
mov byte [rbp + 0x125], cl
movsx ecx, byte [rbp + 0x125]
xor ecx, 0x64
add ecx, 8
mov byte [rbp + 0x126], cl
movsx ecx, byte [rbp + 0x126]
xor ecx, 0x20
add ecx, 8
mov byte [rbp + 0x127], cl
movsx ecx, byte [rbp + 0x127]
xor ecx, 0x7b
add ecx, 8
mov byte [rbp + 0x128], cl
movsx ecx, byte [rbp + 0x128]
xor ecx, 0x7d
add ecx, 8
mov byte [rbp + 0x129], cl
movsx ecx, byte [rbp + 0x129]
xor ecx, 0x20
add ecx, 8
mov byte [rbp + 0x12a], cl
movsx ecx, byte [rbp + 0x12a]
xor ecx, 0x76
add ecx, 8
mov byte [rbp + 0x12b], cl
movsx ecx, byte [rbp + 0x12b]
xor ecx, 0x61
add ecx, 8
mov byte [rbp + 0x12c], cl
movsx ecx, byte [rbp + 0x12c]
xor ecx, 0x6c
add ecx, 8
mov byte [rbp + 0x12d], cl
movsx ecx, byte [rbp + 0x12d]
xor ecx, 0x75
add ecx, 8
mov byte [rbp + 0x12e], cl
movsx ecx, byte [rbp + 0x12e]
xor ecx, 0x65
add ecx, 8
mov byte [rbp + 0x12f], cl
movsx ecx, byte [rbp + 0x12f]
xor ecx, 0x20
add ecx, 8
mov byte [rbp + 0x130], cl
movsx ecx, byte [rbp + 0x130]
xor ecx, 0x27
add ecx, 8
mov byte [rbp + 0x131], cl
movsx ecx, byte [rbp + 0x131]
xor ecx, 0x7b
add ecx, 8
mov byte [rbp + 0x132], cl
movsx ecx, byte [rbp + 0x132]
xor ecx, 0x7d
add ecx, 8
mov byte [rbp + 0x133], cl
movsx ecx, byte [rbp + 0x133]
xor ecx, 0x27
add ecx, 8
mov byte [rbp + 0x134], cl
mov byte [rbp + 0x135], 0
movzx eax, byte [rbp + 0x11c]
lea rdx, [rbp + 0x578]
lea rcx, [rbp + 0x118]
call fcn.14020ad60
nop
cmp qword [rax + 0x18], 0x10
jb 0x1401f247c
mov rax, qword [rax]
lea r9, [rbp + 0x208]
mov r8, r13
mov rdx, rbx
mov rcx, rax
call fcn.1401d2be0
nop
lea rcx, [rbp + 0x578]
call fcn.14001c970
nop
lea rcx, [rbp + 0x4b8]
call fcn.14001c970
nop
lea rcx, [rsp + 0x48]
call fcn.14001d000
nop
lea rcx, [rbp + 0x208]
call fcn.14001c970
nop
lea rcx, [rbp + 0x278]
call fcn.14001c970
xor r14b, r14b
mov rsi, qword [rsp + 0x38]
mov rdi, qword [rsp + 0x30]
mov rbx, qword [rsp + 0x28]
jmp 0x1401f250c
mov rsi, qword [rsp + 0x38]
mov rbx, qword [rsp + 0x28]
cmp r15d, 1
jne 0x1401f2509
cmp dword [r14 + 0xa4], 0
jne 0x1401f2509
mov dword [r14 + 0xa4], 2
mov r14b, 1
lea rcx, [rbp + 0x298]
call fcn.14001c970
nop
lea rcx, [rbp + 0x40]
call fcn.14006bf20
nop
lea rax, [0x1403d0630]
mov qword [rbp + 0x40], rax
lea rcx, [rbp + 0x40]
call fcn.14032dce0
nop
test rbx, rbx
je 0x1401f256a
movzx r9d, byte [rsp + 0x24]
lea r8, [rsp + 0x28]
mov rdx, rdi
mov rcx, rbx
call fcn.140046810
sub rsi, rbx
sar rsi, 5
mov r8, rsi
mov rdx, rbx
lea rcx, [rsp + 0x28]
call fcn.140052850
movzx eax, r14b
mov rcx, qword [rbp + 0x598]
xor rcx, rsp
call fcn.14034de80
mov rbx, qword [rsp + 0x6e0]
add rsp, 0x6a0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret