Function at 0x14004fba0
Capabilities:
Authenticate hmac
Encode data using xor

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
mov eax, 0x1280
call fcn.14005c610
sub rsp, rax
cmp byte [0x1400b42f8], 0
je 0x14004fe69
movaps xmm0, xmmword [0x140094160]
movaps xmmword [rsp + 0x260], xmm0
movabs rax, 0xcd0c080b3dc41e03
mov qword [rsp + 0x270], rax
mov word [rsp + 0x278], 0xfdcc
mov dword [rsp + 0x27a], 0
mov dword [rsp + 0x27d], 0
lea rsi, [rsp + 0x260]
call fcn.140044ae0
mov rdi, qword [rax]
call fcn.140044af0
mov rax, qword [rax]
xor ecx, ecx
jmp 0x14004fc67
lea eax, [rcx - 0x7af5efd5]
lea r8d, [rcx + rdx]
add r8d, 0x850a102b
and eax, edx
add eax, eax
sub r8d, eax
add r8b, 0xd3
mov byte [rsp + rcx + 0x260], r8b
mov rax, rdi
dec rcx
inc rcx
cmp rcx, 0x21
jae 0x14004fe61
cmp rdi, rcx
ja 0x14004fe4f
movzx r9d, byte [rsp + rcx + 0x260]
movzx edx, r9b
lea r8, [rax + 1]
cmp rdi, r8
jae 0x14004fce0
cmp rax, rcx
ja 0x14004fe59
lea r9, [rdi + rax]
cmp r9, rcx
ja 0x14004fc0d
cmp rdi, r8
je 0x14004fc30
lea r10, [rax + 2]
cmp rdi, r10
je 0x14004fc57
lea r10, [rax + 3]
cmp rdi, r10
jne 0x14004fde9
lea r9d, [rcx + 0x1dab2bc5]
lea r8d, [rcx + rdx]
add r8d, 0x1dab2bc5
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x9d
jmp 0x14004fdc8
jne 0x14004fcf0
mov r8, rax
jmp 0x14004fd6a
lea r9, [rax + 2]
cmp rdi, r9
jne 0x14004fd73
lea r9d, [rcx + 0x4e8e2e9f]
lea r10d, [rdx + rcx]
add r10d, 0x4e8e2e9f
and r9d, edx
add r9d, r9d
sub r10d, r9d
add r10b, 0xa7
mov byte [rsp + rcx + 0x260], r10b
movzx r9d, r10b
not rax
add rax, rcx
sub rax, r9
lea ecx, [rax + 0x40ef363c]
lea r9d, [rax + rdx]
add r9d, 0x40ef363c
and ecx, edx
add ecx, ecx
sub r9d, ecx
add r9b, 0x5c
mov byte [rsp + rax + 0x260], r9b
sub rax, rdi
inc rdi
movzx r9d, byte [rsp + rax + 0x25e]
add rax, 0xfffffffffffffffe
mov rcx, rax
mov rax, r8
movzx edx, r9b
add rcx, r8
jmp 0x14004fdcf
lea r9, [rax + 3]
cmp rdi, r9
jne 0x14004fdd7
lea r9d, [rcx + 0x4eed62f9]
lea r8d, [rcx + rdx]
add r8d, 0x4eed62f9
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x31
lea r9d, [rcx + 0x69cc1f65]
lea r10d, [rcx + rdx]
add r10d, 0x69cc1f65
and r9d, edx
add r9d, r9d
sub r10d, r9d
add r10b, r8b
add r10b, 0x3d
mov byte [rsp + rcx + 0x260], r10b
add rdi, rax
movzx edx, r8b
not rdx
add rcx, rdx
jmp 0x14004fc5a
lea r9, [rax + 4]
cmp rdi, r9
jne 0x14004fc86
jmp 0x14004fc57
lea r10, [rax + 4]
cmp rdi, r10
je 0x14004fcf9
lea r8, [rax + 5]
cmp rdi, r8
jne 0x14004fe23
lea r10d, [rcx + 0x1adebc6c]
lea r8d, [rcx + rdx]
add r8d, 0x1adebc6c
and r10d, edx
add r10d, r10d
sub r8d, r10d
add r8b, 0xc
mov rdi, r9
jmp 0x14004fdc8
lea r8d, [rcx - 0xd9ef863]
lea r9d, [rcx + rdx]
add r9d, 0xf261079d
and r8d, edx
add r8d, r8d
sub r9d, r8d
add r9b, 0xb5
mov byte [rsp + rcx + 0x260], r9b
jmp 0x14004fc5a
lea rsi, [rsp + 0x522779]
jmp 0x14004fe61
lea rsi, [rsp + 0x1711fdc]
mov rcx, rsi
call fcn.140077020
xorps xmm0, xmm0
movaps xmmword [rsp + 0x160], xmm0
movaps xmmword [rsp + 0x170], xmm0
movaps xmmword [rsp + 0x180], xmm0
movaps xmmword [rsp + 0x190], xmm0
movaps xmmword [rsp + 0x1a0], xmm0
movaps xmmword [rsp + 0x1b0], xmm0
movaps xmmword [rsp + 0x1c0], xmm0
movaps xmmword [rsp + 0x1d0], xmm0
movaps xmmword [rsp + 0x1e0], xmm0
movaps xmmword [rsp + 0x1f0], xmm0
movaps xmmword [rsp + 0x200], xmm0
movaps xmmword [rsp + 0x210], xmm0
movaps xmmword [rsp + 0x220], xmm0
movaps xmmword [rsp + 0x230], xmm0
movaps xmmword [rsp + 0x240], xmm0
movaps xmmword [rsp + 0x250], xmm0
movabs rax, 0xaeb1afbd8dbfb55b
mov qword [rsp + 0x260], rax
mov dword [rsp + 0x268], 0xad43abbd
mov word [rsp + 0x26c], 0x9997
mov byte [rsp + 0x26e], 0x14
mov word [rsp + 0x26f], 0
lea rsi, [rsp + 0x260]
call fcn.140044ae0
mov rdi, qword [rax]
call fcn.140044af0
mov rcx, qword [rax]
xor eax, eax
jmp 0x14004ff6d
mov r8, rcx
movzx ecx, r9b
add rax, r8
add rax, rcx
mov rcx, r8
inc rax
cmp rax, 0x11
jae 0x14005028d
cmp rdi, rax
ja 0x140050283
movzx r9d, byte [rsp + rax + 0x260]
movzx edx, r9b
lea r8, [rcx + 1]
cmp rdi, r8
jae 0x140050000
cmp rcx, rax
ja 0x140050292
lea r11, [rcx + 8]
cmp rdi, r11
jb 0x14004ffa7
cmp rdi, r8
je 0x140050130
lea r10, [rdi + rcx]
cmp r10, rax
jbe 0x140050046
lea r9, [rcx + 9]
cmp rdi, r9
je 0x140050130
lea r9, [rcx + 3]
cmp rdi, r9
jne 0x1400500a4
lea r8d, [rax - 0x2e8093d8]
lea r9d, [rax + rdx]
add r9d, 0xd17f6c28
and r8d, edx
add r8d, r8d
sub r9d, r8d
add r9b, 0xe8
mov r10, rdi
jmp 0x14005022d
je 0x14004ff50
lea r10, [rcx + 2]
cmp rdi, r10
je 0x1400500b0
lea r10, [rcx + 3]
cmp rdi, r10
jne 0x140050092
lea r8d, [rax + 0x67c3232f]
lea r9d, [rax + rdx]
add r9d, 0x67c3232f
and r8d, edx
add r8d, r8d
sub r9d, r8d
add r9b, 0xb7
add rdi, rcx
mov r10, rdi
jmp 0x140050203
cmp r10, 1
je 0x1400500b0
lea r11, [rcx + 3]
cmp rdi, r11
jbe 0x140050123
cmp rdi, 0xa
jae 0x1400501e1
cmp rdi, r8
je 0x14004ff50
lea ebx, [rax + 0x21f61b3f]
lea r9d, [rax + rdx]
add r9d, 0x21f61b3f
and ebx, edx
add ebx, ebx
sub r9d, ebx
add r9b, 0x47
cmp rdi, r11
je 0x1400500b0
jmp 0x1400501b7
lea r10, [rcx + 4]
cmp rdi, r10
jne 0x14004ff8c
jmp 0x140050130
cmp rdi, r11
jne 0x14004ff2d
nop dword [rax]
lea r9d, [rax + 0x69bc48f9]
lea r10d, [rax + rdx]
add r10d, 0x69bc48f9
and r9d, edx
add r9d, r9d
sub r10d, r9d
add r10b, 0x31
mov byte [rsp + rax + 0x260], r10b
movzx r9d, r10b
not rcx
add rcx, rax
sub rcx, r9
lea eax, [rcx + 0x22f2ae24]
lea r9d, [rcx + rdx]
add r9d, 0x22f2ae24
and eax, edx
add eax, eax
sub r9d, eax
add r9b, 4
mov byte [rsp + rcx + 0x260], r9b
sub rcx, rdi
inc rdi
movzx r9d, byte [rsp + rcx + 0x25e]
add rcx, 0xfffffffffffffffe
mov rax, rcx
jmp 0x14004ff53
cmp rdi, r8
jne 0x14005015f
nop dword [rax + rax]
lea ecx, [rax - 0x7b1d4bb3]
lea r9d, [rax + rdx]
add r9d, 0x84e2b44d
and ecx, edx
add ecx, ecx
sub r9d, ecx
add r9b, 0xe5
mov byte [rsp + rax + 0x260], r9b
mov rcx, r8
dec rax
jmp 0x14004ff60
lea rbx, [rcx + 2]
cmp rdi, rbx
jne 0x14005018c
lea r8d, [rax + 0x5e160eed]
lea r9d, [rax + rdx]
add r9d, 0x5e160eed
and r8d, edx
add r8d, r8d
sub r9d, r8d
add r9b, 0x85
jmp 0x14005022d
cmp rdi, 0xa
jae 0x1400501e1
lea ebx, [rax - 0x46c99ad5]
lea r9d, [rax + rdx]
add r9d, 0xb936652b
and ebx, edx
add ebx, ebx
sub r9d, ebx
add r9b, 0xd3
cmp rdi, r11
je 0x1400500b0
lea r8, [rcx + 2]
cmp rdi, r8
jne 0x14005023f
lea r8d, [rax - 0x7073a48c]
lea r9d, [rax + rdx]
add r9d, 0x8f8c5b74
and r8d, edx
add r8d, r8d
sub r9d, r8d
add r9b, 0xd4
jmp 0x14005022d
lea r8d, [rax + 0x3e191978]
lea r11d, [rax + rdx]
add r11d, 0x3e191978
and r8d, edx
add r8d, r8d
sub r11d, r8d
add r9b, r11b
add r9b, 0xb8
lea r8d, [rax - 0x8b0815d]
lea r11d, [rdx + rax]
add r11d, 0xf74f7ea3
and r8d, edx
add r8d, r8d
sub r11d, r8d
add r11b, r9b
add r11b, 0x8b
mov byte [rsp + rax + 0x260], r11b
movzx edx, r9b
not rdx
add rax, rdx
mov rdi, r10
jmp 0x14004ff60
lea r8, [rcx + 5]
cmp rdi, r8
jne 0x140050269
lea r8d, [rax + 0x1f925ca]
lea r9d, [rax + rdx]
add r9d, 0x1f925ca
and r8d, edx
add r8d, r8d
sub r9d, r8d
add r9b, 0x7a
jmp 0x140050203
lea rdx, [rcx + 4]
cmp rdi, rdx
je 0x140050157
mov byte [rsp + rax + 0x260], r9b
jmp 0x14004ff60
lea r8, [rsp + 0x142606f]
jmp 0x14005029a
mov r8, rsi
jmp 0x14005029a
lea r8, [rsp + 0x14bfb44]
lea rdi, [rsp + 0x160]
mov edx, 0xff
mov rcx, rdi
call fcn.14004dd80
mov rcx, rdi
call fcn.1400778d0
mov rdi, rax
lea ebp, [rax + 1]
xorps xmm0, xmm0
movaps xmmword [rsp + 0x60], xmm0
movaps xmmword [rsp + 0x70], xmm0
movaps xmmword [rsp + 0x80], xmm0
movaps xmmword [rsp + 0x90], xmm0
movaps xmmword [rsp + 0xa0], xmm0
movaps xmmword [rsp + 0xb0], xmm0
movaps xmmword [rsp + 0xc0], xmm0
movaps xmmword [rsp + 0xd0], xmm0
movaps xmmword [rsp + 0xe0], xmm0
movaps xmmword [rsp + 0xf0], xmm0
movaps xmmword [rsp + 0x100], xmm0
movaps xmmword [rsp + 0x110], xmm0
movaps xmmword [rsp + 0x120], xmm0
movaps xmmword [rsp + 0x130], xmm0
movaps xmmword [rsp + 0x140], xmm0
movaps xmmword [rsp + 0x150], xmm0
movaps xmm0, xmmword [0x140094170]
movaps xmmword [rsp + 0x260], xmm0
movaps xmm0, xmmword [0x140094180]
movaps xmmword [rsp + 0x270], xmm0
movaps xmm0, xmmword [0x140094190]
movaps xmmword [rsp + 0x280], xmm0
movaps xmm0, xmmword [0x1400941a0]
movaps xmmword [rsp + 0x290], xmm0
movabs rax, 0xa9af6566a6baa46e
mov qword [rsp + 0x2a0], rax
mov word [rsp + 0x2a8], 0xbdbb
mov byte [rsp + 0x2aa], 0x4a
mov qword [rsp + 0x2ab], 0
mov qword [rsp + 0x2b1], 0
call fcn.140044ae0
mov rbx, qword [rax]
call fcn.140044af0
mov rcx, qword [rax]
xor eax, eax
jmp 0x140050452
lea r8d, [rax + rdx]
mov ecx, eax
and ecx, edx
add ecx, ecx
sub r8d, ecx
mov rbx, r15
mov rcx, r12
lea r9d, [rax + 0x237e72c0]
lea r10d, [rax + rdx]
add r10d, 0x237e72c0
and r9d, edx
add r9d, r9d
sub r10d, r9d
add r10b, 0xc0
mov byte [rsp + rax + 0x260], r10b
lea r9, [rcx + 1]
movzx r10d, r10b
not rcx
sub rax, r10
add rax, rcx
mov rcx, r9
lea r9d, [rax + rdx]
and edx, eax
add edx, edx
sub r9d, edx
mov byte [rsp + rax + 0x260], r9b
sub rax, rbx
inc rbx
movzx edx, byte [rsp + rax + 0x25e]
add rax, 0xfffffffffffffffe
add rdx, rcx
add rax, rdx
inc rax
mov r14d, r8d
cmp rax, 0x59
jae 0x140050c35
cmp rbx, rax
ja 0x140050c23
movzx edx, byte [rsp + rax + 0x260]
lea r9d, [rax - 0x12cef7c0]
lea r8d, [rax + rdx]
add r8d, 0xed310840
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x40
lea r10d, [rax + 0x7505ad40]
lea r9d, [rax + rdx]
add r9d, 0x7505ad40
and r10d, edx
add r10d, r10d
sub r9d, r10d
add r9b, 0x40
lea r11d, [rax - 0x10c295c0]
lea r10d, [rax + rdx]
add r10d, 0xef3d6a40
and r11d, edx
add r11d, r11d
sub r10d, r11d
add r10b, 0x40
lea r15d, [rax + 0x14db59c0]
lea r11d, [rax + rdx]
add r11d, 0x14db59c0
and r15d, edx
add r15d, r15d
sub r11d, r15d
add r11b, 0xc0
lea r12, [rcx + 1]
mov r15d, r8d
cmp rbx, r12
jb 0x14005051b
je 0x140050840
lea r15, [rcx + 2]
cmp rbx, r15
je 0x140050864
lea r15, [rcx + 3]
cmp rbx, r15
je 0x140050888
lea r12, [rcx + 5]
mov r15d, r14d
cmp rbx, r12
je 0x1400508ac
cmp rcx, rax
ja 0x140050c2d
lea r14, [rbx + rcx]
cmp r14, rax
jbe 0x1400508c6
lea r15, [rcx + 0x400]
mov r14, rbx
cmp rbx, r15
je 0x14005067e
lea rbx, [rcx + 0x40]
cmp r14, rbx
je 0x1400506a3
lea rbx, [rcx + 0x80]
cmp r14, rbx
je 0x1400506b3
lea r15, [rcx + 0x10]
cmp r14, r15
je 0x1400506d0
lea rbx, [rcx + 8]
cmp r14, rbx
je 0x1400506e8
lea r14, [rcx + 0x1c]
cmp rbx, r14
jb 0x140050c00
cmp rbx, r15
jb 0x140050bd0
lea r14, [rcx + 0x14]
cmp rbx, r14
jb 0x140050669
lea r14, [rcx + 0xd]
cmp rbx, r14
jb 0x14005064a
lea r15, [rcx + 0x4d]
cmp rbx, r15
jb 0x14005070d
lea r14, [rcx + 0x100c]
cmp rbx, r14
jb 0x140050735
lea r12, [rcx + 0x104d]
lea rbx, [rcx + 0x124d]
cmp r15, rbx
ja 0x14005076f
lea rbx, [rcx + 0x204d]
cmp r15, rbx
ja 0x140050787
lea rbx, [rcx + 0x108e]
cmp r15, rbx
ja 0x1400503c9
lea r14, [rcx + 0x108f]
cmp r15, r14
ja 0x1400507ac
lea rbx, [rcx + 0x106d]
cmp r15, rbx
ja 0x140050805
lea rbx, [rcx + 0x1056]
add rcx, 0x10af
cmp r15, rbx
cmova r14, r15
cmova rcx, r12
lea rbx, [rcx + 0x400]
cmp r14, rbx
jne 0x140050544
jmp 0x14005067e
add rcx, 0xc
cmp rcx, rax
ja 0x140050c2d
lea r14, [rbx + rcx]
cmp r14, rax
ja 0x140050531
jmp 0x1400508c3
add rcx, 0xc
mov r14d, r11d
cmp rbx, rax
jbe 0x1400504df
jmp 0x140050c23
mov r8d, eax
or r8d, 0x80
add r8d, edx
mov r9d, eax
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x80
mov rbx, r14
jmp 0x1400509a5
lea r8d, [rax + rdx]
and edx, eax
add edx, edx
sub r8d, edx
jmp 0x1400509cf
mov r8d, eax
or r8d, 0x80
add r8d, edx
and edx, eax
add edx, edx
sub r8d, edx
add r8b, 0x80
jmp 0x1400509d2
lea r8d, [rax + rdx]
mov r9d, eax
and r9d, edx
add r9d, r9d
sub r8d, r9d
mov rbx, r14
jmp 0x1400507cc
mov r8d, eax
or r8d, 0x80
add r8d, edx
mov r9d, eax
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x80
mov rbx, r14
jmp 0x14005043c
add rcx, 0xc
lea r9d, [rax - 0x5bfe74c0]
lea r8d, [rax + rdx]
add r8d, 0xa4018b40
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x40
jmp 0x1400508e6
add rcx, 0xc
lea r9d, [rax + 0x58c5ac40]
lea r8d, [rax + rdx]
add r8d, 0x58c5ac40
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x40
cmp rcx, 0x29
ja 0x140050828
mov byte [rsp + rax + 0x260], r8b
jmp 0x140050442
lea r8d, [rax + rdx]
mov ecx, eax
and ecx, edx
add ecx, ecx
sub r8d, ecx
mov rbx, r15
mov rcx, r12
jmp 0x14005043c
mov r8d, eax
or r8d, 0x80
add r8d, edx
mov ecx, eax
and ecx, edx
add ecx, ecx
sub r8d, ecx
add r8b, 0x80
mov rbx, r15
mov rcx, r12
jmp 0x140050417
mov r8d, eax
or r8d, 0x80
add r8d, edx
mov ecx, eax
and ecx, edx
add ecx, ecx
sub r8d, ecx
add r8b, 0x80
mov rbx, r15
mov rcx, r12
lea r9d, [rax + 0x491c6240]
lea r10d, [rax + rdx]
add r10d, 0x491c6240
and r9d, edx
add r9d, r9d
sub r10d, r9d
add r10b, r8b
add r10b, 0x40
mov byte [rsp + rax + 0x260], r10b
add rbx, rcx
movzx edx, r8b
not rdx
jmp 0x14005043f
mov r8d, eax
or r8d, 0x80
add r8d, edx
and edx, eax
add edx, edx
sub r8d, edx
add r8b, 0x80
mov r14, r15
mov rcx, r12
jmp 0x1400509cf
lea r8d, [rax + rdx]
mov r9d, eax
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, r8b
jmp 0x1400509a5
lea r9d, [rax - 0x386ce740]
lea r8d, [rax + rdx]
add r8d, 0xc79318c0
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0xc0
jmp 0x14005043c
lea r9d, [rax - 0x5e0ad6c0]
lea r8d, [rax + rdx]
add r8d, 0xa1f52940
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x40
jmp 0x140050417
lea r9d, [rax + 0x7c5739c0]
lea r8d, [rax + rdx]
add r8d, 0x7c5739c0
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0xc0
jmp 0x1400503dc
lea r9d, [rax - 0x1a208440]
lea r8d, [rax + rdx]
add r8d, 0xe5df7bc0
jmp 0x140050a3b
mov r15d, r10d
lea r10, [rcx + 0x20]
cmp rbx, r10
movzx r10d, r9b
movzx r9d, r15b
cmovb r9d, r10d
lea r10, [rcx + 5]
cmp rbx, r10
jae 0x1400509dd
lea r9, [rcx + rbx]
cmp r9, 0x3e8
jne 0x140050918
mov r8d, eax
or r8d, 0x80
add r8d, edx
mov r9d, eax
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x80
sub r8b, dl
jmp 0x1400503dc
lea r10, [rcx + 0x64]
cmp rbx, r10
jbe 0x140050979
lea r10d, [rax - 0x7b5108c0]
lea r8d, [rax + rdx]
add r8d, 0x84aef740
and r10d, edx
add r10d, r10d
sub r8d, r10d
add r8b, 0x40
cmp rbx, 9
ja 0x140050a08
lea r10, [rcx + 6]
cmp rbx, r10
jbe 0x140050a6e
mov r8d, eax
or r8d, 0x80
add r8d, edx
mov r9d, eax
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x80
jmp 0x140050758
lea r10, [rcx + 1]
cmp rbx, r10
jne 0x140050a20
lea r9d, [rax + 0x5f1107c0]
lea r8d, [rax + rdx]
add r8d, 0x5f1107c0
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0xc0
lea r9d, [rax + 0x6eba51c0]
lea r10d, [rax + rdx]
add r10d, 0x6eba51c0
and r9d, edx
add r9d, r9d
sub r10d, r9d
add r10b, 0xc0
mov byte [rsp + rax + 0x260], r10b
mov r14, rbx
inc rcx
dec rax
mov rbx, r14
jmp 0x140050442
lea r8, [rcx + 1]
cmp rbx, r8
jne 0x140050a50
mov r8d, eax
or r8d, 0x80
add r8d, edx
mov r9d, eax
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x80
jmp 0x14005043c
lea r8d, [rax + rdx]
mov r9d, eax
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, dl
jmp 0x1400507cc
lea r10, [rcx + 2]
cmp rbx, r10
jne 0x140050a8c
lea r9d, [rax + 0x13d528c0]
lea r8d, [rax + rdx]
add r8d, 0x13d528c0
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0xc0
dec rax
jmp 0x140050442
lea r8, [rcx + 2]
cmp rbx, r8
jne 0x140050ab9
lea r8d, [rax + rdx]
mov r9d, eax
and r9d, edx
add r9d, r9d
sub r8d, r9d
jmp 0x140050417
lea r11, [rcx + 1]
cmp rbx, r11
jne 0x140050ad2
lea r8d, [rax + rdx]
mov r9d, eax
and r9d, edx
add r9d, r9d
sub r8d, r9d
jmp 0x14005043c
lea r10, [rcx + 3]
cmp rbx, r10
jne 0x140050afd
lea r9d, [rax - 0x11c8c6c0]
lea r8d, [rax + rdx]
add r8d, 0xee373940
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x40
jmp 0x1400507cc
lea r8, [rcx + 3]
cmp rbx, r8
jne 0x140050b1d
lea r8d, [rax + rdx]
and edx, eax
add edx, edx
sub r8d, edx
jmp 0x1400507f9
lea r11, [rcx + 2]
cmp rbx, r11
jne 0x140050b43
mov r8d, eax
or r8d, 0x80
add r8d, edx
mov r9d, eax
and r9d, edx
add r9d, r9d
sub r8d, r9d
add r8b, 0x80
jmp 0x140050417
lea r10, [rcx + 4]
cmp rbx, r10
jne 0x140050b69
lea r9d, [rax + 0x7d5d6ac0]
lea r8d, [rax + rdx]
add r8d, 0x7d5d6ac0
jmp 0x14005089a
lea r8, [rcx + 7]
cmp rbx, r8
jne 0x140050b8d
mov r8d, eax
or r8d, 0x80
add r8d, edx
and edx, eax
add edx, edx
sub r8d, edx
add r8b, 0x80
jmp 0x140050a48
lea r11, [rcx + 3]
cmp rbx, r11
jne 0x140050b95
mov r8d, eax
or r8d, 0x80
add r8d, edx
and edx, eax
add edx, edx
sub r8d, edx
add r8b, 0x80
jmp 0x1400507f9
lea r10, [rcx + 7]
cmp rbx, r10
jne 0x140050940
lea r9d, [rax + 0x32218bc0]
lea r8d, [rax + rdx]
add r8d, 0x32218bc0
jmp 0x140050852
mov r8d, r9d
jmp 0x1400508e6
lea r11, [rcx + 4]
cmp rbx, r11
jne 0x140050bb1
lea r8d, [rax + rdx]
and edx, eax
add edx, edx
sub r8d, edx
mov rbx, r9
jmp 0x1400507f9
cmp rbx, r10
jne 0x140050758
lea r8d, [rax + rdx]
mov r9d, eax
and r9d, edx
add r9d, r9d
sub r8d, r9d
jmp 0x1400509a5
lea r14d, [rax + rdx]
add r14d, 0x3a794940
add eax, 0x3a794940
and eax, edx
add eax, eax
sub r14d, eax
add r14b, 0x40
add rcx, 0xc
jmp 0x1400503c2
mov ecx, eax
add ecx, 0x601738c0
lea r14d, [rax + rdx]
add r14d, 0x601738c0
and ecx, edx
add ecx, ecx
sub r14d, ecx
add r14b, 0xc0
jmp 0x1400503b2
lea rsi, [rsp + 0xe295a0]
jmp 0x140050c35
lea rsi, [rsp + 0x1718d60]
lea rbx, [rsp + 0x60]
mov edx, 0xff
mov rcx, rbx
mov r8, rsi
call fcn.14004dd80
mov rcx, rbx
call fcn.1400778d0
mov rsi, rax
mov dword [rsp + 0x20], 7
lea rdx, [rsp + 0x24]
mov eax, dword [rsp + 0x20]
xor al, 0x33
mov byte [rsp + 0x24], al
mov eax, dword [rsp + 0x20]
inc al
xor al, 0x36
mov byte [rsp + 0x25], al
mov eax, dword [rsp + 0x20]
add al, 2
xor al, 0x37
mov byte [rsp + 0x26], al
mov eax, dword [rsp + 0x20]
add al, 3
xor al, 0x61
mov byte [rsp + 0x27], al
mov eax, dword [rsp + 0x20]
add al, 4
xor al, 0x62
mov byte [rsp + 0x28], al
mov eax, dword [rsp + 0x20]
add al, 5
xor al, 0x62
mov byte [rsp + 0x29], al
mov eax, dword [rsp + 0x20]
add al, 6
xor al, 0x38
mov byte [rsp + 0x2a], al
mov eax, dword [rsp + 0x20]
add al, 7
xor al, 0x31
mov byte [rsp + 0x2b], al
mov eax, dword [rsp + 0x20]
add al, 8
xor al, 0x2d
mov byte [rsp + 0x2c], al
mov eax, dword [rsp + 0x20]
add al, 9
xor al, 0x39
mov byte [rsp + 0x2d], al
mov eax, dword [rsp + 0x20]
add al, 0xa
xor al, 0x38
mov byte [rsp + 0x2e], al
mov eax, dword [rsp + 0x20]
add al, 0xb
xor al, 0x34
mov byte [rsp + 0x2f], al
mov eax, dword [rsp + 0x20]
add al, 0xc
xor al, 0x34
mov byte [rsp + 0x30], al
mov eax, dword [rsp + 0x20]
add al, 0xd
xor al, 0x2d
mov byte [rsp + 0x31], al
mov eax, dword [rsp + 0x20]
add al, 0xe
xor al, 0x33
mov byte [rsp + 0x32], al
mov eax, dword [rsp + 0x20]
add al, 0xf
xor al, 0x35
mov byte [rsp + 0x33], al
mov eax, dword [rsp + 0x20]
add al, 0x10
xor al, 0x66
mov byte [rsp + 0x34], al
mov eax, dword [rsp + 0x20]
add al, 0x11
xor al, 0x31
mov byte [rsp + 0x35], al
mov eax, dword [rsp + 0x20]
add al, 0x12
xor al, 0x2d
mov byte [rsp + 0x36], al
mov eax, dword [rsp + 0x20]
add al, 0x13
xor al, 0x61
mov byte [rsp + 0x37], al
mov eax, dword [rsp + 0x20]
add al, 0x14
xor al, 0x64
mov byte [rsp + 0x38], al
mov eax, dword [rsp + 0x20]
add al, 0x15
xor al, 0x33
mov byte [rsp + 0x39], al
mov eax, dword [rsp + 0x20]
add al, 0x16
xor al, 0x32
mov byte [rsp + 0x3a], al
mov eax, dword [rsp + 0x20]
add al, 0x17
xor al, 0x2d
mov byte [rsp + 0x3b], al
mov eax, dword [rsp + 0x20]
add al, 0x18
xor al, 0x39
mov byte [rsp + 0x3c], al
mov eax, dword [rsp + 0x20]
add al, 0x19
xor al, 0x38
mov byte [rsp + 0x3d], al
mov eax, dword [rsp + 0x20]
add al, 0x1a
xor al, 0x66
mov byte [rsp + 0x3e], al
mov eax, dword [rsp + 0x20]
add al, 0x1b
xor al, 0x30
mov byte [rsp + 0x3f], al
mov eax, dword [rsp + 0x20]
add al, 0x1c
xor al, 0x33
mov byte [rsp + 0x40], al
mov eax, dword [rsp + 0x20]
add al, 0x1d
xor al, 0x38
mov byte [rsp + 0x41], al
mov eax, dword [rsp + 0x20]
add al, 0x1e
xor al, 0x30
mov byte [rsp + 0x42], al
mov eax, dword [rsp + 0x20]
add al, 0x1f
xor al, 0x30
mov byte [rsp + 0x43], al
mov eax, dword [rsp + 0x20]
add al, 0x20
xor al, 0x31
mov byte [rsp + 0x44], al
mov eax, dword [rsp + 0x20]
add al, 0x21
xor al, 0x30
mov byte [rsp + 0x45], al
mov eax, dword [rsp + 0x20]
add al, 0x22
xor al, 0x30
mov byte [rsp + 0x46], al
mov eax, dword [rsp + 0x20]
add al, 0x23
xor al, 0x33
mov byte [rsp + 0x47], al
mov byte [rsp + 0x48], 0
xor eax, eax
nop word [rax + rax]
movzx ecx, byte [rsp + rax + 0x24]
mov r8d, dword [rsp + 0x20]
add r8d, eax
xor r8b, cl
mov byte [rsp + rax + 0x24], r8b
movzx ecx, byte [rsp + rax + 0x25]
mov r8d, dword [rsp + 0x20]
add r8d, eax
inc r8b
xor r8b, cl
mov byte [rsp + rax + 0x25], r8b
movzx ecx, byte [rsp + rax + 0x26]
mov r8d, dword [rsp + 0x20]
add r8d, eax
add r8b, 2
xor r8b, cl
mov byte [rsp + rax + 0x26], r8b
add rax, 3
cmp rax, 0x24
jne 0x140050e20
mov byte [rsp + 0x48], 0
mov byte [rsp + 0x59], 0x6f
mov byte [rsp + 0x5a], 0x75
mov byte [rsp + 0x5b], 0x74
mov byte [rsp + 0x5c], 0x77
mov byte [rsp + 0x5d], 0x64
mov byte [rsp + 0x5e], 0x74
mov byte [rsp + 0x5f], 0
dec byte [rsp + 0x59]
dec byte [rsp + 0x5a]
dec byte [rsp + 0x5b]
dec byte [rsp + 0x5c]
dec byte [rsp + 0x5d]
dec byte [rsp + 0x5e]
lea rcx, [rsp + 0x59]
lea r9, [rsp + 0x260]
mov r8d, 2
call fcn.14004dc20
mov ebx, 1
test eax, eax
jne 0x1400511b5
lea rcx, [rsp + 0x280]
mov r8d, 0xffc
xor edx, edx
call fcn.1400918d0
movaps xmm0, xmmword [0x140094150]
movups xmmword [rsp + 0x26c], xmm0
mov dword [rsp + 0x27c], 0xf003f
mov dword [rsp + 0xa74], 0xc
lea rcx, [rsp + 0x260]
mov edx, 0x1b
call fcn.14004dde0
test eax, eax
jne 0x1400511a7
cmp dword [rsp + 0x1278], 0x18
jne 0x1400511a7
cmp dword [rsp + 0xa8c], 0
jne 0x1400511a7
lea r14, [rsp + 0x274]
mov eax, dword [rsp + 0xa88]
mov dword [rsp + 0x30], eax
movups xmm0, xmmword [rsp + 0xa78]
movaps xmmword [rsp + 0x20], xmm0
movabs rax, 0x100000000
mov qword [rsp + 0x26c], rax
lea rcx, [rsp + 0x290]
mov r8d, 0xfec
xor edx, edx
call fcn.1400918d0
movaps xmm0, xmmword [rsp + 0x20]
movups xmmword [r14], xmm0
mov eax, dword [rsp + 0x30]
mov dword [r14 + 0x10], eax
mov dword [rsp + 0x288], ebp
mov dword [rsp + 0x28c], 0
mov dword [rsp + 0x290], ebp
mov dword [rsp + 0xa74], 0x20
cmp ebp, 0x7e1
jb 0x140050fdb
mov dword [rsp + 0x26c], 1
mov ecx, 0x20
jmp 0x140051018
lea rcx, [rsp + 0x294]
mov r8d, ebp
lea rdx, [rsp + 0x160]
call fcn.140091230
mov eax, dword [rsp + 0xa74]
and edi, 0xfffffffc
lea ecx, [rdi + rax]
add ecx, 4
mov dword [rsp + 0xa74], ecx
cmp dword [rsp + 0x270], 0
je 0x14005117a
lea eax, [rsi + 1]
lea edx, [rcx - 0x7fd]
cmp edx, 3
ja 0x140051033
mov dword [rsp + 0x26c], 1
jmp 0x1400510b2
mov ecx, ecx
mov dword [rsp + rcx + 0x274], 0
mov edx, dword [rsp + 0xa74]
lea ecx, [rdx + 4]
mov dword [rsp + 0xa74], ecx
add edx, 0xfffff807
cmp edx, 4
jb 0x1400510b2
mov ecx, ecx
mov dword [rsp + rcx + 0x274], 0xf01ff
mov edx, dword [rsp + 0xa74]
lea ecx, [rdx + 4]
mov dword [rsp + 0xa74], ecx
add edx, 0xfffff807
cmp edx, 4
jb 0x1400510b2
mov ecx, ecx
mov dword [rsp + rcx + 0x274], 0x10
mov edx, dword [rsp + 0xa74]
lea ecx, [rdx + 4]
mov dword [rsp + 0xa74], ecx
add edx, 0xfffff807
cmp edx, 3
ja 0x1400512c4
mov dword [rsp + 0x26c], 1
mov dword [rsp + 0x26c], 1
mov dword [rsp + 0x26c], 1
mov edx, 0x800
sub edx, ecx
cmp edx, eax
jae 0x1400510eb
mov dword [rsp + 0x26c], 1
jmp 0x140051125
mov ecx, ecx
add rcx, rsp
add rcx, 0x274
mov r8d, eax
lea rdx, [rsp + 0x60]
call fcn.140091230
mov eax, dword [rsp + 0xa74]
and esi, 0xfffffffc
lea ecx, [rsi + rax]
add ecx, 4
mov dword [rsp + 0xa74], ecx
cmp dword [rsp + 0x270], 0
je 0x14005117a
lea eax, [rcx - 0x7fd]
cmp eax, 4
jb 0x140051159
mov eax, ecx
mov dword [rsp + rax + 0x274], 0
mov ecx, dword [rsp + 0xa74]
lea eax, [rcx + 4]
mov dword [rsp + 0xa74], eax
add ecx, 0xfffff807
cmp ecx, 3
ja 0x1400511c9
mov dword [rsp + 0x26c], 1
mov dword [rsp + 0x26c], 1
mov dword [rsp + 0x26c], 1
lea rcx, [rsp + 0x260]
mov edx, 0x18
call fcn.14004dde0
test eax, eax
jne 0x1400511a7
cmp dword [rsp + 0x1278], 0x1c
jne 0x1400511a7
xor ebx, ebx
cmp dword [rsp + 0xa90], 0
setne bl
mov rcx, qword [rsp + 0x260]
call qword [0x1400bab90]
mov eax, ebx
add rsp, 0x1280
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret
mov eax, eax
mov dword [rsp + rax + 0x274], 0
mov ecx, dword [rsp + 0xa74]
lea eax, [rcx + 4]
mov dword [rsp + 0xa74], eax
add ecx, 0xfffff807
cmp ecx, 4
jb 0x140051164
mov eax, eax
mov dword [rsp + rax + 0x274], 0
mov ecx, dword [rsp + 0xa74]
lea eax, [rcx + 4]
mov dword [rsp + 0xa74], eax
add ecx, 0xfffff807
cmp ecx, 4
jb 0x140051164
mov eax, eax
mov dword [rsp + rax + 0x274], 0
mov ecx, dword [rsp + 0xa74]
lea eax, [rcx + 4]
mov dword [rsp + 0xa74], eax
add ecx, 0xfffff807
cmp ecx, 3
jbe 0x140051164
mov eax, eax
mov dword [rsp + rax + 0x274], 0
mov ecx, dword [rsp + 0xa74]
lea eax, [rcx + 4]
mov dword [rsp + 0xa74], eax
add ecx, 0xfffff807
cmp ecx, 4
jb 0x14005116f
mov eax, eax
mov dword [rsp + rax + 0x274], 0
mov ecx, dword [rsp + 0xa74]
lea eax, [rcx + 4]
mov dword [rsp + 0xa74], eax
add ecx, 0xfffff807
cmp ecx, 3
jbe 0x14005116f
mov eax, eax
mov dword [rsp + rax + 0x274], 0
add dword [rsp + 0xa74], 4
jmp 0x14005117a
mov ecx, ecx
mov dword [rsp + rcx + 0x274], 2
mov edx, dword [rsp + 0xa74]
lea ecx, [rdx + 4]
mov dword [rsp + 0xa74], ecx
add edx, 0xfffff807
cmp edx, 4
jb 0x1400510bd
mov ecx, ecx
mov dword [rsp + rcx + 0x274], 0
mov edx, dword [rsp + 0xa74]
lea ecx, [rdx + 4]
mov dword [rsp + 0xa74], ecx
add edx, 0xfffff807
cmp edx, 3
jbe 0x1400510bd
mov ecx, ecx
mov dword [rsp + rcx + 0x274], eax
mov edx, dword [rsp + 0xa74]
lea ecx, [rdx + 4]
mov dword [rsp + 0xa74], ecx
add edx, 0xfffff807
cmp edx, 4
jb 0x1400510c8
mov ecx, ecx
mov dword [rsp + rcx + 0x274], 0
mov edx, dword [rsp + 0xa74]
lea ecx, [rdx + 4]
mov dword [rsp + 0xa74], ecx
add edx, 0xfffff807
cmp edx, 3
jbe 0x1400510c8
mov ecx, ecx
mov dword [rsp + rcx + 0x274], eax
mov ecx, dword [rsp + 0xa74]
add ecx, 4
mov dword [rsp + 0xa74], ecx
jmp 0x1400510d3