Function at 0x180011554
Capabilities:
Authenticate hmac
Encrypt data using chaskey
Hash data using murmur3

Disassembly:
mov rax, rsp
mov qword [rax + 8], rbx
mov qword [rax + 0x20], r9
mov qword [rax + 0x18], r8
mov word [rax + 0x10], dx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rax - 0x3f]
sub rsp, 0xb0
mov eax, dword [rbp + 0x9f]
mov r10, qword [rbp + 0x6f]
movzx edx, dx
mov dword [rsp + 0x58], eax
mov eax, dword [rbp + 0x97]
mov r11, r9
mov dword [rsp + 0x50], eax
mov eax, dword [rbp + 0x8f]
mov r14, rcx
mov dword [rsp + 0x48], eax
mov eax, dword [rbp + 0x87]
mov dword [rsp + 0x40], eax
mov eax, dword [rbp + 0x7f]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp + 0x77]
mov dword [rsp + 0x30], eax
mov rax, qword [rbp + 0x67]
mov qword [rsp + 0x28], r10
mov qword [rsp + 0x20], rax
call fcn.18000e888
mov r15, qword [rbp - 0x11]
mov r13, qword [rbp - 0x11]
mov rdi, qword [rbp - 0x11]
xor eax, eax
xor r12d, r12d
mov dword [rbp - 9], 0x340ca
mov qword [rbp - 1], rax
mov ebx, 0x1724f
mov dword [rbp - 5], 0xdd20e
xor esi, esi
mov eax, 0x337fe
cmp ebx, 0xa5bb3
jg 0x1800121c5
je 0x180011bde
cmp ebx, 0x44ec
je 0x180011a20
cmp ebx, 0x1724f
je 0x1800119cd
cmp ebx, eax
je 0x1800119ae
cmp ebx, 0x69f90
je 0x1800117a1
cmp ebx, 0x8a74a
jne 0x180012481
mov dword [rbp - 0x1d], 0x478dae
mov eax, 0x24924925
xor dword [rbp - 0x1d], 0x50c6f002
xor dword [rbp - 0x1d], 0x50817dac
mov dword [rbp - 0x35], 0xdaac36
add dword [rbp - 0x35], 0x9690
xor dword [rbp - 0x35], 0xdb42c5
mov dword [rbp - 0x19], 0x5a14df
shl dword [rbp - 0x19], 0xc
add dword [rbp - 0x19], 0xffffd59f
xor dword [rbp - 0x19], 0xf4688db6
xor dword [rbp - 0x19], 0x55267c86
mov dword [rbp - 0x25], 0xc875d0
shl dword [rbp - 0x25], 0xf
mov ecx, dword [rbp - 0x25]
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 2
mov dword [rbp - 0x25], ecx
xor dword [rbp - 0x25], 0x8676df5
mov dword [rbp - 0x21], 0xb472ec
imul eax, dword [rbp - 0x21], 0x1d
mov dword [rbp - 0x21], eax
xor dword [rbp - 0x21], 0x147ac8d8
mov dword [rbp - 0x29], 0xf8d6d8
or dword [rbp - 0x29], 0xab307f28
shr dword [rbp - 0x29], 0xe
xor dword [rbp - 0x29], 0x3fd95
mov dword [rbp - 0x2d], 0xb47834
mov eax, dword [rbp - 0x2d]
lea ecx, [rax + rax*4]
mov eax, 0xa41a41a5
shl ecx, 3
mov dword [rbp - 0x2d], ecx
add dword [rbp - 0x2d], 0xffffa8fc
xor dword [rbp - 0x2d], 0x1c336e9c
mov dword [rbp - 0x39], 0x8cf24
mov ecx, dword [rbp - 0x39]
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 5
mov dword [rbp - 0x39], ecx
mov rcx, r8
shr dword [rbp - 0x39], 0xd
xor dword [rbp - 0x39], 0xef5aa
mov eax, dword [rbp - 0x35]
mov dword [rsp + 0x68], eax
mov eax, dword [rbp - 0x39]
mov dword [rsp + 0x58], eax
mov eax, dword [rbp - 0x2d]
mov dword [rsp + 0x50], eax
mov eax, dword [rbp - 0x29]
mov dword [rsp + 0x48], eax
mov eax, dword [rbp - 0x21]
mov dword [rsp + 0x40], eax
movzx eax, word [rbp + 0x4f]
mov word [rsp + 0x38], ax
mov eax, dword [rbp - 0x25]
mov r9d, dword [rbp - 0x19]
mov edx, dword [rbp - 0x1d]
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x20], eax
call fcn.180003cb4
mov r15, rax
neg rax
sbb ebx, ebx
and ebx, 0xffff4dd9
add ebx, 0xb0dda
mov r10, qword [rbp + 0x6f]
mov r11, qword [rbp + 0x5f]
mov r8, qword [rbp + 0x57]
jmp 0x1800115fd
mov dword [rbp - 0x39], 0x298051
mov eax, 0xa6810a7
mov ecx, dword [rbp - 0x39]
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 6
mov dword [rbp - 0x39], ecx
shr dword [rbp - 0x39], 5
or dword [rbp - 0x39], 0x3f568dbc
xor dword [rbp - 0x39], 0x3f568dbf
mov dword [rbp - 0x39], 0x95c8ec
add dword [rbp - 0x39], 0xffffcf84
imul eax, dword [rbp - 0x39], 0x19
mov dword [rbp - 0x39], eax
shl dword [rbp - 0x39], 0xb
xor dword [rbp - 0x39], 0xdf188ac8
mov dword [rbp - 0x39], 0xbb1389
xor dword [rbp - 0x39], 0x3d38b025
imul eax, dword [rbp - 0x39], 0x64
mov dword [rbp - 0x39], eax
mov eax, 0xb02c0b03
add dword [rbp - 0x39], 0xc4f3
xor dword [rbp - 0x39], 0x768cc51
mov dword [rbp - 0x31], 0xaa74df
or dword [rbp - 0x31], 0x7f82b69c
xor dword [rbp - 0x31], 0x7faf4836
mov dword [rbp - 0x31], 0xd6a5e8
mov ecx, dword [rbp - 0x31]
mul ecx
shr edx, 6
mov dword [rbp - 0x31], edx
xor dword [rbp - 0x31], 0x4229b
mov dword [rbp - 0x39], 0x2033d5
shl dword [rbp - 0x39], 0xe
imul eax, dword [rbp - 0x39], 0x4b
mov dword [rbp - 0x39], eax
imul eax, dword [rbp - 0x39], 0x3d
mov dword [rbp - 0x39], eax
xor dword [rbp - 0x39], 0x92e2c000
mov dword [rbp - 0x35], 0x1b0c1c
xor dword [rbp - 0x35], 0xb91bc67c
shr dword [rbp - 0x35], 9
xor dword [rbp - 0x35], 0x594046
mov dword [rbp - 0x35], 0x823867
add dword [rbp - 0x35], 0xffffa278
imul eax, dword [rbp - 0x35], 0x5a
mov dword [rbp - 0x35], eax
xor dword [rbp - 0x35], 0x2daa9075
mov dword [rbp - 0x35], 0xb51ced
shl dword [rbp - 0x35], 0xf
shl dword [rbp - 0x35], 5
xor dword [rbp - 0x35], 0xcedb5e31
mov dword [rbp - 0x35], 0x7b37f6
add dword [rbp - 0x35], 0xffffdb77
add dword [rbp - 0x35], 0x2dc4
xor dword [rbp - 0x35], 0x783c15
mov dword [rbp - 0x39], 0x8df311
add dword [rbp - 0x39], 0xfffff9bd
add dword [rbp - 0x39], 0x2117
xor dword [rbp - 0x39], 0xf642429
xor dword [rbp - 0x39], 0xfea29cc
mov dword [rbp - 0x35], 0x26d8a3
xor dword [rbp - 0x35], 0x76ed6b24
add dword [rbp - 0x35], 0xbcb
xor dword [rbp - 0x35], 0x76ce1d50
mov dword [rbp - 0x31], 0xbf52b4
or dword [rbp - 0x31], 0x17ccee4d
xor dword [rbp - 0x31], 0x17f12202
mov dword [rbp - 0x39], 0x46d530
add dword [rbp - 0x39], 0x8929
imul eax, dword [rbp - 0x39], 0x6f
mov dword [rbp - 0x39], eax
imul eax, dword [rbp - 0x39], 0x65
mov dword [rbp - 0x39], eax
xor dword [rbp - 0x39], 0x357e7628
mov dword [rbp - 0x31], 0xbefbb0
shr dword [rbp - 0x31], 6
xor dword [rbp - 0x31], 0x52a60
mov dword [rbp - 0x35], 0x849288
add dword [rbp - 0x35], 0xd96
mov ebx, 0x44ec
shr dword [rbp - 0x35], 0xc
xor dword [rbp - 0x35], 0xffd51
mov dword [rbp - 0x35], 0x7c2e84
or dword [rbp - 0x35], 0xdf5727d4
add dword [rbp - 0x35], 0xffffb0b9
xor dword [rbp - 0x35], 0xdf75c614
mov dword [rbp - 0x35], 0x519f65
or dword [rbp - 0x35], 0x3217ef00
shl dword [rbp - 0x35], 7
xor dword [rbp - 0x35], 0x2bf5402a
jmp 0x1800115fd
mov rdx, r10
mov rcx, rdi
call fcn.1800019c8
mov ebx, 0xf3b3c
test eax, eax
mov eax, 1
cmovne esi, eax
jmp 0x180011790
mov dword [rbp - 0x19], 0xbe1d63
mov ebx, 0x69f90
or dword [rbp - 0x19], 0x7da35fa6
shl dword [rbp - 0x19], 0xd
imul eax, dword [rbp - 0x19], 0x5f
mov dword [rbp - 0x19], eax
xor dword [rbp - 0x19], 0x92d72000
mov eax, dword [rbp - 0x19]
mov dword [rbp - 0x19], 0x8b36f1
or dword [rbp - 0x19], 0xc230bd06
add dword [rbp - 0x19], 0x4fed
add dword [rbp - 0x19], 0x3be1
xor dword [rbp - 0x19], 0xc2bc4bc5
mov eax, dword [rbp - 0x19]
jmp 0x1800115fd
mov dword [rbp - 0x35], 0x945037
mov eax, 0x51eb851f
shr dword [rbp - 0x35], 0xb
xor dword [rbp - 0x35], 0x128a
mov dword [rbp - 0x25], 0xcd5d09
mov ecx, dword [rbp - 0x25]
mul ecx
mov eax, 0x4104105
shr edx, 5
mov dword [rbp - 0x25], edx
mov ecx, dword [rbp - 0x25]
mul ecx
mov eax, 0x51eb851f
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 5
mov dword [rbp - 0x25], ecx
mov ecx, dword [rbp - 0x25]
mul ecx
shr edx, 4
mov dword [rbp - 0x25], edx
xor dword [rbp - 0x25], 0x2a
mov dword [rbp - 0x39], 0xca7902
add dword [rbp - 0x39], 0xa38c
imul eax, dword [rbp - 0x39], 0x58
mov dword [rbp - 0x39], eax
mov eax, 0xb21642c9
add dword [rbp - 0x39], 0x6c21
xor dword [rbp - 0x39], 0x45d01253
mov dword [rbp - 0x2d], 0x418c9f
mov ecx, dword [rbp - 0x2d]
mul ecx
shr edx, 4
mov dword [rbp - 0x2d], edx
xor dword [rbp - 0x2d], 0x6abd170b
xor dword [rbp - 0x2d], 0x7d4037ff
xor dword [rbp - 0x2d], 0x17f80cb6
mov dword [rbp - 0x1d], 0xe46a38
mov eax, dword [rbp - 0x1d]
lea ecx, [rax + rax*2]
shl ecx, 4
mov dword [rbp - 0x1d], ecx
xor dword [rbp - 0x1d], 0x2addf060
mov dword [rbp - 0x29], 0x8d8796
or dword [rbp - 0x29], 0xcb88266c
shl dword [rbp - 0x29], 7
shl dword [rbp - 0x29], 6
xor dword [rbp - 0x29], 0xb4f9c999
mov dword [rbp - 0x19], 0x7f45f6
shl dword [rbp - 0x19], 0xb
or dword [rbp - 0x19], 0x892b70b3
shl dword [rbp - 0x19], 0xd
xor dword [rbp - 0x19], 0xfe163fc6
mov eax, dword [rbp - 0x19]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp - 0x25]
mov dword [rsp + 0x30], eax
mov eax, dword [rbp - 0x29]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x1d]
mov r8d, dword [rbp - 0x35]
mov edx, dword [rbp - 0x2d]
mov ecx, dword [rbp - 0x39]
mov dword [rsp + 0x20], eax
call fcn.18000fe10
mov dword [rbp - 0x25], 0x2a38e5
mov r13, rax
neg rax
sbb ebx, ebx
shl dword [rbp - 0x25], 8
or dword [rbp - 0x25], 0x98eaa766
and ebx, 0xfffa7e2d
xor dword [rbp - 0x25], 0xbaf5fa4d
mov dword [rbp - 0x39], 0xe17a4a
add ebx, 0xe291d
add dword [rbp - 0x39], 0xffffb78c
shr dword [rbp - 0x39], 0xd
shr dword [rbp - 0x39], 5
xor dword [rbp - 0x39], 0xa93c4
mov dword [rbp - 0x29], 0xf595af
add dword [rbp - 0x29], 0x1806
xor ecx, ecx
shl dword [rbp - 0x29], 0xa
xor dword [rbp - 0x29], 0xd6b36f6a
mov dword [rbp - 0x2d], 0x6a048a
xor dword [rbp - 0x2d], 0x1ec9d9c1
add dword [rbp - 0x2d], 0xffff13d4
xor dword [rbp - 0x2d], 0x1eaedebd
mov eax, dword [rbp - 0x2d]
mov r9d, dword [rbp - 0x29]
mov r8d, dword [rbp - 0x39]
mov edx, dword [rbp - 0x25]
mov dword [rsp + 0x20], eax
call fcn.1800088d4
jmp 0x180012470
cmp qword [r14], 0
je 0x180011c90
mov dword [rbp - 0x25], 0x640da4
mov eax, dword [rbp - 0x25]
lea ecx, [rax + rax*2]
mov eax, 0xc0c0c0c1
mov dword [rbp - 0x25], ecx
shl dword [rbp - 0x25], 0xb
xor dword [rbp - 0x25], 0x61489410
mov dword [rbp - 0x29], 0xdac53a
xor dword [rbp - 0x29], 0x3026af7e
mov ecx, dword [rbp - 0x29]
mul ecx
mov eax, 0xba2e8ba3
shr edx, 6
mov dword [rbp - 0x29], edx
xor dword [rbp - 0x29], 0x990b19
mov dword [rbp - 0x2d], 0x110847
shr dword [rbp - 0x2d], 1
or dword [rbp - 0x2d], 0x24b11b87
xor dword [rbp - 0x2d], 0x24ba8e5e
mov dword [rbp - 0x39], 0x743dcd
mov ecx, dword [rbp - 0x39]
mul ecx
mov eax, 0x3531dec1
shr edx, 3
mov dword [rbp - 0x39], edx
mov ecx, dword [rbp - 0x39]
mul ecx
lea rax, [0x180001170]
shr edx, 4
mov qword [rsp + 0x20], rax
mov dword [rbp - 0x39], edx
xor dword [rbp - 0x39], 0x1afe8
mov r9d, dword [rbp - 0x39]
mov r8d, dword [rbp - 0x2d]
mov edx, dword [rbp - 0x29]
mov ecx, dword [rbp - 0x25]
call fcn.180003f6c
mov r12, rax
mov dword [rbp - 0x35], 0xed385a
mov ebx, dword [rbp + 0x7f]
mov eax, 0x24924925
mov ecx, dword [rbp - 0x35]
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 3
mov dword [rbp - 0x35], ecx
shl dword [rbp - 0x35], 0xa
xor dword [rbp - 0x35], 0x43c67400
mov dword [rbp - 0x25], 0x7f0603
shl dword [rbp - 0x25], 3
shr dword [rbp - 0x25], 7
mov eax, dword [rbp - 0x25]
shl eax, 5
mov dword [rbp - 0x25], eax
xor dword [rbp - 0x25], 0xfe4c00
mov dword [rbp - 0x29], 0xbe1094
xor dword [rbp - 0x29], 0xcbd1c07d
shr dword [rbp - 0x29], 5
add dword [rbp - 0x29], 0xee7
xor dword [rbp - 0x29], 0x61b8d6e
mov dword [rbp - 0x2d], 0xe63753
add dword [rbp - 0x2d], 0x1d8
mov eax, dword [rbp - 0x2d]
lea ecx, [rax + rax*2]
mov eax, 0x8d3dcb09
shl ecx, 5
mov dword [rbp - 0x2d], ecx
shl dword [rbp - 0x2d], 0xe
xor dword [rbp - 0x2d], 0x5c0c0000
mov dword [rbp - 0x21], 0x45a92b
add dword [rbp - 0x21], 0xdf6c
add dword [rbp - 0x21], 0x63b3
xor dword [rbp - 0x21], 0x446ec4a
mov dword [rbp - 0x19], 0x4969f2
add dword [rbp - 0x19], 0x2600
add dword [rbp - 0x19], 0xffffd1b0
xor dword [rbp - 0x19], 0x4161a2
mov dword [rbp - 0x39], 0x3785fd
shl dword [rbp - 0x39], 1
mov ecx, dword [rbp - 0x39]
mul ecx
shr edx, 6
mov dword [rbp - 0x39], edx
imul eax, dword [rbp - 0x39], 0x3e
mov dword [rbp - 0x39], eax
xor dword [rbp - 0x39], 0x3b581e
mov dword [rbp - 0x31], 0x7efb3a
add dword [rbp - 0x31], 0xfffffb40
xor dword [rbp - 0x31], 0x7ef77a
mov dword [rbp - 0x1d], 0x92296d
xor dword [rbp - 0x1d], 0x9940399b
xor dword [rbp - 0x1d], 0x19d210f6
mov edx, dword [rbp - 0x1d]
mov eax, dword [rbp - 0x31]
or edx, eax
mov eax, dword [rbp - 0x39]
or edx, eax
mov eax, dword [rbp - 0x19]
or edx, eax
mov eax, dword [rbp - 0x21]
or edx, eax
mov eax, dword [rbp - 0x2d]
or edx, eax
mov eax, dword [rbp - 0x29]
or edx, eax
mov eax, dword [rbp - 0x25]
or edx, eax
mov eax, dword [rbp - 0x35]
or edx, eax
and ebx, 1
je 0x180011e2b
mov dword [rbp - 0x21], 0x2bf913
shr dword [rbp - 0x21], 8
shl dword [rbp - 0x21], 1
xor dword [rbp - 0x21], 0x47f2
mov dword [rbp - 0x35], 0x8a5daa
imul eax, dword [rbp - 0x35], 0x7c
mov dword [rbp - 0x35], eax
shr dword [rbp - 0x35], 4
xor dword [rbp - 0x35], 0x43075e5
mov dword [rbp - 0x31], 0x6bcb
imul eax, dword [rbp - 0x31], 0x4d
mov dword [rbp - 0x31], eax
xor dword [rbp - 0x31], 0xa06c0f
mov ecx, dword [rbp - 0x31]
mov eax, dword [rbp - 0x35]
or ecx, eax
mov eax, dword [rbp - 0x21]
or ecx, eax
or edx, ecx
mov dword [rbp - 0x25], 0x6c7bca
mov r8, qword [rbp + 0x67]
mov r9, r15
shr dword [rbp - 0x25], 0xf
shr dword [rbp - 0x25], 6
xor dword [rbp - 0x25], 0x5ee0d
mov dword [rbp - 0x2d], 0x24e0b3
imul eax, dword [rbp - 0x2d], 0x54
mov dword [rbp - 0x2d], eax
or dword [rbp - 0x2d], 0x7ffbeed9
xor dword [rbp - 0x2d], 0x7ff17a14
mov dword [rbp - 0x29], 0x98e768
shl dword [rbp - 0x29], 0xe
add dword [rbp - 0x29], 0xb8fd
xor dword [rbp - 0x29], 0x39dedb64
mov dword [rbp - 0x21], 0xe4a25b
or dword [rbp - 0x21], 0x7152b9d9
imul eax, dword [rbp - 0x21], 0x58
mov dword [rbp - 0x21], eax
xor dword [rbp - 0x21], 0x2cdddd07
mov dword [rbp - 0x39], 0x49d445
imul eax, dword [rbp - 0x39], 0x6c
mov dword [rbp - 0x39], eax
add dword [rbp - 0x39], 0xd7c1
shl dword [rbp - 0x39], 2
xor dword [rbp - 0x39], 0x7c9a6c6a
mov dword [rbp - 0x35], 0x8b4ec3
xor dword [rbp - 0x35], 0x1b865adb
imul eax, dword [rbp - 0x35], 0x5e
mov dword [rbp - 0x35], eax
xor dword [rbp - 0x35], 0xeec76617
mov eax, dword [rbp - 0x35]
mov dword [rsp + 0x58], eax
mov eax, dword [rbp - 0x39]
mov qword [rsp + 0x50], r12
mov dword [rsp + 0x48], eax
mov eax, dword [rbp - 0x21]
mov dword [rsp + 0x40], eax
mov eax, dword [rbp - 0x29]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp - 0x2d]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x25]
mov dword [rsp + 0x20], eax
call fcn.180003e18
mov dword [rbp - 0x35], 0x309e9a
xor dword [rbp - 0x35], 0x834efd40
mov rcx, r12
mov rdi, rax
xor dword [rbp - 0x35], 0x44ea2253
xor dword [rbp - 0x35], 0xc7916dd0
mov dword [rbp - 0x39], 0x320f08
add dword [rbp - 0x39], 0xffffca46
add dword [rbp - 0x39], 0xffff878a
add dword [rbp - 0x39], 0x4b43
xor dword [rbp - 0x39], 0x3a7235
mov r8d, dword [rbp - 0x39]
mov edx, dword [rbp - 0x35]
call fcn.1800054bc
test rdi, rdi
je 0x180012280
mov eax, 1
mov r9d, 4
mov dword [rbp - 0x15], eax
mov dword [rbp - 0x1d], 0x49df9f
mov eax, 0x5397829d
mov ecx, dword [rbp - 0x1d]
mul ecx
mov eax, 0x29e4129f
shr edx, 4
mov dword [rbp - 0x1d], edx
xor dword [rbp - 0x1d], 0x181b2
mov dword [rbp - 0x29], 0xc7df34
mov ecx, dword [rbp - 0x29]
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
shr ecx, 5
mov dword [rbp - 0x29], ecx
imul eax, dword [rbp - 0x29], 0x63
mov dword [rbp - 0x29], eax
shr dword [rbp - 0x29], 8
xor dword [rbp - 0x29], 0x98702
mov dword [rbp - 0x31], 0x970ee9
shr dword [rbp - 0x31], 1
xor dword [rbp - 0x31], 0x406fa9
mov dword [rbp - 0x2d], 0x8c177c
add dword [rbp - 0x2d], 0xffffbd53
imul eax, dword [rbp - 0x2d], 0x46
mov dword [rbp - 0x2d], eax
mov eax, 0x24924925
add dword [rbp - 0x2d], 0x6d28
xor dword [rbp - 0x2d], 0x263f31d2
mov dword [rbp - 0x39], 0xf134e8
mov ecx, dword [rbp - 0x39]
mul ecx
sub ecx, edx
shr ecx, 1
add ecx, edx
mov rdx, rdi
shr ecx, 4
mov dword [rbp - 0x39], ecx
imul eax, dword [rbp - 0x39], 0x3b
mov dword [rbp - 0x39], eax
add dword [rbp - 0x39], 0xafd5
xor dword [rbp - 0x39], 0x1f02568
mov eax, dword [rbp - 0x39]
mov dword [rsp + 0x38], eax
lea rax, [rbp - 0x15]
mov qword [rsp + 0x30], rax
mov eax, dword [rbp - 0x2d]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x31]
mov r8d, dword [rbp - 0x29]
mov ecx, dword [rbp - 0x1d]
mov dword [rsp + 0x20], eax
call fcn.18000f364
test ebx, ebx
je 0x1800121bb
mov dword [rbp - 0x1d], 0x221951
mov eax, 0xb02c0b03
or dword [rbp - 0x1d], 0x23337172
xor dword [rbp - 0x1d], 0x2333796c
mov dword [rbp - 0x2d], 0xbae13
xor dword [rbp - 0x2d], 0x3f90a7c5
xor dword [rbp - 0x2d], 0x2ec4b864
or dword [rbp - 0x2d], 0x2590842e
xor dword [rbp - 0x2d], 0x35de549b
mov dword [rbp - 0x31], 0xc7b97e
xor dword [rbp - 0x31], 0x4764e946
xor dword [rbp - 0x31], 0x47ae11f1
mov dword [rbp - 0x39], 0x419f5
shr dword [rbp - 0x39], 4
mov ecx, dword [rbp - 0x39]
mul ecx
lea rax, [rbp - 0x15]
mov qword [rsp + 0x38], rax
shr edx, 6
mov dword [rbp - 0x39], edx
mov rdx, rdi
add dword [rbp - 0x39], 0xffff2b6f
xor dword [rbp - 0x39], 0xfff49be3
mov dword [rbp - 0x35], 0x5e4a90
xor dword [rbp - 0x35], 0x4bb8c0e4
add dword [rbp - 0x35], 0xffffabf3
xor dword [rbp - 0x35], 0x4bea85f3
mov eax, dword [rbp - 0x35]
mov dword [rsp + 0x30], eax
lea rax, [rbp - 0x11]
mov qword [rsp + 0x28], rax
mov eax, dword [rbp - 0x39]
mov r9d, dword [rbp - 0x31]
mov r8d, dword [rbp - 0x1d]
mov ecx, dword [rbp - 0x2d]
mov dword [rsp + 0x20], eax
call fcn.180008394
bts dword [rbp - 0x15], 8
mov dword [rbp - 0x39], 0xaa9b35
add dword [rbp - 0x39], 0xffff5b2e
mov rdx, rdi
xor dword [rbp - 0x39], 0xa9f67c
mov dword [rbp - 0x21], 0x5d8bca
shr dword [rbp - 0x21], 6
xor dword [rbp - 0x21], 0xefe38
mov dword [rbp - 0x35], 0xb8de0e
add dword [rbp - 0x35], 0x40aa
imul eax, dword [rbp - 0x35], 0x4a
mov dword [rbp - 0x35], eax
xor dword [rbp - 0x35], 0x35860aa8
mov dword [rbp - 0x1d], 0x2881c9
shl dword [rbp - 0x1d], 3
xor dword [rbp - 0x1d], 0x14e6660
mov dword [rbp - 0x31], 0x794520
shr dword [rbp - 0x31], 5
xor dword [rbp - 0x31], 0x6fc6f
mov eax, dword [rbp - 0x31]
mov dword [rsp + 0x38], eax
lea rax, [rbp - 0x15]
mov qword [rsp + 0x30], rax
mov eax, dword [rbp - 0x1d]
mov dword [rsp + 0x28], eax
mov eax, dword [rbp - 0x35]
mov r8d, dword [rbp - 0x21]
mov ecx, dword [rbp - 0x39]
mov r9d, dword [rbp - 0x11]
mov dword [rsp + 0x20], eax
call fcn.18000f364
mov ebx, 0xc7d24
jmp 0x180011790
cmp ebx, 0xb0dda
je 0x180012402
cmp ebx, 0xc7d24
je 0x180012340
cmp ebx, 0xe0401
je 0x1800122e6
cmp ebx, 0xe7cf5
je 0x18001228a
cmp ebx, 0xf3b3c
jne 0x180012481
mov dword [rbp - 0x21], 0x90d3c0
mov eax, 0x2fa0be83
mov r8, rdi
xor dword [rbp - 0x21], 0x2ac719a6
mov ecx, dword [rbp - 0x21]
mul ecx
mov eax, 0xcccccccd
shr edx, 4
mov dword [rbp - 0x21], edx
xor dword [rbp - 0x21], 0x7a5d15
mov dword [rbp - 0x39], 0x865b3c
add dword [rbp - 0x39], 0x3791
add dword [rbp - 0x39], 0xffff4be7
add dword [rbp - 0x39], 0xd094
xor dword [rbp - 0x39], 0x80a290
mov dword [rbp - 0x35], 0xc02f6
mov ecx, dword [rbp - 0x35]
mul ecx
shr edx, 3
mov dword [rbp - 0x35], edx
xor dword [rbp - 0x35], 0x9126a776
xor dword [rbp - 0x35], 0x912c0f8b
mov r9d, dword [rbp - 0x35]
mov edx, dword [rbp - 0x39]
mov ecx, dword [rbp - 0x21]
call fcn.18000d6a8
mov ebx, 0xe0401
jmp 0x180011790
mov dword [rbp - 0x31], 0x18743d
mov rcx, rdi
add dword [rbp - 0x31], 0xfffffb56
xor dword [rbp - 0x31], 0x186f80
mov edx, dword [rbp - 0x31]
call fcn.180008b84
mov r10, qword [rbp + 0x6f]
mov r11, qword [rbp + 0x5f]
mov r8, qword [rbp + 0x57]
mov dword [rbp - 0x35], 0xe1cd3
mov ebx, 0xf3b3c
imul ecx, dword [rbp - 0x35], 0x5c
mov dword [rbp - 0x35], ecx
shr dword [rbp - 0x35], 6
xor dword [rbp - 0x35], 0x1449a7
mov ecx, dword [rbp - 0x35]
cmp eax, ecx
mov eax, 0x337fe
cmove ebx, eax
jmp 0x180011602
mov dword [rbp - 0x39], 0xa6564e
mov r8, r15
shr dword [rbp - 0x39], 0xa
shl dword [rbp - 0x39], 0xc
shr dword [rbp - 0x39], 0x10
xor dword [rbp - 0x39], 0x8c557
mov dword [rbp - 0x1d], 0xd0f4ee
shr dword [rbp - 0x1d], 0xd
xor dword [rbp - 0x1d], 0x55494
mov dword [rbp - 0x31], 0x23b3a6
shl dword [rbp - 0x31], 8
xor dword [rbp - 0x31], 0x23be6d23
mov r9d, dword [rbp - 0x31]
mov edx, dword [rbp - 0x1d]
mov ecx, dword [rbp - 0x39]
call fcn.18000d6a8
mov ebx, 0xb0dda
jmp 0x180011790
mov dword [rbp - 0x39], 0x120d25
xor dword [rbp - 0x39], 0x86c4f7dd
xor dword [rbp - 0x39], 0x86ddc008
mov dword [rbp - 0x35], 0x399bd5
add dword [rbp - 0x35], 0xffff34af
shr dword [rbp - 0x35], 0xc
xor dword [rbp - 0x35], 0x9e739
mov dword [rbp - 0x21], 0x64a45d
xor dword [rbp - 0x21], 0x14fc64b6
xor dword [rbp - 0x21], 0x14910429
mov dword [rbp - 0x1d], 0x2c5d68
xor dword [rbp - 0x1d], 0xfbd558eb
xor dword [rbp - 0x1d], 0xfbffdeb1
mov dword [rbp - 0x31], 0x8af1ef
add dword [rbp - 0x31], 0xffff4eb9
xor dword [rbp - 0x31], 0x8b7982
mov rdx, qword [r14]
test rdx, rdx
je 0x1800123bb
mov ecx, dword [r14 + 8]
jmp 0x1800123bd
xor ecx, ecx
mov eax, dword [rbp - 0x31]
mov r8, rdi
mov dword [rsp + 0x48], eax
mov eax, dword [rbp - 0x1d]
mov dword [rsp + 0x38], eax
mov eax, dword [rbp - 0x21]
mov r9d, dword [rbp - 0x35]
mov dword [rsp + 0x30], eax
mov dword [rsp + 0x28], ecx
mov ecx, dword [rbp - 0x39]
mov qword [rsp + 0x20], rdx
mov rdx, r11
call fcn.180012fc4
neg eax
sbb ebx, ebx
and ebx, 0xffff41b9
add ebx, 0xf3b3c
jmp 0x180011790
mov dword [rbp - 0x35], 0xdc7880
mov r8, r13
imul eax, dword [rbp - 0x35], 0x56
mov dword [rbp - 0x35], eax
shl dword [rbp - 0x35], 0xa
xor dword [rbp - 0x35], 0x41e70ffd
mov dword [rbp - 0x39], 0xa9add2
shr dword [rbp - 0x39], 0xe
imul eax, dword [rbp - 0x39], 0x4e
mov dword [rbp - 0x39], eax
mov eax, 0x38e38e39
mov ecx, dword [rbp - 0x39]
mul ecx
shr edx, 4
mov dword [rbp - 0x39], edx
xor dword [rbp - 0x39], 0xccf37
mov dword [rbp - 0x31], 0x6213ac
imul ecx, dword [rbp - 0x31], 0x36
mov dword [rbp - 0x31], ecx
xor dword [rbp - 0x31], 0x14b56ff2
mov r9d, dword [rbp - 0x31]
mov edx, dword [rbp - 0x39]
mov ecx, dword [rbp - 0x35]
call fcn.18000d6a8
mov ebx, 0xe291d
mov r8, qword [rbp + 0x57]
mov r11, qword [rbp + 0x5f]
mov r10, qword [rbp + 0x6f]
mov eax, 0x337fe
cmp ebx, 0xe291d
jne 0x180011602
mov eax, esi
mov rbx, qword [rsp + 0xf0]
add rsp, 0xb0
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret