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

Disassembly:
push rbp
push r15
push r14
push r13
push r12
push rsi
push rdi
push rbx
sub rsp, 0xd8
lea rbp, [rsp + 0x80]
mov qword [rbp + 0x50], 0xfffffffffffffffe
mov r13, rdx
mov rdi, rcx
mov rax, qword [0x14015bcc8]
xor ecx, ecx
xor edx, edx
sub rdx, qword [0x14015c008]
movabs r15, 0x7b2531626c602a84
xor rdx, r15
lea rdx, [rdx + rdx*8]
lea rdx, [rdx + rdx*2]
add rdx, 0x1b
xor rdx, r15
movzx eax, byte [rax + rdx + 1]
mov byte [rbp + 0x4b], al
xor eax, eax
sub rax, qword [0x14015c1b0]
mov rdx, qword [0x14015be70]
movabs r8, 0xb2531626c602a84
xor rax, r8
lea rax, [rax + rax*4]
shl rax, 4
add rax, 0x51
xor rax, r15
movzx eax, byte [rdx + rax]
mov byte [rbp + 0x4a], al
mov eax, dword [rdi + 0xe0]
mov rdx, qword [0x14015bc80]
mov r8, qword [0x14015bfc0]
xor r9d, r9d
sub r9, r8
xor r9, r15
lea r8, [r9 + r9*8]
lea r8, [r8*2 + 0x13]
xor r8, r15
xor r9d, r9d
sub r9d, dword [rdx + r8]
mov rdx, qword [0x14015bea0]
xor r8d, r8d
sub r8, qword [0x14015c1e0]
xor r8, r15
imul r8, r8, 0x56
add r8, 0x57
xor r8, r15
mov edx, dword [rdx + r8]
xor r9d, edx
imul r8d, r9d, 0xe8633bc1
xor r8d, edx
add r8d, 0x179cc43f
movabs rbx, 0x1b2531626c602a84
cmp r8d, eax
jge 0x1400485b0
mov rdx, qword [0x14015bf20]
xor r8d, r8d
sub r8, qword [0x14015c260]
xor r8, r15
imul r8, r8, 0x66
add r8, 0x67
xor r8, r15
mov edx, dword [rdx + r8]
mov r8, qword [0x14015bd30]
xor r9d, r9d
sub r9, qword [0x14015c070]
xor r9, rbx
lea r9, [r9 + r9*4]
lea r9, [r9*8 + 0x29]
xor r9, r15
xor r10d, r10d
sub r10d, dword [r8 + r9]
xor r10d, edx
imul r8d, r10d, 0x2418ba17
xor r8d, edx
add eax, r8d
add eax, 0xdbe745e9
mov dword [rdi + 0xe0], eax
mov rdx, qword [0x14015bdc0]
xor r8d, r8d
sub r8, qword [0x14015c100]
xor r8, r15
imul r8, r8, 0x3a
add r8, 0x3b
xor r8, r15
mov edx, dword [rdx + r8]
mov r8, qword [0x14015bd80]
mov r9, qword [0x14015c0c0]
xor r10d, r10d
sub r10, r9
xor r10, r15
imul r9, r10, 0x32
add r9, 0x33
xor r9, r15
xor r10d, r10d
sub r10d, dword [r8 + r9]
xor r10d, edx
imul r8d, r10d, 0xb98fd187
xor r8d, edx
add r8d, 0x46702e79
cmp eax, r8d
jle 0x14004b34d
mov r8d, dword [rdi + 0xdc]
mov rdx, qword [0x14015bc50]
xor r9d, r9d
sub r9, qword [0x14015bf90]
movabs r10, 0x3b2531626c602a84
xor r9, r10
lea r9, [r9 + r9*2]
lea r9, [r9*4 + 0xd]
xor r9, r15
mov edx, dword [rdx + r9]
mov r9, qword [0x14015bd48]
mov r10, qword [0x14015c088]
xor r11d, r11d
sub r11, r10
xor r11, r15
imul r10, r11, 0x2b
add r10, 0x2b
xor r10, r15
sub ecx, dword [r9 + r10 + 1]
xor ecx, edx
imul ecx, ecx, 0x2742abc5
xor ecx, edx
add ecx, 0xd8bd543b
cmp ecx, r8d
jge 0x140048704
mov rcx, qword [0x14015bbf8]
xor edx, edx
xor r9d, r9d
sub r9, qword [0x14015bf38]
xor r9, r15
inc r9
xor r9, r15
mov ecx, dword [rcx + r9 + 1]
mov r9, qword [0x14015bd78]
xor r10d, r10d
sub r10, qword [0x14015c0b8]
xor r10, r15
imul r10, r10, 0x31
add r10, 0x31
xor r10, r15
xor r11d, r11d
sub r11d, dword [r9 + r10 + 1]
xor r11d, ecx
imul r9d, r11d, 0x11dacfd
xor r9d, ecx
lea ecx, [r8 + r9]
add ecx, 0xfee25303
mov dword [rdi + 0xdc], ecx
mov r8, qword [0x14015bc10]
mov r9, qword [0x14015bf50]
shl r9, 2
neg r9
movabs r10, 0xec94c589b180aa11
xor r10, r9
add r10, 4
xor r10, r15
mov r8d, dword [r8 + r10]
mov r9, qword [0x14015bc40]
mov r10, qword [0x14015bf80]
xor r11d, r11d
sub r11, r10
xor r11, r15
lea r10, [r11 + r11*4]
lea r10, [r10*2 + 0xb]
xor r10, r15
xor r11d, r11d
sub r11d, dword [r9 + r10]
xor r11d, r8d
imul r9d, r11d, 0x4a3f816f
xor r9d, r8d
add r9d, 0xb5c07e91
cmp ecx, r9d
jle 0x14004b42d
mov rcx, qword [0x14015bc38]
xor r10d, r10d
xor edx, edx
sub rdx, qword [0x14015bf78]
xor rdx, r15
lea rdx, [rdx + rdx*8]
add rdx, 9
xor rdx, r15
movzx ecx, byte [rcx + rdx + 1]
mov rdx, qword [0x14015bea8]
mov r8, qword [0x14015c1e8]
xor r9d, r9d
sub r9, r8
xor r9, r15
imul r8, r9, 0x57
add r8, 0x57
xor r8, r15
movzx edx, byte [rdx + r8 + 1]
xor r8d, r8d
sub r8b, dl
xor r8b, cl
movzx edx, r8b
imul r11d, edx, 0xffffffbe
xor r11b, cl
add r11b, 0x42
test r13, r13
je 0x14004b172
lea rax, [rdi + 0x98]
mov qword [rbp + 0x18], rax
lea rax, [rdi + 0xa0]
mov qword [rbp + 0x40], rax
lea rax, [rdi + 0x40]
mov qword [rbp - 0x28], rax
lea rax, [rdi + 0x80]
mov qword [rbp - 0x30], rax
lea rax, [rdi + 8]
mov qword [rbp + 0x20], rax
lea rax, [rdi + 0x28]
mov qword [rbp + 0x28], rax
lea r14, [rbp - 0x20]
movabs r12, 0x491b69cad40ef98c
movabs r10, 0x246da72b503be631
mov qword [rbp + 0x10], rdi
nop dword [rax + rax]
mov esi, dword [r13 + 8]
cmp esi, 0xc
jge 0x140048810
cmp esi, 5
jge 0x140048b00
cmp esi, 2
jge 0x140048db7
cmp esi, 1
movabs r10, 0xc91b69cad40ef98c
je 0x14004a530
jmp 0x14004b282
cmp esi, 0x11
jae 0x140048da0
cmp esi, 0xe
mov dword [rbp + 0x4c], r11d
jae 0x140048fa9
cmp esi, 0xc
je 0x14004b169
mov edx, dword [r13 + 0x20]
mov rax, qword [0x14015bce8]
xor r8d, r8d
sub r8, qword [0x14015c028]
xor r8, r15
mov rcx, r8
shl rcx, 5
sub rcx, r8
add rcx, 0x1f
xor rcx, r15
xor r8d, r8d
sub r8, qword [0x14015c0f0]
mov r9, qword [0x14015bdb0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
xor r10d, r10d
sub r10, qword [r9 + r8 + 0x70]
xor r10, r12
lea r8, [r10 + r10]
shl r10, 4
sub r10, r8
add r10, 0xf
movabs rsi, 0xc91b69cad40ef98c
xor r10, rsi
add r10, qword [rax + rcx + 0x71]
mov rcx, qword [rbp + 0x28]
call r10
mov rcx, qword [rdi]
mov rdi, qword [rbp + 0x20]
mov qword [rax], rcx
mov rax, qword [0x14015bce8]
xor ecx, ecx
sub rcx, qword [0x14015c028]
xor rcx, r15
mov rdx, rcx
shl rdx, 5
sub rdx, rcx
add rdx, 0x1f
xor rdx, r15
mov rax, qword [rax + rdx + 0x49]
xor ecx, ecx
sub rcx, qword [0x14015c0f0]
mov rdx, qword [0x14015bdb0]
xor rcx, rbx
imul rcx, rcx, 0x38
add rcx, 0x39
xor rcx, r15
mov rcx, qword [rdx + rcx + 0x48]
xor edx, edx
sub rdx, rcx
xor rdx, rsi
lea rcx, [rdx + rdx*8]
add rcx, 9
xor rcx, rsi
add rax, rcx
inc rax
mov rcx, rdi
call rax
mov r14, rax
mov eax, dword [r13 + 0x20]
cmp r14, rax
jbe 0x140049c25
mov r12, r13
lea r13, [rbp - 0x20]
nop word cs:[rax + rax]
movabs rax, 0x991e02bf87f4a8ce
add r14, rax
mov rax, qword [0x14015bce0]
xor ecx, ecx
sub rcx, qword [0x14015c020]
xor rcx, r15
lea rdx, [rcx + rcx]
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rax, qword [rax + rcx]
mov rcx, qword [0x14015bcb0]
xor edx, edx
sub rdx, qword [0x14015bff0]
xor rdx, rbx
lea rdx, [rdx + rdx*2]
lea rdx, [rdx*8 + 0x19]
xor rdx, r15
xor r8d, r8d
sub r8, qword [rcx + rdx]
xor r8, rax
movabs rcx, 0x66e1fd40780b5732
imul r8, rcx
xor r8, rax
add r14, r8
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov r9, qword [rdx + r8 + 0x20]
shl r9, 2
neg r9
movabs rdx, 0x246da72b503be631
xor r9, rdx
add r9, 4
xor r9, rsi
add r9, qword [rax + rcx + 0x21]
mov rcx, rdi
mov rdx, r13
mov r8, r14
call r9
mov rax, qword [0x14015be88]
xor ecx, ecx
sub rcx, qword [0x14015c1c8]
xor rcx, r15
imul rcx, rcx, 0x53
add rcx, 0x53
xor rcx, r15
movzx edx, byte [rax + rcx + 1]
mov rax, qword [0x14015bce8]
xor ecx, ecx
sub rcx, qword [0x14015c028]
xor rcx, r15
mov r8, rcx
shl r8, 5
sub r8, rcx
add r8, 0x1f
xor r8, r15
mov rcx, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
mov rcx, qword [rcx + r9 + 0x90]
xor r9d, r9d
sub r9, rcx
movabs rcx, 0x491b69cad40ef98c
xor r9, rcx
lea rcx, [r9 + r9*8]
lea r9, [rcx*2 + 0x13]
xor r9, rsi
add r9, qword [rax + r8 + 0x91]
xor dl, 1
mov rcx, r13
call r9
mov eax, dword [r12 + 0x20]
cmp r14, rax
ja 0x140048940
mov r11d, dword [rbp + 0x4c]
mov rdi, qword [rbp + 0x10]
mov r13, r12
movabs r12, 0x491b69cad40ef98c
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
cmp esi, 7
jae 0x14004936d
mov dword [rbp + 0x4c], r11d
cmp esi, 5
jne 0x1400494cd
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov rdx, qword [rdx + r8 + 0xd0]
xor r8d, r8d
sub r8, rdx
xor r8, r12
lea rdx, [r8 + r8*4]
lea rdx, [rdx + rdx*4]
add r8, rdx
add r8, 0x1b
movabs rsi, 0xc91b69cad40ef98c
xor r8, rsi
add r8, qword [rax + rcx + 0xd1]
mov rcx, rdi
mov rdx, qword [rbp + 0x40]
call r8
test al, al
jne 0x140048d66
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov rdx, qword [rdx + r8 + 0x40]
shl rdx, 3
neg rdx
movabs r8, 0x48db4e56a077cc61
xor rdx, r8
add rdx, 8
xor rdx, rsi
add rdx, qword [rax + rcx + 0x41]
mov rcx, rdi
call rdx
movsx eax, byte [rax]
mov rcx, qword [0x14015bc58]
xor edx, edx
sub rdx, qword [0x14015bf98]
xor rdx, r15
lea r8, [rdx + rdx*2]
lea rdx, [rdx + r8*4]
add rdx, 0xd
xor rdx, r15
mov ecx, dword [rcx + rdx + 1]
mov rdx, qword [0x14015bed0]
mov r8, qword [0x14015c210]
xor r9d, r9d
sub r9, r8
movabs r8, 0x3b2531626c602a84
xor r9, r8
imul r8, r9, 0x5c
add r8, 0x5d
xor r8, r15
xor r9d, r9d
sub r9d, dword [rdx + r8]
xor r9d, ecx
imul edx, r9d, 0x96d3207e
xor edx, ecx
add edx, 0x692cdf82
cmp edx, eax
je 0x140048d66
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov rdx, qword [rdx + r8 + 0x40]
shl rdx, 3
neg rdx
movabs r8, 0x48db4e56a077cc61
xor rdx, r8
add rdx, 8
xor rdx, rsi
add rdx, qword [rax + rcx + 0x41]
mov rcx, rdi
call rdx
movsx eax, byte [rax]
mov rcx, qword [0x14015bc60]
xor edx, edx
sub rdx, qword [0x14015bfa0]
xor rdx, r15
lea r8, [rdx + rdx]
shl rdx, 4
sub rdx, r8
add rdx, 0xf
xor rdx, r15
mov ecx, dword [rcx + rdx]
mov rdx, qword [0x14015bca8]
mov r8, qword [0x14015bfe8]
xor r9d, r9d
sub r9, r8
xor r9, r15
lea r8, [r9 + r9*2]
shl r8, 3
sub r8, r9
add r8, 0x17
xor r8, r15
xor r9d, r9d
sub r9d, dword [rdx + r8 + 1]
xor r9d, ecx
imul edx, r9d, 0x32cba13d
xor edx, ecx
add edx, 0xcd345ec3
cmp edx, eax
jne 0x14004a55a
mov rax, qword [0x14015be40]
mov rcx, qword [0x14015c180]
xor edx, edx
sub rdx, rcx
xor rdx, r15
imul rcx, rdx, 0x4a
add rcx, 0x4b
xor rcx, r15
movzx r11d, byte [rax + rcx]
add r11b, 0xf8
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
cmp esi, 0x13
jae 0x1400494b9
cmp esi, 0x11
je 0x14004a530
jmp 0x14004a5d8
je 0x140049c46
cmp esi, 4
jne 0x140049f5e
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov rdx, qword [rdx + r8 + 0x80]
shl rdx, 4
neg rdx
movabs r8, 0x91b69cad40ef98c1
xor rdx, r8
add rdx, 0x10
movabs rsi, 0xc91b69cad40ef98c
xor rdx, rsi
add rdx, qword [rax + rcx + 0x81]
mov rcx, rdi
call rdx
mov r14d, eax
mov ecx, dword [r13 + 0xc]
xor eax, eax
sub rax, qword [0x14015c098]
mov rdx, qword [0x14015bd58]
xor rax, r15
lea rax, [rax + rax*8]
lea rax, [rax + rax*4]
add rax, 0x2d
xor rax, r15
xor r8d, r8d
sub r8d, dword [rdx + rax + 1]
mov rax, qword [0x14015bc98]
xor edx, edx
sub rdx, qword [0x14015bfd8]
xor rdx, r15
lea r9, [rdx + rdx*4]
lea rdx, [rdx + r9*4]
add rdx, 0x15
xor rdx, r15
mov eax, dword [rax + rdx + 1]
xor r8d, eax
imul edx, r8d, 0x160cc081
xor edx, eax
add edx, 0xe9f33f7f
xor eax, eax
sub rax, qword [0x14015c028]
mov r8, qword [0x14015bce8]
xor rax, r15
mov r9, rax
shl r9, 5
sub r9, rax
add r9, 0x1f
xor r9, r15
mov rax, qword [r8 + r9 + 0x69]
mov r8, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
mov r8, qword [r8 + r9 + 0x68]
xor r9d, r9d
sub r9, r8
xor r9, rsi
lea r8, [r9 + r9*2]
lea r8, [r9 + r8*4]
add r8, 0xd
xor r8, rsi
add rax, r8
inc rax
call rax
mov rcx, qword [0x14015bcf0]
mov rdx, qword [0x14015bdf0]
mov r8, qword [str.._f]
shl r8, 6
neg r8
movabs r9, 0xc94c589b180aa101
xor r8, r9
add r8, 0x40
xor r8, r15
xor r9d, r9d
sub r9d, dword [rdx + r8]
mov rdx, qword [str._.K1i.i]
shl rdx, 5
neg rdx
movabs r8, 0x64a62c4d8c055081
xor rdx, r8
add rdx, 0x20
xor rdx, r15
mov ecx, dword [rcx + rdx]
xor r9d, ecx
imul edx, r9d, 0x53d3ba19
xor edx, ecx
add edx, 0xac2c45e7
cmp eax, edx
sete r11b
xor r11b, r14b
movabs r12, 0x491b69cad40ef98c
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
je 0x1400499ee
cmp esi, 0x10
je 0x14004b067
mov r8d, dword [r13 + 0x20]
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
mov r9, qword [rdx + r9 + 0x20]
shl r9, 2
neg r9
xor r9, r10
add r9, 4
movabs rsi, 0xc91b69cad40ef98c
xor r9, rsi
add r9, qword [rax + rcx + 0x21]
mov rcx, qword [rbp + 0x20]
mov rdx, r14
call r9
mov rax, qword [0x14015bce8]
xor ecx, ecx
sub rcx, qword [0x14015c028]
xor rcx, r15
mov rdx, rcx
shl rdx, 5
sub rdx, rcx
add rdx, 0x1f
xor rdx, r15
mov rax, qword [rax + rdx + 0x29]
xor ecx, ecx
sub rcx, qword [0x14015c0f0]
mov rdx, qword [0x14015bdb0]
xor rcx, rbx
imul rcx, rcx, 0x38
add rcx, 0x39
xor rcx, r15
mov rcx, qword [rdx + rcx + 0x28]
xor edx, edx
sub rdx, rcx
xor rdx, rsi
lea rcx, [rdx + rdx*4]
add rcx, 5
xor rcx, rsi
add rax, rcx
inc rax
mov rcx, r14
call rax
test al, al
je 0x14004a19f
mov rax, qword [rdi]
mov qword [rbp - 0x20], rax
mov edx, dword [r13 + 0x20]
mov rax, qword [0x14015bce8]
xor r8d, r8d
sub r8, qword [0x14015c028]
xor r8, r15
mov rcx, r8
shl rcx, 5
sub rcx, r8
add rcx, 0x1f
xor rcx, r15
xor r8d, r8d
sub r8, qword [0x14015c0f0]
mov r9, qword [0x14015bdb0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
xor r10d, r10d
sub r10, qword [r9 + r8 + 0x70]
movabs r12, 0x491b69cad40ef98c
xor r10, r12
lea r8, [r10 + r10]
shl r10, 4
sub r10, r8
add r10, 0xf
xor r10, rsi
add r10, qword [rax + rcx + 0x71]
mov r14, qword [rbp + 0x28]
mov rcx, r14
call r10
mov rax, qword [rax]
mov qword [rbp + 0x38], rax
mov edx, dword [r13 + 0x20]
mov rax, qword [0x14015bce8]
xor r8d, r8d
sub r8, qword [0x14015c028]
xor r8, r15
mov rcx, r8
shl rcx, 5
sub rcx, r8
add rcx, 0x1f
xor rcx, r15
xor r8d, r8d
sub r8, qword [0x14015c0f0]
mov r9, qword [0x14015bdb0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
xor r10d, r10d
sub r10, qword [r9 + r8 + 0x70]
xor r10, r12
lea r8, [r10 + r10]
shl r10, 4
sub r10, r8
add r10, 0xf
xor r10, rsi
add r10, qword [rax + rcx + 0x71]
mov rcx, r14
call r10
mov rax, qword [rax + 8]
mov qword [rbp + 8], rax
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
mov r8, qword [0x14015c0f0]
xor r9d, r9d
sub r9, r8
xor r9, rbx
imul r8, r9, 0x38
add r8, 0x39
xor r8, r15
mov r8, qword [rdx + r8 + 0x10]
add r8, r8
neg r8
movabs rdx, 0x9236d395a81df319
xor r8, rdx
add r8, 2
xor r8, rsi
add r8, qword [rax + rcx + 0x11]
lea rcx, [rbp + 0x38]
lea rdx, [rbp + 8]
call r8
test al, al
je 0x14004a362
mov eax, dword [rdi + 0xb8]
mov rcx, qword [rdi + 0xd0]
xor edx, edx
sub rdx, qword [0x14015c028]
mov r10, qword [rbp + 8]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
mov r9, qword [0x14015bdb0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
xor r11d, r11d
sub r11, qword [r9 + r8 + 0x60]
mov r9, qword [rbp + 0x38]
xor rdx, r15
mov r8, rdx
shl r8, 5
sub r8, rdx
mov rdx, qword [0x14015bce8]
add r8, 0x1f
xor r8, r15
movabs r14, 0x91b69cad40ef98c
xor r11, r14
lea r11, [r11 + r11*2]
lea r11, [r11*4 + 0xd]
xor r11, rsi
add r11, qword [rdx + r8 + 0x61]
mov rdx, qword [rdi]
mov r8, qword [rdi + 0xa0]
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], r10
lea rcx, [rbp - 0x48]
call r11
mov rax, qword [rbp - 0x48]
mov qword [rbp - 0x20], rax
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov rdx, qword [rdx + r8 + 0xd0]
xor r8d, r8d
sub r8, rdx
movabs rdx, 0x491b69cad40ef98c
xor r8, rdx
lea rdx, [r8 + r8*4]
lea rdx, [rdx + rdx*4]
add r8, rdx
add r8, 0x1b
xor r8, rsi
add r8, qword [rax + rcx + 0xd1]
lea rcx, [rbp - 0x20]
mov rdx, rdi
call r8
test al, al
jne 0x14004a36c
mov rax, qword [rbp - 0x20]
mov qword [rdi], rax
mov r11d, dword [rbp + 0x4c]
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
jne 0x140049806
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov rdx, qword [rdx + r8 + 0xd0]
xor r8d, r8d
sub r8, rdx
xor r8, r12
lea rdx, [r8 + r8*4]
lea rdx, [rdx + rdx*4]
add r8, rdx
add r8, 0x1b
movabs rsi, 0xc91b69cad40ef98c
xor r8, rsi
add r8, qword [rax + rcx + 0xd1]
mov rcx, rdi
mov rdx, qword [rbp + 0x40]
call r8
movzx ecx, byte [rbp + 0x4a]
mov r11d, ecx
test al, al
jne 0x1400494a3
mov rax, qword [0x14015bce8]
xor ecx, ecx
sub rcx, qword [0x14015c028]
xor rcx, r15
mov rdx, rcx
shl rdx, 5
sub rdx, rcx
add rdx, 0x1f
xor rdx, r15
mov rax, qword [rax + rdx + 0x89]
mov rcx, qword [0x14015bdb0]
xor edx, edx
sub rdx, qword [0x14015c0f0]
xor rdx, rbx
imul rdx, rdx, 0x38
add rdx, 0x39
xor rdx, r15
xor r8d, r8d
sub r8, qword [rcx + rdx + 0x88]
xor r8, rsi
mov rcx, r8
shl rcx, 4
add rcx, r8
add rcx, 0x11
xor rcx, rsi
add rax, rcx
inc rax
mov rcx, rdi
mov rdx, r13
call rax
mov r11d, eax
mov rax, qword [0x14015be60]
mov rcx, qword [0x14015c1a0]
xor edx, edx
sub rdx, rcx
xor rdx, r15
imul rcx, rdx, 0x4e
add rcx, 0x4f
xor rcx, r15
xor r11b, byte [rax + rcx]
not r11b
and r11b, 1
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
je 0x14004a850
cmp esi, 0x15
jb 0x14004a530
jmp 0x14004ab4a
xor ecx, ecx
sub rcx, qword [0x14015c028]
mov rax, qword [0x14015bce8]
xor rcx, r15
mov rdx, rcx
shl rdx, 5
sub rdx, rcx
add rdx, 0x1f
xor rdx, r15
mov rcx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
xor r9d, r9d
sub r9, qword [rcx + r8 + 0x30]
xor r9, r12
lea rcx, [r9 + r9*2]
lea r8, [rcx*2 + 7]
mov rcx, r14
movabs r14, 0xc91b69cad40ef98c
xor r8, r14
add r8, qword [rax + rdx + 0x31]
call r8
mov eax, dword [rdi + 0xb8]
mov dword [rbp + 0x30], eax
mov rax, qword [rdi + 0xd0]
mov qword [rbp - 0x40], rax
lea rsi, [r13 + 0x20]
mov rax, qword [0x14015bce8]
mov r9, qword [0x14015bdb0]
xor edx, edx
sub rdx, qword [0x14015c0f0]
xor rdx, rbx
imul rdx, rdx, 0x38
add rdx, 0x39
xor rdx, r15
xor r8d, r8d
sub r8, qword [r9 + rdx + 0xb8]
xor r9d, r9d
sub r9, qword [0x14015c028]
xor r9, r15
mov rdx, r9
shl rdx, 5
sub rdx, r9
add rdx, 0x1f
xor rdx, r15
mov rax, qword [rax + rdx + 0xb9]
xor r8, r14
lea rdx, [r8 + r8*2]
shl rdx, 3
sub rdx, r8
add rdx, 0x17
xor rdx, r14
add rax, rdx
inc rax
mov rcx, rsi
mov qword [rbp - 0x38], rsi
call rax
mov r12, rdi
mov rdi, rax
xor ecx, ecx
sub rcx, qword [0x14015c028]
mov rax, qword [0x14015bce8]
xor rcx, r15
mov rdx, rcx
shl rdx, 5
sub rdx, rcx
add rdx, 0x1f
xor rdx, r15
mov rcx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
xor r9d, r9d
sub r9, qword [rcx + r8 + 0xa0]
movabs rcx, 0x91b69cad40ef98c
xor r9, rcx
lea rcx, [r9 + r9*4]
lea r8, [rcx*4 + 0x15]
xor r8, r14
add r8, qword [rax + rdx + 0xa1]
mov rcx, rsi
call r8
mov esi, eax
add rsi, rdi
mov rdi, r12
mov rax, qword [0x14015bce8]
mov rcx, qword [0x14015bdb0]
xor edx, edx
sub rdx, qword [0x14015c0f0]
xor rdx, rbx
imul rdx, rdx, 0x38
add rdx, 0x39
xor rdx, r15
xor r8d, r8d
sub r8, qword [rcx + rdx + 0xb8]
xor ecx, ecx
sub rcx, qword [0x14015c028]
xor rcx, r15
mov rdx, rcx
shl rdx, 5
sub rdx, rcx
add rdx, 0x1f
xor rdx, r15
mov rax, qword [rax + rdx + 0xb9]
xor r8, r14
lea rcx, [r8 + r8*2]
shl rcx, 3
sub rcx, r8
add rcx, 0x17
xor rcx, r14
add rax, rcx
inc rax
mov rcx, qword [rbp - 0x38]
call rax
mov rdx, qword [r12]
mov r8, qword [r12 + 0xa0]
mov rcx, qword [0x14015bce8]
xor r9d, r9d
sub r9, qword [0x14015c028]
xor r9, r15
mov r10, r9
shl r10, 5
sub r10, r9
add r10, 0x1f
xor r10, r15
mov rcx, qword [rcx + r10 + 0x19]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
mov r10, qword [0x14015bdb0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
xor r11d, r11d
sub r11, qword [r10 + r9 + 0x18]
xor r11, r14
lea r9, [r11 + r11*2]
add r9, 3
xor r9, r14
lea r10, [rcx + r9]
inc r10
mov ecx, dword [rbp + 0x30]
mov dword [rsp + 0x30], ecx
mov rcx, qword [rbp - 0x40]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rsi
lea rcx, [rbp + 0x38]
mov r9, rax
call r10
mov rax, qword [rbp + 0x38]
mov qword [rbp - 0x20], rax
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
mov r8, qword [0x14015c0f0]
xor r9d, r9d
sub r9, r8
xor r9, rbx
imul r8, r9, 0x38
add r8, 0x39
xor r8, r15
mov r8, qword [rdx + r8 + 0x10]
add r8, r8
neg r8
movabs rdx, 0x9236d395a81df319
xor r8, rdx
add r8, 2
xor r8, r14
add r8, qword [rax + rcx + 0x11]
lea rcx, [rbp - 0x20]
mov rdx, r12
call r8
test al, al
je 0x14004a130
mov rax, qword [rbp - 0x20]
mov qword [rdi], rax
movabs r12, 0x491b69cad40ef98c
mov r11d, dword [rbp + 0x4c]
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
cmp esi, 0xa
jb 0x14004a530
mov r12d, r11d
mov rax, qword [rdi]
mov qword [rbp + 0x30], rax
mov rax, qword [0x14015be50]
xor ecx, ecx
sub rcx, qword [0x14015c190]
movabs rdx, 0x3b2531626c602a84
xor rcx, rdx
imul rcx, rcx, 0x4c
add rcx, 0x4d
xor rcx, r15
mov r10, rbx
mov rbx, rdi
mov edi, dword [rax + rcx]
mov rax, qword [0x14015be78]
xor ecx, ecx
sub rcx, qword [0x14015c1b8]
xor rcx, r15
lea rcx, [rcx + rcx*8]
lea rcx, [rcx + rcx*8]
add rcx, 0x51
xor rcx, r15
mov r9, r15
mov r15d, dword [rax + rcx + 1]
xor ecx, ecx
sub rcx, qword [0x14015c028]
mov rax, qword [0x14015bce8]
xor rcx, r9
mov rdx, rcx
shl rdx, 5
sub rdx, rcx
add rdx, 0x1f
xor rdx, r9
mov rcx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, r10
imul r8, r8, 0x38
add r8, 0x39
xor r8, r9
mov rcx, qword [rcx + r8 + 0xc0]
xor r8d, r8d
sub r8, rcx
movabs rcx, 0x91b69cad40ef98c
xor r8, rcx
lea rcx, [r8 + r8*2]
lea r8, [rcx*8 + 0x19]
movabs rcx, 0xc91b69cad40ef98c
xor r8, rcx
add r8, qword [rax + rdx + 0xc1]
mov rcx, r14
mov rdx, rbx
call r8
mov rdx, qword [r13 + 0x20]
mov r14, rbx
mov rcx, rbx
call fcn.1400483d0
neg r15d
xor r15d, edi
imul ecx, r15d, 0x45ce4981
xor ecx, edi
add ecx, 0xba31b67f
cmp esi, ecx
setne cl
cmp cl, al
je 0x14004a2a6
mov rax, qword [0x14015d118]
mov rcx, qword [0x14015d128]
xor edx, edx
sub rdx, rcx
movabs rcx, 0x3a5bbed60501d8f3
xor rdx, rcx
inc rdx
xor rdx, rcx
mov rax, qword [rax + rdx + 1]
movabs rcx, 0x8d927d73cf9ac3c7
add rax, rcx
mov rcx, r14
lea rdx, [rbp - 0x20]
call rax
xor eax, eax
sub rax, qword [0x14015c110]
mov rcx, qword [0x14015bdd0]
movabs rdx, 0x3b2531626c602a84
xor rax, rdx
imul rax, rax, 0x3c
add rax, 0x3d
movabs r15, 0x7b2531626c602a84
xor rax, r15
movzx eax, byte [rcx + rax]
mov rcx, qword [0x14015bde0]
mov rdx, qword [0x14015c120]
xor r8d, r8d
sub r8, rdx
xor r8, r15
lea rdx, [r8 + r8]
shl r8, 6
sub r8, rdx
add r8, 0x3f
xor r8, r15
movzx ecx, byte [rcx + r8]
xor edx, edx
sub dl, cl
xor dl, al
movzx ecx, dl
imul r12d, ecx, 0x65
xor r12b, al
add r12b, 0x9b
mov rdi, r14
jmp 0x14004a2ba
mov rsi, qword [r13 + 0x20]
mov r8d, dword [rsi + 0x20]
cmp byte [rdi + 0xc1], 0
jne 0x140049a69
mov rax, qword [0x14015bd18]
xor ecx, ecx
sub rcx, qword [0x14015c058]
xor rcx, r15
lea rdx, [rcx + rcx*8]
lea rcx, [rcx + rdx*4]
add rcx, 0x25
xor rcx, r15
mov eax, dword [rax + rcx + 1]
mov rcx, qword [0x14015be20]
mov rdx, qword [0x14015c160]
xor r9d, r9d
sub r9, rdx
xor r9, r15
imul rdx, r9, 0x46
add rdx, 0x47
xor rdx, r15
xor r9d, r9d
sub r9d, dword [rcx + rdx]
xor r9d, eax
imul ecx, r9d, 0x60672d3a
xor ecx, eax
add ecx, 0x9f98d2c6
cmp r8d, ecx
je 0x14004a530
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
mov r9, qword [rdx + r9 + 0x20]
shl r9, 2
neg r9
xor r9, r10
add r9, 4
movabs r14, 0xc91b69cad40ef98c
xor r9, r14
add r9, qword [rax + rcx + 0x21]
mov rcx, qword [rbp + 0x20]
mov r12, r13
lea r13, [rbp - 0x20]
mov rdx, r13
call r9
mov rax, qword [0x14015bdd8]
xor ecx, ecx
sub rcx, qword [0x14015c118]
xor rcx, r15
imul rcx, rcx, 0x3d
add rcx, 0x3d
xor rcx, r15
movzx edx, byte [rax + rcx + 1]
mov rax, qword [0x14015bce8]
xor r8d, r8d
sub r8, qword [0x14015c028]
xor r8, r15
mov rcx, r8
shl rcx, 5
sub rcx, r8
add rcx, 0x1f
xor r8d, r8d
sub r8, qword [0x14015c0f0]
mov r9, qword [0x14015bdb0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
xor r10d, r10d
sub r10, qword [r9 + r8 + 0x90]
xor rcx, r15
movabs r8, 0x491b69cad40ef98c
xor r10, r8
lea r8, [r10 + r10*8]
lea r8, [r8*2 + 0x13]
xor r8, r14
add r8, qword [rax + rcx + 0x91]
xor dl, 1
mov rcx, r13
mov r13, r12
call r8
mov edx, dword [rsi + 0x20]
mov rax, qword [0x14015bce8]
xor r8d, r8d
sub r8, qword [0x14015c028]
xor r8, r15
mov rcx, r8
shl rcx, 5
sub rcx, r8
add rcx, 0x1f
xor rcx, r15
xor r8d, r8d
sub r8, qword [0x14015c0f0]
mov r9, qword [0x14015bdb0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov r8, qword [r9 + r8 + 0x70]
xor r9d, r9d
sub r9, r8
movabs r8, 0x491b69cad40ef98c
xor r9, r8
lea r8, [r9 + r9]
shl r9, 4
sub r9, r8
add r9, 0xf
xor r9, r14
movabs r12, 0x491b69cad40ef98c
add r9, qword [rax + rcx + 0x71]
mov rcx, qword [rbp + 0x28]
call r9
mov r11d, dword [rbp + 0x4c]
mov rcx, qword [rdi]
mov qword [rax + 8], rcx
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
movabs r12, 0x491b69cad40ef98c
mov r11d, dword [rbp + 0x4c]
mov rdi, qword [rbp + 0x10]
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
mov ecx, dword [rdi + 0xbc]
mov rax, qword [0x14015bde8]
xor edx, edx
sub rdx, qword [0x14015c128]
xor rdx, r15
mov r8, rdx
shl r8, 6
sub r8, rdx
add r8, 0x3f
xor r8, r15
xor edx, edx
sub rdx, qword [0x14015c090]
mov r9, qword [0x14015bd50]
movabs r10, 0x3b2531626c602a84
xor rdx, r10
imul rdx, rdx, 0x2c
add rdx, 0x2d
xor rdx, r15
xor r10d, r10d
sub r10d, dword [r9 + rdx]
mov eax, dword [rax + r8 + 1]
xor r10d, eax
imul edx, r10d, 0xac8b23f2
xor edx, eax
add edx, 0x5374dc0e
xor eax, eax
sub rax, qword [0x14015c028]
mov r8, qword [0x14015bce8]
xor rax, r15
mov r9, rax
shl r9, 5
sub r9, rax
add r9, 0x1f
xor r9, r15
mov rax, qword [r8 + r9 + 0xa9]
mov r8, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
xor r10d, r10d
sub r10, qword [r8 + r9 + 0xa8]
movabs rsi, 0xc91b69cad40ef98c
xor r10, rsi
lea r8, [r10 + r10*4]
lea r8, [r10 + r8*4]
add r8, 0x15
xor r8, rsi
add rax, r8
inc rax
call rax
mov rcx, qword [0x14015bed8]
xor edx, edx
sub rdx, qword [str.OLr_8e]
xor rdx, r15
imul rdx, rdx, 0x5d
add rdx, 0x5d
xor rdx, r15
mov ecx, dword [rcx + rdx + 1]
mov rdx, qword [0x14015bcb8]
mov r8, qword [0x14015bff8]
xor r9d, r9d
sub r9, r8
xor r9, r15
lea r8, [r9 + r9*4]
lea r8, [r8 + r8*4]
add r8, 0x19
xor r8, r15
xor r9d, r9d
sub r9d, dword [rdx + r8 + 1]
xor r9d, ecx
imul edx, r9d, 0x69af5886
xor edx, ecx
add edx, 0x9650a77a
cmp eax, edx
jne 0x140049e12
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
mov r8, qword [0x14015c0f0]
xor r9d, r9d
sub r9, r8
xor r9, rbx
imul r8, r9, 0x38
add r8, 0x39
xor r8, r15
mov r8, qword [rdx + r8 + 0x10]
add r8, r8
neg r8
movabs rdx, 0x9236d395a81df319
xor r8, rdx
add r8, 2
xor r8, rsi
add r8, qword [rax + rcx + 0x11]
mov rcx, rdi
mov rdx, qword [rbp + 0x18]
call r8
test al, al
je 0x14004a3d8
mov rdx, qword [rdi]
mov rax, qword [0x14015bce8]
xor ecx, ecx
sub rcx, qword [0x14015c028]
xor rcx, r15
mov r8, rcx
shl r8, 5
sub r8, rcx
add r8, 0x1f
xor r8, r15
mov rax, qword [rax + r8 + 0x39]
mov rcx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
xor r9d, r9d
sub r9, qword [rcx + r8 + 0x38]
xor r9, rsi
lea rcx, [r9*8]
sub rcx, r9
add rcx, 7
xor rcx, rsi
add rax, rcx
inc rax
mov rcx, r14
call rax
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov rdx, qword [rdx + r8 + 0x40]
shl rdx, 3
neg rdx
movabs r8, 0x48db4e56a077cc61
xor rdx, r8
add rdx, 8
xor rdx, rsi
add rdx, qword [rax + rcx + 0x41]
mov rcx, r14
call rdx
movsx eax, byte [rax]
mov rcx, qword [0x14015bc18]
xor edx, edx
sub rdx, qword [0x14015bf58]
xor rdx, r15
lea rdx, [rdx + rdx*4]
add rdx, 5
xor rdx, r15
mov ecx, dword [rcx + rdx + 1]
mov rdx, qword [0x14015bcf8]
mov r8, qword [0x14015c038]
xor r9d, r9d
sub r9, r8
xor r9, r15
mov r8, r9
shl r8, 5
add r8, r9
add r8, 0x21
xor r8, r15
xor r9d, r9d
sub r9d, dword [rdx + r8 + 1]
xor r9d, ecx
imul edx, r9d, 0x34734ad6
xor edx, ecx
add edx, 0xcb8cb52a
jmp 0x14004a291
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov rdx, qword [rdx + r8 + 0xd0]
xor r8d, r8d
sub r8, rdx
xor r8, r12
lea rdx, [r8 + r8*4]
lea rdx, [rdx + rdx*4]
add r8, rdx
add r8, 0x1b
movabs rsi, 0xc91b69cad40ef98c
xor r8, rsi
add r8, qword [rax + rcx + 0xd1]
mov rcx, rdi
mov rdx, qword [rbp + 0x40]
call r8
test al, al
je 0x14004a1bc
mov ecx, dword [rdi + 0xbc]
mov rax, qword [0x14015be68]
xor edx, edx
sub rdx, qword [0x14015c1a8]
xor rdx, r15
imul rdx, rdx, 0x4f
add rdx, 0x4f
xor rdx, r15
mov r8, qword [0x14015bc08]
xor r9d, r9d
sub r9, qword [0x14015bf48]
xor r9, r15
lea r9, [r9 + r9*2]
add r9, 3
xor r9, r15
xor r10d, r10d
sub r10d, dword [r8 + r9 + 1]
mov eax, dword [rax + rdx + 1]
xor r10d, eax
imul edx, r10d, 0xb445c651
xor edx, eax
add edx, 0x4bba39af
xor eax, eax
sub rax, qword [0x14015c028]
mov r8, qword [0x14015bce8]
xor rax, r15
mov r9, rax
shl r9, 5
sub r9, rax
add r9, 0x1f
xor r9, r15
mov rax, qword [r8 + r9 + 0xa9]
mov r8, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
xor r10d, r10d
sub r10, qword [r8 + r9 + 0xa8]
xor r10, rsi
lea r8, [r10 + r10*4]
lea r8, [r10 + r8*4]
add r8, 0x15
xor r8, rsi
add rax, r8
inc rax
call rax
xor ecx, ecx
sub rcx, qword [0x14015c150]
mov rdx, qword [0x14015be10]
movabs r8, 0x3b2531626c602a84
xor rcx, r8
mov r8, rcx
shl r8, 6
lea rcx, [r8 + rcx*4]
add rcx, 0x45
xor rcx, r15
mov ecx, dword [rdx + rcx]
mov rdx, qword [0x14015bc68]
mov r8, qword [0x14015bfa8]
xor r9d, r9d
sub r9, r8
xor r9, r15
lea r8, [r9 + r9*4]
lea r8, [r8 + r8*2]
add r8, 0xf
xor r8, r15
xor r9d, r9d
sub r9d, dword [rdx + r8 + 1]
xor r9d, ecx
imul edx, r9d, 0xbe452fca
xor edx, ecx
add edx, 0x41bad036
jmp 0x14004a51e
mov rax, qword [0x14015bbf0]
movabs rcx, 0x7b2531626c602a85
movzx eax, byte [rax + rcx]
mov rcx, qword [0x14015bca0]
mov rdx, qword [0x14015bfe0]
xor r8d, r8d
sub r8, rdx
xor r8, r15
lea rdx, [r8 + r8*4]
lea rdx, [r8 + rdx*4]
add rdx, r8
add rdx, 0x17
xor rdx, r15
movzx ecx, byte [rcx + rdx]
xor edx, edx
sub dl, cl
xor dl, al
movzx ecx, dl
imul r11d, ecx, 0xffffffb9
xor r11b, al
add r11b, 0x47
movabs r12, 0x491b69cad40ef98c
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
mov r11d, dword [rbp + 0x4c]
movabs r12, 0x491b69cad40ef98c
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
xor rcx, r15
mov rdx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov rdx, qword [rdx + r8 + 0x40]
shl rdx, 3
neg rdx
movabs r8, 0x48db4e56a077cc61
xor rdx, r8
add rdx, 8
xor rdx, rsi
add rdx, qword [rax + rcx + 0x41]
mov rcx, rdi
call rdx
movsx eax, byte [rax]
xor ecx, ecx
sub rcx, qword [0x14015c0d8]
mov rdx, qword [0x14015bd98]
xor rcx, r15
imul rcx, rcx, 0x35
add rcx, 0x35
xor rcx, r15
mov ecx, dword [rdx + rcx + 1]
mov rdx, qword [0x14015bc28]
mov r8, qword [0x14015bf68]
xor r9d, r9d
sub r9, r8
xor r9, r15
lea r8, [r9*8]
sub r8, r9
add r8, 7
xor r8, r15
xor r9d, r9d
sub r9d, dword [rdx + r8 + 1]
xor r9d, ecx
imul edx, r9d, 0xfd558339
xor edx, ecx
add edx, 0x2aa7cc7
cmp edx, eax
setne r11b
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
mov rdi, r14
mov rax, qword [rbp + 0x30]
mov qword [r14], rax
movabs r15, 0x7b2531626c602a84
xor eax, eax
sub rax, qword [0x14015c028]
mov rcx, qword [0x14015bce8]
xor rax, r15
mov rdx, rax
shl rdx, 5
sub rdx, rax
add rdx, 0x1f
xor rdx, r15
mov rax, qword [rcx + rdx + 0xc9]
mov rcx, qword [0x14015bdb0]
xor edx, edx
sub rdx, qword [0x14015c0f0]
movabs rbx, 0x1b2531626c602a84
xor rdx, rbx
imul rdx, rdx, 0x38
add rdx, 0x39
xor rdx, r15
mov rcx, qword [rcx + rdx + 0xc8]
xor edx, edx
sub rdx, rcx
movabs r8, 0xc91b69cad40ef98c
xor rdx, r8
lea rcx, [rdx + rdx*4]
lea rcx, [rcx + rcx*4]
add rcx, 0x19
xor rcx, r8
add rax, rcx
inc rax
lea rcx, [rbp - 0x20]
call rax
movabs r14, 0x491b69cad40ef98c
mov r11d, r12d
mov r12, r14
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
test byte [rbp + 0x4b], 1
jne 0x140049353
mov rax, qword [0x14015beb0]
xor ecx, ecx
sub rcx, qword [0x14015c1f0]
xor rcx, rbx
imul rcx, rcx, 0x58
add rcx, 0x59
xor rcx, r15
movzx eax, byte [rax + rcx]
mov rcx, qword [0x14015beb8]
mov rdx, qword [0x14015c1f8]
xor r8d, r8d
sub r8, rdx
xor r8, r15
imul rdx, r8, 0x59
add rdx, 0x59
xor rdx, r15
movzx ecx, byte [rcx + rdx + 1]
xor edx, edx
sub dl, cl
xor dl, al
movzx ecx, dl
imul r11d, ecx, 0xffffffc3
xor r11b, al
add r11b, 0x3d
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
mov ecx, dword [rdi + 0xbc]
xor eax, eax
sub rax, qword [0x14015c0f8]
mov rdx, qword [0x14015bdb8]
xor rax, r15
imul rax, rax, 0x39
add rax, 0x39
xor rax, r15
xor r8d, r8d
sub r8, qword [0x14015bf88]
mov r9, qword [0x14015bc48]
xor r8, r15
lea r10, [r8 + r8*4]
lea r8, [r8 + r10*2]
add r8, 0xb
xor r8, r15
xor r10d, r10d
sub r10d, dword [r9 + r8 + 1]
mov eax, dword [rdx + rax + 1]
xor r10d, eax
imul edx, r10d, 0x5fe9856c
xor edx, eax
add edx, 0xa0167a94
xor eax, eax
sub rax, qword [0x14015c028]
mov r8, qword [0x14015bce8]
xor rax, r15
mov r9, rax
shl r9, 5
sub r9, rax
add r9, 0x1f
xor r9, r15
mov rax, qword [r8 + r9 + 0xa9]
mov r8, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
xor r10d, r10d
sub r10, qword [r8 + r9 + 0xa8]
xor r10, rsi
lea r8, [r10 + r10*4]
lea r8, [r10 + r8*4]
add r8, 0x15
xor r8, rsi
add rax, r8
inc rax
call rax
mov rcx, qword [0x14015bc78]
xor edx, edx
sub rdx, qword [0x14015bfb8]
xor rdx, r15
mov r8, rdx
shl r8, 4
add rdx, r8
add rdx, 0x11
xor rdx, r15
mov ecx, dword [rcx + rdx + 1]
mov rdx, qword [0x14015bef0]
mov r8, qword [0x14015c230]
xor r9d, r9d
sub r9, r8
movabs r8, 0x32531626c602a84
xor r9, r8
lea r8, [r9 + r9*2]
shl r8, 5
add r8, 0x61
xor r8, r15
xor r9d, r9d
sub r9d, dword [rdx + r8]
xor r9d, ecx
imul edx, r9d, 0x7d01599e
xor edx, ecx
add edx, 0x82fea662
cmp eax, edx
setne r11b
nop word cs:[rax + rax]
test r11b, 1
jne 0x14004b169
mov r13, qword [r13 + 0x10]
test r13, r13
lea r14, [rbp - 0x20]
movabs r10, 0x246da72b503be631
jne 0x1400487d0
jmp 0x14004b169
xor ecx, ecx
sub rcx, qword [0x14015c028]
mov rax, qword [0x14015bce8]
xor rcx, r15
mov rdx, rcx
shl rdx, 5
sub rdx, rcx
add rdx, 0x1f
xor rdx, r15
mov rcx, qword [0x14015bdb0]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov rcx, qword [rcx + r8 + 0x50]
xor r8d, r8d
sub r8, rcx
xor r8, r12
lea rcx, [r8 + r8*4]
lea r8, [rcx*2 + 0xb]
xor r8, rsi
add r8, qword [rax + rdx + 0x51]
mov rcx, rdi
call r8
mov r11d, dword [rbp + 0x4c]
test r11b, 1
je 0x14004a53a
jmp 0x14004b169
mov ecx, dword [r13 + 0xc]
mov rax, qword [0x14015bc20]
xor edx, edx
sub rdx, qword [0x14015bf60]
xor esi, esi
xor rdx, r15
lea rdx, [rdx + rdx*2]
lea rdx, [rdx*2 + 7]
xor rdx, r15
xor r8d, r8d
sub r8, qword [0x14015c0a8]
mov r9, qword [0x14015bd68]
xor r8, r15
imul r8, r8, 0x2f
add r8, 0x2f
xor r8, r15
xor r10d, r10d
sub r10d, dword [r9 + r8 + 1]
mov eax, dword [rax + rdx]
xor r10d, eax
imul edx, r10d, 0x968839fb
xor edx, eax
add edx, 0x6977c605
xor eax, eax
sub rax, qword [0x14015c028]
mov r8, qword [0x14015bce8]
xor rax, r15
mov r9, rax
shl r9, 5
sub r9, rax
add r9, 0x1f
xor r9, r15
mov rax, qword [r8 + r9 + 0x69]
mov r8, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
xor r10d, r10d
sub r10, qword [r8 + r9 + 0x68]
movabs r14, 0xc91b69cad40ef98c
xor r10, r14
lea r8, [r10 + r10*2]
lea r8, [r10 + r8*4]
add r8, 0xd
xor r8, r14
add rax, r8
inc rax
mov r12d, r11d
call rax
mov rcx, qword [0x14015bec0]
xor edx, edx
sub rdx, qword [0x14015c200]
xor rdx, r15
imul rdx, rdx, 0x5a
add rdx, 0x5b
xor rdx, r15
mov ecx, dword [rcx + rdx]
mov rdx, qword [0x14015bcc0]
xor r8d, r8d
sub r8, qword [0x14015c000]
xor r8, r15
lea r9, [r8 + r8*4]
lea r9, [r9 + r9*4]
add r8, r9
add r8, 0x1b
xor r8, r15
xor r9d, r9d
sub r9d, dword [rdx + r8]
xor r9d, ecx
imul edx, r9d, 0xb41a10d9
xor edx, ecx
add edx, 0x4be5ef27
cmp eax, edx
setne r8b
mov rax, qword [0x14015be98]
xor ecx, ecx
sub rcx, qword [0x14015c1d8]
xor rcx, r15
imul rcx, rcx, 0x55
add rcx, 0x55
xor rcx, r15
mov eax, dword [rax + rcx + 1]
mov rcx, qword [0x14015bdc8]
xor edx, edx
sub rdx, qword [0x14015c108]
xor rdx, r15
imul rdx, rdx, 0x3b
add rdx, 0x3b
xor rdx, r15
xor r9d, r9d
sub r9d, dword [rcx + rdx + 1]
xor r9d, eax
imul r9d, r9d, 0xce677126
xor r9d, eax
add r9d, 0x31988eda
mov rax, qword [0x14015bce8]
xor ecx, ecx
sub rcx, qword [0x14015c028]
xor rcx, r15
mov rdx, rcx
shl rdx, 5
sub rdx, rcx
add rdx, 0x1f
xor rdx, r15
mov rax, qword [rax + rdx + 0x79]
xor ecx, ecx
sub rcx, qword [0x14015c0f0]
mov rdx, qword [0x14015bdb0]
xor rcx, rbx
imul rcx, rcx, 0x38
add rcx, 0x39
xor rcx, r15
mov rcx, qword [rdx + rcx + 0x78]
sub rsi, rcx
xor rsi, r14
lea rcx, [rsi + rsi*4]
lea rcx, [rcx + rcx*2]
add rcx, 0xf
xor rcx, r14
add rax, rcx
inc rax
mov rcx, rdi
mov rdx, r13
call rax
mov r11d, r12d
test al, al
jne 0x14004b169
mov rax, qword [0x14015bda8]
xor ecx, ecx
xor edx, edx
sub rdx, qword [0x14015c0e8]
xor rdx, r15
imul rdx, rdx, 0x37
add rdx, 0x37
xor rdx, r15
movzx eax, byte [rax + rdx + 1]
mov rdx, qword [0x14015bf08]
mov r8, qword [0x14015c248]
xor r9d, r9d
sub r9, r8
xor r9, r15
imul r8, r9, 0x63
add r8, 0x63
xor r8, r15
sub cl, byte [rdx + r8 + 1]
xor cl, al
movzx ecx, cl
imul r11d, ecx, 0xffffffa6
xor r11b, al
add r11b, 0x5a
jmp 0x14004b169
mov r12, rdi
mov dword [rbp + 0x4c], r11d
mov rdi, qword [r13 + 0x20]
mov edx, dword [rdi + 0x30]
mov rax, qword [0x14015bce8]
xor r14d, r14d
xor ecx, ecx
sub rcx, qword [0x14015c028]
xor rcx, r15
mov r8, rcx
shl r8, 5
sub r8, rcx
add r8, 0x1f
xor r8, r15
movabs r9, 0xc91b69cad40ef98d
add r9, qword [rax + r8 + 1]
mov rcx, qword [rbp - 0x30]
call r9
mov rcx, qword [0x14015be28]
xor edx, edx
sub rdx, qword [0x14015c168]
xor rdx, r15
imul rdx, rdx, 0x47
add rdx, 0x47
xor rdx, r15
mov ecx, dword [rcx + rdx + 1]
mov rdx, qword [0x14015be48]
mov r8, qword [0x14015c188]
xor r9d, r9d
sub r9, r8
xor r9, r15
imul r8, r9, 0x4b
add r8, 0x4b
xor r8, r15
xor r9d, r9d
sub r9d, dword [rdx + r8 + 1]
xor r9d, ecx
imul edx, r9d, 0x7b6475a4
xor edx, ecx
add edx, 0x849b8a5c
cmp dword [rdi + 0x34], edx
jne 0x14004b162
mov rsi, rbx
mov r13d, dword [rax]
mov ecx, dword [rdi + 0xc]
mov rax, qword [0x14015bf10]
xor edx, edx
sub rdx, qword [0x14015c250]
movabs r8, 0x3b2531626c602a84
xor rdx, r8
imul rdx, rdx, 0x64
add rdx, 0x65
xor rdx, r15
mov r8, qword [0x14015bd70]
xor r9d, r9d
sub r9, qword [0x14015c0b0]
movabs r10, 0xb2531626c602a84
xor r9, r10
lea r9, [r9 + r9*2]
shl r9, 4
add r9, 0x31
xor r9, r15
xor r10d, r10d
sub r10d, dword [r8 + r9]
mov eax, dword [rax + rdx]
xor r10d, eax
imul edx, r10d, 0xd60a6565
xor edx, eax
add edx, 0x29f59a9b
xor eax, eax
sub rax, qword [0x14015c028]
mov r8, qword [0x14015bce8]
xor rax, r15
mov r9, rax
shl r9, 5
sub r9, rax
add r9, 0x1f
xor r9, r15
mov rax, qword [r8 + r9 + 0x69]
mov r8, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
xor r10d, r10d
sub r10, qword [r8 + r9 + 0x68]
movabs rbx, 0xc91b69cad40ef98c
xor r10, rbx
lea r8, [r10 + r10*2]
lea r8, [r10 + r8*4]
add r8, 0xd
xor r8, rbx
add rax, r8
inc rax
call rax
mov rcx, qword [0x14015bd20]
xor edx, edx
sub rdx, qword [0x14015c060]
xor rdx, r15
imul rdx, rdx, 0x26
add rdx, 0x27
xor rdx, r15
mov ecx, dword [rcx + rdx]
mov rdx, qword [0x14015bc00]
mov r8, qword [0x14015bf40]
add r8, r8
neg r8
movabs r9, 0xf64a62c4d8c05509
xor r9, r8
add r9, 2
xor r9, r15
xor r8d, r8d
sub r8d, dword [rdx + r9]
xor r8d, ecx
imul edx, r8d, 0x1b49ad7a
xor edx, ecx
add edx, 0xe4b65286
cmp eax, edx
setne r8b
mov rax, qword [0x14015bce8]
xor ecx, ecx
sub rcx, qword [0x14015c028]
xor rcx, r15
mov rdx, rcx
shl rdx, 5
sub rdx, rcx
add rdx, 0x1f
xor rdx, r15
mov rax, qword [rax + rdx + 0x79]
xor ecx, ecx
sub rcx, qword [0x14015c0f0]
mov rdx, qword [0x14015bdb0]
xor rcx, rsi
imul rcx, rcx, 0x38
add rcx, 0x39
xor rcx, r15
mov rcx, qword [rdx + rcx + 0x78]
sub r14, rcx
xor r14, rbx
lea rcx, [r14 + r14*4]
lea rcx, [rcx + rcx*2]
add rcx, 0xf
xor rcx, rbx
add rax, rcx
inc rax
mov rcx, r12
mov rdx, rdi
mov rdi, r12
mov r9d, r13d
call rax
test al, al
mov r11d, dword [rbp + 0x4c]
jne 0x14004b169
mov rcx, qword [0x14015be00]
xor eax, eax
mov rdx, qword [0x14015c078]
xor r8d, r8d
sub r8, rdx
xor r8, r15
lea rdx, [r8 + r8*4]
lea rdx, [r8 + rdx*8]
add rdx, 0x29
mov r8, qword [0x14015bd38]
xor rdx, r15
sub al, byte [r8 + rdx + 1]
xor edx, edx
sub rdx, qword [0x14015c140]
xor rdx, r15
mov r8, rdx
shl r8, 6
lea rdx, [r8 + rdx*2]
add rdx, 0x43
xor rdx, r15
movzx ecx, byte [rcx + rdx]
xor al, cl
movzx r11d, al
mov eax, r11d
shl eax, 4
sub r11d, eax
xor r11b, cl
add r11b, 0xf
jmp 0x14004b169
movabs r10, 0xc91b69cad40ef98c
jne 0x14004b282
mov r14, r12
mov r12, rdi
mov edi, r11d
mov rax, qword [0x14015bee0]
xor ecx, ecx
sub rcx, qword [0x14015c220]
xor esi, esi
xor rcx, r15
imul rcx, rcx, 0x5e
add rcx, 0x5f
xor rcx, r15
mov rdx, qword [0x14015bc70]
mov r8, qword [0x14015bfb0]
shl r8, 4
neg r8
movabs r9, 0xb2531626c602a841
xor r9, r8
add r9, 0x10
xor r9, r15
xor r8d, r8d
sub r8d, dword [rdx + r9]
mov eax, dword [rax + rcx]
xor r8d, eax
imul ecx, r8d, 0x496437d2
xor ecx, eax
add ecx, 0xb69bc82e
xor eax, eax
sub rax, qword [0x14015c208]
mov rdx, qword [0x14015bec8]
xor rax, r15
imul rax, rax, 0x5b
add rax, 0x5b
xor rax, r15
xor r8d, r8d
sub r8, qword [0x14015c1c0]
mov r9, qword [0x14015be80]
xor r8, r15
imul r8, r8, 0x52
add r8, 0x53
xor r8, r15
xor r10d, r10d
sub r10d, dword [r9 + r8]
mov eax, dword [rdx + rax + 1]
xor r10d, eax
imul edx, r10d, 0x2bf4c1b
xor edx, eax
add edx, 0xfd40b3e5
xor eax, eax
sub rax, qword [0x14015c028]
mov r8, qword [0x14015bce8]
xor rax, r15
mov r9, rax
shl r9, 5
sub r9, rax
add r9, 0x1f
xor r9, r15
mov rax, qword [r8 + r9 + 0xd9]
mov r8, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
xor r10d, r10d
sub r10, qword [r8 + r9 + 0xd8]
movabs r8, 0xc91b69cad40ef98c
xor r10, r8
lea r8, [r10 + r10*8]
lea r8, [r8 + r8*2]
add r8, 0x1b
movabs r9, 0xc91b69cad40ef98c
xor r8, r9
add rax, r8
inc rax
call rax
mov ecx, dword [r12 + 0xbc]
xor edx, edx
sub rdx, qword [0x14015c028]
mov r8, qword [0x14015bce8]
xor rdx, r15
mov r9, rdx
shl r9, 5
sub r9, rdx
add r9, 0x1f
xor r9, r15
mov rdx, qword [r8 + r9 + 0xa9]
mov r8, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
xor r10d, r10d
sub r10, qword [r8 + r9 + 0xa8]
movabs r8, 0xc91b69cad40ef98c
xor r10, r8
lea r8, [r10 + r10*4]
lea r8, [r10 + r8*4]
add r8, 0x15
movabs r9, 0xc91b69cad40ef98c
xor r8, r9
add r8, rdx
inc r8
mov edx, eax
call r8
mov rcx, qword [0x14015bf00]
xor edx, edx
sub rdx, qword [0x14015c240]
xor rdx, r15
imul rdx, rdx, 0x62
add rdx, 0x63
xor rdx, r15
mov ecx, dword [rcx + rdx]
mov rdx, qword [0x14015be08]
mov r8, qword [0x14015c148]
xor r9d, r9d
sub r9, r8
xor r9, r15
imul r8, r9, 0x43
add r8, 0x43
xor r8, r15
sub esi, dword [rdx + r8 + 1]
xor esi, ecx
imul edx, esi, 0xa9a99129
movabs rsi, 0xc91b69cad40ef98c
xor edx, ecx
add edx, 0x56566ed7
cmp eax, edx
je 0x14004ae18
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor r8d, r8d
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
mov rdx, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
sub r8, qword [rdx + r9 + 0xd0]
xor rcx, r15
xor r8, r14
lea rdx, [r8 + r8*4]
lea rdx, [rdx + rdx*4]
add r8, rdx
add r8, 0x1b
xor r8, rsi
add r8, qword [rax + rcx + 0xd1]
mov rcx, qword [rbp + 0x18]
mov rdx, r12
call r8
test al, al
jne 0x14004ae9c
cmp byte [r12 + 0xd8], 1
jne 0x14004aefc
mov rax, qword [0x14015bce8]
xor edx, edx
xor r8d, r8d
sub r8, qword [0x14015c028]
xor r8, r15
mov rcx, r8
shl rcx, 5
sub rcx, r8
add rcx, 0x1f
xor rcx, r15
mov r8, qword [0x14015bdb0]
sub rdx, qword [0x14015c0f0]
xor rdx, rbx
imul rdx, rdx, 0x38
add rdx, 0x39
xor rdx, r15
mov r8, qword [r8 + rdx + 0x10]
add r8, r8
neg r8
movabs rdx, 0x9236d395a81df319
xor r8, rdx
add r8, 2
xor r8, rsi
add r8, qword [rax + rcx + 0x11]
mov rcx, r12
mov rdx, qword [rbp + 0x40]
call r8
test al, al
je 0x14004aefc
mov rax, qword [0x14015bd40]
xor ecx, ecx
xor edx, edx
sub rdx, qword [0x14015c080]
xor rdx, r15
imul rdx, rdx, 0x2a
add rdx, 0x2b
xor rdx, r15
movzx eax, byte [rax + rdx]
mov rdx, qword [0x14015bee8]
mov r8, qword [0x14015c228]
xor r9d, r9d
sub r9, r8
xor r9, r15
imul r8, r9, 0x5f
add r8, 0x5f
xor r8, r15
sub cl, byte [rdx + r8 + 1]
xor cl, al
movzx ecx, cl
imul r11d, ecx, 0xffffff89
xor r11b, al
add r11b, 0x77
jmp 0x14004b166
cmp byte [r12 + 0xc0], 1
jne 0x14004af80
mov rcx, qword [0x14015bce8]
xor eax, eax
xor edx, edx
sub rdx, qword [0x14015c028]
xor rdx, r15
mov r8, rdx
shl r8, 5
sub r8, rdx
add r8, 0x1f
xor r8, r15
mov rcx, qword [rcx + r8 + 0x99]
xor edx, edx
sub rdx, qword [0x14015c0f0]
mov r8, qword [0x14015bdb0]
xor rdx, rbx
imul rdx, rdx, 0x38
add rdx, 0x39
xor rdx, r15
sub rax, qword [r8 + rdx + 0x98]
xor rax, rsi
lea rdx, [rax + rax*8]
lea rax, [rax + rdx*2]
add rax, 0x13
xor rax, rsi
add rax, rcx
inc rax
mov rcx, r12
call rax
test al, al
je 0x14004b05f
mov rax, qword [0x14015bce8]
mov r9, rsi
xor esi, esi
xor ecx, ecx
sub rcx, qword [0x14015c028]
xor rcx, r15
mov rdx, rcx
shl rdx, 5
sub rdx, rcx
add rdx, 0x1f
xor rdx, r15
mov rax, qword [rax + rdx + 9]
xor ecx, ecx
sub rcx, qword [0x14015c0f0]
mov rdx, qword [0x14015bdb0]
xor rcx, rbx
imul rcx, rcx, 0x38
add rcx, 0x39
xor rcx, r15
xor r8d, r8d
sub r8, qword [rdx + rcx + 8]
xor r8, r9
inc r8
xor r8, r9
add rax, r8
inc rax
mov rcx, qword [rbp - 0x28]
mov rdx, r12
call rax
xor eax, eax
sub rax, qword [0x14015bfc8]
xor rax, r15
lea rcx, [rax + rax*8]
lea rax, [rax + rcx*2]
add rax, 0x13
mov rcx, qword [0x14015bfd0]
xor edx, edx
sub rdx, rcx
mov rcx, qword [0x14015bc88]
xor rax, r15
movabs r8, 0x3b2531626c602a84
xor rdx, r8
mov r8, qword [0x14015bc90]
lea rdx, [rdx + rdx*4]
lea rdx, [rdx*4 + 0x15]
xor rdx, r15
sub sil, byte [r8 + rdx]
movzx eax, byte [rcx + rax + 1]
xor sil, al
movzx ecx, sil
lea ecx, [rcx + rcx*8]
neg ecx
xor cl, al
add cl, 9
mov byte [r12 + 0xc0], cl
mov r11d, edi
jmp 0x14004b166
mov rax, qword [0x14015bce8]
xor edx, edx
sub rdx, qword [0x14015c028]
xor r8d, r8d
xor rdx, r15
mov rcx, rdx
shl rcx, 5
sub rcx, rdx
add rcx, 0x1f
mov rdx, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
sub r8, qword [rdx + r9 + 0xb0]
xor rcx, r15
movabs rdx, 0x491b69cad40ef98c
xor r8, rdx
lea rdx, [r8 + r8*4]
lea rdx, [r8 + rdx*4]
add r8, rdx
add r8, 0x17
movabs rdx, 0xc91b69cad40ef98c
xor r8, rdx
add r8, qword [rax + rcx + 0xb1]
mov rcx, rdi
mov rdx, r13
call r8
test al, al
mov r11d, dword [rbp + 0x4c]
jne 0x14004b169
mov rax, qword [0x14015bf18]
xor ecx, ecx
xor edx, edx
sub rdx, qword [0x14015c258]
xor rdx, r15
imul rdx, rdx, 0x65
add rdx, 0x65
xor rdx, r15
movzx eax, byte [rax + rdx + 1]
mov rdx, qword [0x14015bd10]
mov r8, qword [0x14015c050]
xor r9d, r9d
sub r9, r8
movabs r8, 0x3b2531626c602a84
xor r9, r8
lea r8, [r9 + r9*8]
lea r8, [r8*4 + 0x25]
xor r8, r15
sub cl, byte [rdx + r8]
xor cl, al
movzx ecx, cl
imul r11d, ecx, 0x7b
xor r11b, al
add r11b, 0x85
jmp 0x14004b169
mov r11d, dword [rbp + 0x4c]
mov rdi, r12
mov eax, dword [rdi + 0xe0]
xor r10d, r10d
mov rcx, qword [0x14015be58]
mov rdx, qword [0x14015c198]
xor r8d, r8d
sub r8, rdx
xor r8, r15
imul rdx, r8, 0x4d
add rdx, 0x4d
xor rdx, r15
mov ecx, dword [rcx + rdx + 1]
mov rdx, qword [0x14015bc30]
mov r8, qword [0x14015bf70]
shl r8, 3
neg r8
movabs r9, 0xd9298b1363015421
xor r9, r8
add r9, 8
xor r9, r15
sub r10d, dword [rdx + r9]
xor r10d, ecx
imul edx, r10d, 0x9400f4a0
xor edx, ecx
add edx, 0x6bff0b60
cmp edx, eax
jge 0x14004b244
mov rcx, qword [str._tiHa]
xor edx, edx
xor r8d, r8d
sub r8, qword [0x14015c138]
xor r8, r15
mov r9, r8
shl r9, 6
add r8, r9
add r8, 0x41
xor r8, r15
mov ecx, dword [rcx + r8 + 1]
mov r8, qword [0x14015bda0]
mov r9, qword [0x14015c0e0]
xor r10d, r10d
sub r10, r9
xor r10, r15
imul r9, r10, 0x36
add r9, 0x37
xor r9, r15
sub edx, dword [r8 + r9]
xor edx, ecx
imul edx, edx, 0x2c7b200b
xor edx, ecx
add eax, edx
add eax, 0xd384dff5
mov dword [rdi + 0xe0], eax
mov rax, qword [0x14015bd08]
xor ecx, ecx
sub rcx, qword [0x14015c048]
xor rcx, r15
imul rcx, rcx, 0x23
add rcx, 0x23
xor rcx, r15
xor r11b, byte [rax + rcx + 1]
and r11b, 1
mov eax, r11d
add rsp, 0xd8
pop rbx
pop rdi
pop rsi
pop r12
pop r13
pop r14
pop r15
pop rbp
ret
mov rcx, qword [0x14015be30]
xor eax, eax
xor edx, edx
sub rdx, qword [0x14015c170]
xor rdx, rbx
lea rdx, [rdx + rdx*8]
lea rdx, [rdx*8 + 0x49]
xor rdx, r15
mov edx, dword [rcx + rdx]
mov rcx, qword [0x14015bd88]
xor r8d, r8d
sub r8, qword [0x14015c0c8]
xor r8, r15
imul r8, r8, 0x33
add r8, 0x33
xor r8, r15
xor r9d, r9d
sub r9d, dword [rcx + r8 + 1]
xor r9d, edx
imul ecx, r9d, 0x95e70375
xor ecx, edx
add ecx, 0x6a18fc8b
mov rdx, qword [0x14015bce8]
xor r8d, r8d
sub r8, qword [0x14015c028]
xor r8, r15
mov r9, r8
shl r9, 5
sub r9, r8
add r9, 0x1f
xor r9, r15
mov rdx, qword [rdx + r9 + 0x59]
xor r8d, r8d
sub r8, qword [0x14015c0f0]
mov r9, qword [0x14015bdb0]
xor r8, rbx
imul r8, r8, 0x38
add r8, 0x39
xor r8, r15
mov r8, qword [r9 + r8 + 0x58]
sub rax, r8
xor rax, r10
lea r8, [rax + rax*4]
lea rax, [rax + r8*2]
add rax, 0xb
xor rax, r10
add rax, rdx
inc rax
call rax
mov rcx, qword [0x14015bd28]
mov rax, qword [0x14015bcd0]
xor edx, edx
sub rdx, qword [0x14015c010]
movabs r8, 0x3b2531626c602a84
xor rdx, r8
lea r8, [rdx + rdx*8]
lea r8, [r8 + r8*2]
add rdx, r8
add rdx, 0x1d
xor rdx, r15
xor r8d, r8d
sub r8d, dword [rax + rdx]
xor eax, eax
xor edx, edx
sub rdx, qword [0x14015c068]
xor rdx, r15
imul rdx, rdx, 0x27
add rdx, 0x27
xor rdx, r15
mov edx, dword [rcx + rdx + 1]
xor r8d, edx
imul ecx, r8d, 0x6ba8d6f9
xor ecx, edx
add ecx, 0x94572907
xor edx, edx
sub rdx, qword [0x14015c028]
mov r8, qword [0x14015bce8]
xor rdx, r15
mov r9, rdx
shl r9, 5
sub r9, rdx
add r9, 0x1f
xor r9, r15
mov rdx, qword [r8 + r9 + 0x59]
mov r8, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
mov r8, qword [r8 + r9 + 0x58]
sub rax, r8
movabs r8, 0xc91b69cad40ef98c
xor rax, r8
lea r9, [rax + rax*4]
lea rax, [rax + r9*2]
add rax, 0xb
xor rax, r8
add rax, rdx
inc rax
call rax
xor eax, eax
sub rax, qword [0x14015c0a0]
mov rcx, qword [0x14015bd60]
xor rax, r15
imul rax, rax, 0x2e
add rax, 0x2f
xor rax, r15
xor r8d, r8d
sub r8d, dword [rcx + rax]
mov rax, qword [0x14015be38]
xor ecx, ecx
sub rcx, qword [0x14015c178]
xor rcx, r15
lea r9, [rcx + rcx*8]
lea rcx, [rcx + r9*8]
add rcx, 0x49
xor rcx, r15
mov eax, dword [rax + rcx + 1]
xor r8d, eax
imul ecx, r8d, 0x4d5fff01
xor ecx, eax
add ecx, 0xb2a000ff
xor eax, eax
sub rax, qword [0x14015c028]
mov r8, qword [0x14015bce8]
xor rax, r15
mov r9, rax
shl r9, 5
sub r9, rax
add r9, 0x1f
xor r9, r15
mov rax, qword [r8 + r9 + 0x59]
mov r8, qword [0x14015bdb0]
xor r9d, r9d
sub r9, qword [0x14015c0f0]
xor r9, rbx
imul r9, r9, 0x38
add r9, 0x39
xor r9, r15
mov r8, qword [r8 + r9 + 0x58]
sub rdx, r8
movabs r8, 0xc91b69cad40ef98c
xor rdx, r8
lea r9, [rdx + rdx*4]
lea rdx, [rdx + r9*2]
add rdx, 0xb
xor rdx, r8
add rax, rdx
inc rax
call rax
int3