Function at 0x18007ad34
Capabilities:
Inspect section memory permissions

Disassembly:
mov qword [rsp + 8], rcx
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0xf]
sub rsp, 0xf8
and qword [rsp + 0x58], 0
lea r10, [0x180000000]
mov rbx, qword [rcx + 0xa8]
mov rdi, rcx
and qword [rsp + 0x38], 0
mov r15, r9
cmp edx, 0x67f
mov byte [rbp + 0x5f], 0
mov r14, r8
mov qword [rsp + 0x48], rbx
mov r8, qword [rbp + 0x77]
sbb eax, eax
and eax, edx
mov r13d, 1
mov esi, eax
lea rdx, [r10 + 0xaabc0]
mov qword [rsp + 0x50], rsi
mov ecx, dword [r8]
lea rdx, [rdx + rax*8]
and ecx, 7
mov eax, dword [rdx]
shr rax, 0xe
and eax, 0x3ff
lea rax, [rax*8 + 0xa9de0]
add rax, r10
mov qword [rsp + 0x68], rax
mov eax, dword [r9]
xor r9d, r9d
and eax, 7
lea ecx, [rax + rcx*8]
mov eax, dword [r14]
and eax, 7
lea r12d, [rax + rcx*8]
mov rax, qword [rdi + 0xa0]
sub rax, rbx
cmp rax, 0x10
setb r9b
xor eax, eax
test esi, esi
sete al
or r9d, eax
or r9d, dword [rdi + 0x54]
or r9d, dword [rdi + 0x24]
mov dword [rbp + 0x67], r9d
test r9d, 0x3e001
je 0x18007afd9
cmp qword [rdi + 0x30], 0
jne 0x18007ae22
lea edx, [r13 + 4]
mov rcx, rdi
jmp 0x18007b140
test esi, esi
je 0x18007b123
mov r8d, 0x10
lea rcx, [rsp + 0x48]
mov rdx, rdi
call fcn.180080f98
mov r10d, eax
test eax, eax
jne 0x18007b129
test byte [rdi + 0x10], r13b
je 0x18007aec2
movups xmm0, xmmword [r14]
mov rax, qword [rbp + 0x7f]
lea r9d, [r10 + 6]
mov rcx, qword [rbp + 0x77]
lea rdx, [rbp - 0x69]
mov r8d, dword [rbp + 0x67]
and dword [rsp + 0x20], r10d
movdqu xmmword [rbp - 0x59], xmm0
movups xmm1, xmmword [r15]
movdqu xmmword [rbp - 0x49], xmm1
movups xmm0, xmmword [rcx]
movdqu xmmword [rbp - 0x39], xmm0
movups xmm1, xmmword [rax]
movdqu xmmword [rbp - 0x29], xmm1
movups xmm0, xmmword [rax + 0x10]
movdqu xmmword [rbp - 0x19], xmm0
movups xmm1, xmmword [rax + 0x20]
mov dword [rbp - 0x65], r8d
lea r8, [rbp - 0x59]
mov dword [rbp - 0x69], esi
movdqu xmmword [rbp - 9], xmm1
mov rax, qword [rdi + 0x58]
mov qword [rbp - 0x61], rax
mov cl, byte [rdi + 0x48]
call qword [rdi + 0x88]
mov r10d, eax
test eax, eax
jne 0x18007b129
mov r9d, dword [rbp + 0x67]
lea r10, [0x180000000]
lea rdx, [r10 + 0xaabc0]
lea rdx, [rdx + rsi*8]
mov eax, dword [rdx]
shr rax, 0xe
and eax, 0x3ff
mov r8d, dword [r10 + rax*8 + 0xa9de0]
mov eax, r9d
shr eax, 0xd
test r13b, al
je 0x18007af87
mov ecx, r9d
mov eax, r8d
and ecx, 0x30000
shr eax, 0x10
test r13b, al
jne 0x18007af1b
test ecx, ecx
jne 0x18007af1f
lea r10d, [rcx + 0x21]
jmp 0x18007b129
test ecx, ecx
je 0x18007af75
mov ecx, r9d
shr ecx, 0x10
test r13b, cl
je 0x18007af40
mov eax, r8d
shr eax, 0x11
test r13b, al
jne 0x18007af40
mov r10d, 0x22
jmp 0x18007b129
mov eax, r9d
shr eax, 0x11
test r13b, al
je 0x18007af61
mov eax, r8d
shr eax, 0x12
test r13b, al
jne 0x18007af61
mov r10d, 0x23
jmp 0x18007b129
mov rbx, qword [rsp + 0x48]
not cl
and cl, r13b
or cl, 0xf2
mov byte [rbx], cl
add rbx, r13
jmp 0x18007af7a
mov rbx, qword [rsp + 0x48]
mov byte [rbx], 0xf0
add rbx, r13
mov qword [rsp + 0x48], rbx
jmp 0x18007af8c
mov rbx, qword [rsp + 0x48]
test r9d, 0xc000
je 0x18007afd5
shr r8d, 0xe
test r13b, r8b
je 0x18007b0c7
mov eax, dword [rdi + 0x58]
test eax, eax
je 0x18007afbe
shr eax, 8
test al, 0xf
jne 0x18007b0c7
cmp dword [rdi + 0x5c], r13d
jne 0x18007b0c7
mov eax, r9d
shr eax, 0xf
not al
and al, r13b
or al, 0xf2
mov byte [rbx], al
add rbx, r13
mov qword [rsp + 0x48], rbx
mov r8, qword [rbp + 0x77]
movzx eax, byte [rdx + 6]
mov ecx, dword [r10 + rax*4 + 0xb0100]
mov esi, ecx
mov dword [rsp + 0x30], ecx
mov eax, 2
movzx edi, byte [rdx + 5]
or edi, ecx
shr esi, 0x12
mov dword [rsp + 0x30], edi
and esi, 7
movzx ecx, byte [rdx + 4]
lea r11d, [rax + 2]
mov qword [rsp + 0x60], r11
cmp ecx, 0x50
ja 0x18007e285
je 0x18007e1d5
lea r10d, [rax + 0x30]
mov dword [rbp + 0x6f], r10d
cmp ecx, 0x28
ja 0x18007c599
je 0x18007c575
cmp ecx, 0x14
ja 0x18007b602
je 0x18007b5d1
cmp ecx, 0xa
ja 0x18007b266
je 0x18007b21a
cmp ecx, 5
ja 0x18007b15c
je 0x18007b10a
test ecx, ecx
je 0x180080c42
sub ecx, r13d
je 0x18007da9c
sub ecx, r13d
je 0x18007b0f1
sub ecx, r13d
je 0x18007b0cf
cmp ecx, r13d
jne 0x18007b123
mov edx, dword [r14]
mov eax, edx
and al, 7
cmp al, r13b
jne 0x18007b123
mov rcx, qword [rbp + 0x57]
mov eax, edx
shr eax, 3
lea rdx, [0x180000000]
and eax, 0x1f
mov ecx, dword [rcx + 0x28]
mov byte [rbx], 0x67
test byte [rax + rdx + 0xa3a30], cl
lea eax, [r11 - 4]
setne al
add rbx, rax
mov edi, dword [rsp + 0x30]
jmp 0x18007da9c
mov r10d, 0x24
jmp 0x18007b129
mov eax, dword [r14]
and eax, 7
cmp al, 3
jne 0x18007b123
movzx r10d, byte [r14 + 8]
mov r12d, edi
shr r12d, 0xd
and r12d, 7
mov r11b, r13b
jmp 0x18007d6b3
mov r12d, edi
shr r12d, 0xd
and r12d, 7
mov r10, qword [rsp + 0x38]
mov r11d, dword [rbp + 0x5f]
jmp 0x18007d6b3
test r12d, r12d
je 0x18007da9c
cmp r12d, r13d
jne 0x18007b123
cmp dword [r14 + 4], 0
je 0x18007da9c
mov r10d, 0x1a
mov rax, qword [rbp + 0x57]
xor esi, esi
mov edx, r10d
mov rcx, rax
mov qword [rax + 0x58], rsi
mov dword [rax + 0x54], esi
mov qword [rax + 0x60], rsi
xor r8d, r8d
call fcn.180086520
add rsp, 0xf8
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
sub ecx, 6
je 0x18007b1f3
sub ecx, r13d
je 0x18007b1a0
sub ecx, r13d
je 0x18007b179
cmp ecx, r13d
jne 0x18007b123
jmp 0x18007b224
cmp r12d, 3
jne 0x18007b18c
movzx esi, byte [r14 + 8]
mov r15b, r13b
jmp 0x18007daa5
cmp r12d, 0x19
jne 0x18007b123
cmp dword [r14 + 4], 0
jne 0x18007b123
movzx esi, byte [r15 + 8]
jmp 0x18007b184
test r12d, r12d
je 0x18007da9c
mov rsi, r14
mov r8d, eax
cmp r12d, eax
jne 0x18007b123
mov edx, dword [r14]
mov eax, edx
and al, 7
cmp al, r8b
jne 0x18007b123
cmp dword [r14 + 4], 0
jne 0x18007b123
mov eax, edx
shr eax, 3
test al, 0x1f
mov eax, 0
cmove eax, dword [r14 + 4]
or eax, dword [r14 + 0xc]
jne 0x18007b123
jmp 0x18007d43b
test r12d, r12d
je 0x18007da9c
cmp r12d, 9
jne 0x18007b123
cmp dword [r14 + 4], eax
jne 0x18007b123
cmp dword [r15 + 4], 0
jmp 0x18007b11d
mov eax, dword [r14]
and al, 7
cmp al, r13b
jne 0x18007b23e
movzx eax, byte [r14 + 3]
lea rcx, [0x180000000]
and eax, 0xf
or edi, dword [rcx + rax*4 + 0xa40c0]
mov dword [rsp + 0x30], edi
mov eax, dword [r14 + 4]
mov dword [rsp + 0x60], eax
cmp r12d, r13d
je 0x18007d678
mov qword [rsp + 0x40], r14
mov r8, r14
cmp r12d, 2
je 0x18007b492
jmp 0x18007b123
sub ecx, 0xb
je 0x18007b23e
sub ecx, r13d
je 0x18007c48a
sub ecx, r13d
je 0x18007c36b
sub ecx, r13d
je 0x18007b5cc
sub ecx, r13d
je 0x18007b580
sub ecx, r13d
je 0x18007b434
sub ecx, r13d
je 0x18007b42c
sub ecx, r13d
je 0x18007b321
cmp ecx, r13d
jne 0x18007b123
cmp r12d, 0x49
jne 0x18007b2ff
mov eax, dword [r15]
mov edx, 0xff000fff
and eax, edx
mov r9d, 0x4000031
cmp eax, r9d
sete cl
cmp dword [r15 + 4], 2
sete al
test al, cl
je 0x18007b123
mov eax, dword [r8]
and eax, edx
cmp eax, r9d
sete cl
cmp dword [r8 + 4], 0
sete al
test al, cl
je 0x18007b123
mov r12d, dword [r14 + 4]
jmp 0x18007b0fc
cmp r12d, r13d
jne 0x18007b123
mov eax, dword [r14]
mov r9d, 0x4000031
and eax, 0xff000fff
cmp eax, r9d
jne 0x18007b123
jmp 0x18007b2f6
mov edx, eax
cmp r12d, eax
jne 0x18007b123
mov r15d, dword [r14 + 4]
mov ecx, dword [r14]
lea r8, [0x180000000]
mov eax, ecx
shr ecx, 3
shr rax, 3
and eax, 0x3ff
test cl, 0x1f
movzx r12d, byte [rax + r8 + 0xa3a30]
mov eax, 0
cmove eax, r15d
or eax, dword [r14 + 0xc]
jne 0x18007b123
test dl, r12b
jne 0x18007b123
shr edi, 0x15
and edi, 7
mov al, byte [rdi + r8 + 0xa39e0]
mov byte [rbx], al
mov eax, 0
mov edx, dword [rsp + 0x30]
setne al
or edx, r9d
add rbx, rax
shr edx, 0x15
mov eax, esi
or edx, r15d
mov qword [rsp + 0x48], rbx
shr edx, 2
and eax, 8
or edx, eax
shr edx, 1
cmp edx, 0x80
ja 0x18007b53f
and edx, 0x7f
lea rcx, [rsp + 0x48]
setne r8b
or edx, 0x40
call fcn.18007abd0
mov rcx, r14
and esi, 7
and r15d, 7
call fcn.1800811d0
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.180080f50
mov rcx, qword [rbp + 0x57]
test dword [rcx + 0x28], r12d
lea rcx, [rsp + 0x48]
setne dl
call fcn.18007abe0
mov edx, dword [rsp + 0x30]
lea rcx, [rsp + 0x48]
call fcn.180080ec0
mov r8d, r15d
mov edx, esi
mov ecx, 3
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
xor r8d, r8d
xor edx, edx
jmp 0x180080c33
cmp r12d, r13d
jmp 0x18007b319
test r12d, r12d
je 0x18007da9c
xor esi, esi
lea rcx, [0x180000000]
cmp r12d, r13d
jne 0x18007b469
movzx eax, byte [r14 + 3]
and eax, 0xf
mov edi, dword [rcx + rax*4 + 0xa40c0]
or edi, 0x11f
mov dword [rsp + 0x30], edi
jmp 0x18007b2f6
cmp r12d, eax
jne 0x18007b54a
movzx eax, byte [r14 + 3]
and eax, 0xf
mov eax, dword [rcx + rax*4 + 0xa40c0]
or eax, 0x11f
mov dword [rsp + 0x30], eax
mov qword [rsp + 0x40], r14
mov r8, r14
mov r15, r11
mov rcx, r8
call fcn.180080e04
mov eax, eax
lea rcx, [0x180000000]
movzx r12d, byte [rax + rcx + 0xa3a30]
mov rcx, qword [rsp + 0x40]
call fcn.1800811d0
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.180080f50
mov rax, qword [rsp + 0x48]
lea rcx, [rsp + 0x48]
mov qword [rbp - 0x79], rax
mov rax, qword [rbp + 0x57]
test dword [rax + 0x28], r12d
setne dl
call fcn.18007abe0
mov edx, dword [rsp + 0x30]
lea rcx, [rsp + 0x48]
call fcn.180080f2c
mov rax, qword [rsp + 0x40]
lea rcx, [rsp + 0x30]
mov edi, dword [rbp + 0x67]
mov edx, edi
mov r14d, dword [rax + 4]
mov ebx, dword [rax + 8]
call fcn.18008100c
mov r9d, eax
mov edx, r14d
shr edx, 1
mov ecx, ebx
and edx, r15d
and ecx, 8
or edx, ecx
mov ecx, esi
shr edx, 1
and ecx, 8
or edx, ecx
shr edx, 1
and edx, r12d
or r9d, edx
mov ecx, r9d
call fcn.180081244
test al, al
je 0x18007e8c3
mov r10d, 0x25
jmp 0x18007b129
movzx eax, byte [r15 + 3]
mov esi, dword [r15 + 4]
and eax, 0xf
mov edi, dword [rcx + rax*4 + 0xa40c0]
or edi, 0x11f
mov dword [rsp + 0x30], edi
cmp r12d, 9
je 0x18007b2f6
cmp r12d, 0xa
jne 0x18007b123
jmp 0x18007b48a
cmp r12d, 0x4a
jne 0x18007b5cc
mov eax, dword [r15]
mov edx, 0xff000fff
and eax, edx
mov r9d, 0x4000031
cmp eax, r9d
sete cl
cmp dword [r15 + 4], 2
sete al
test al, cl
je 0x18007b123
mov eax, dword [r8]
and eax, edx
cmp eax, r9d
sete cl
cmp dword [r8 + 4], 0
sete al
test al, cl
je 0x18007b123
jmp 0x18007b48a
cmp r12d, eax
jmp 0x18007b575
movzx eax, byte [r14 + 3]
lea rcx, [0x180000000]
and eax, 0xf
or edi, dword [rcx + rax*4 + 0xa40c0]
mov dword [rsp + 0x30], edi
cmp r12d, 9
jne 0x18007bd84
mov esi, dword [r14 + 4]
mov r12d, dword [r15 + 4]
jmp 0x18007b0fc
cmp ecx, 0x1e
ja 0x18007be5a
je 0x18007be32
sub ecx, 0x15
je 0x18007bd9f
sub ecx, r13d
je 0x18007b5eb
sub ecx, r13d
je 0x18007bd3f
sub ecx, r13d
je 0x18007bd59
sub ecx, r13d
je 0x18007b99b
sub ecx, r13d
je 0x18007b969
sub ecx, r13d
je 0x18007b89d
sub ecx, r13d
je 0x18007b798
cmp ecx, r13d
jne 0x18007b123
test r12d, 0x1c0
je 0x18007b687
mov eax, dword [r8]
and eax, 0xf07
cmp eax, r13d
jne 0x18007b123
cmp dword [r8 + 4], 0
jne 0x18007b123
and r12d, 0x3f
cmp r12d, 9
jne 0x18007b72f
movzx ecx, byte [r14 + 3]
cmp cl, byte [r15 + 3]
jne 0x18007de68
mov eax, ecx
lea rdx, [0x180000000]
and eax, 0xf
or edi, dword [rdx + rax*4 + 0xa4100]
mov dword [rsp + 0x30], edi
mov r12d, dword [r14 + 4]
mov esi, dword [r15 + 4]
cmp cl, r13b
jne 0x18007b0fc
mov eax, dword [r14]
mov ecx, 0xff000fff
and eax, ecx
mov edx, 0x80000000
mov r8d, 0x40000000
cmp eax, 0x1000021
je 0x18007b6f3
cmp r12d, r11d
sbb eax, eax
not eax
and eax, r8d
or r9d, eax
jmp 0x18007b6f9
or r9d, edx
add r12d, r11d
mov eax, dword [r15]
mov r10, qword [rsp + 0x38]
and eax, ecx
cmp eax, 0x1000021
je 0x18007b720
cmp esi, r11d
sbb eax, eax
not eax
and eax, r8d
or r9d, eax
mov dword [rbp + 0x67], r9d
jmp 0x18007b101
or r9d, edx
mov dword [rbp + 0x67], r9d
add esi, r11d
jmp 0x18007b101
cmp r12d, 0xa
jne 0x18007b123
movzx ecx, byte [r15 + 3]
lea rdx, [0x180000000]
mov eax, ecx
mov qword [rsp + 0x40], r14
and eax, 0xf
mov r8, r14
or edi, dword [rdx + rax*4 + 0xa4100]
mov dword [rsp + 0x30], edi
mov esi, dword [r15 + 4]
cmp cl, r13b
jne 0x18007b492
mov eax, dword [r15]
and eax, 0xff000fff
mov r15, r11
cmp eax, 0x1000021
je 0x18007baa1
cmp esi, r11d
sbb eax, eax
not eax
and eax, 0x40000000
or r9d, eax
mov dword [rbp + 0x67], r9d
jmp 0x18007b495
cmp r12d, r13d
je 0x18007b2f6
mov qword [rsp + 0x40], r14
mov r8, r14
cmp r12d, eax
je 0x18007b492
mov edi, 0xe8
mov dword [rsp + 0x30], edi
xor esi, esi
mov r12, r14
or edi, r9d
shr edi, 0x18
cmp edi, 0x80
ja 0x18007b53f
mov r15, qword [rbp + 0x57]
lea rcx, [0x180000000]
and edi, 0x7f
mov r14d, 0x1f00
mov al, dil
or al, 0x40
mov byte [rbx], al
xor eax, eax
test edi, edi
setne al
xor r10d, r10d
add rbx, rax
mov rax, rbx
mov qword [rsp + 0x48], rbx
sub rax, qword [r15 + 0x98]
mov qword [rbp + 0x67], rax
movzx eax, byte [rdx + 7]
mov r8d, dword [rcx + rax*4 + 0xb04d0]
mov eax, dword [rsp + 0x30]
mov ecx, eax
and ecx, r14d
mov dword [rbp + 0x77], r8d
cmp ecx, 0x100
mov ecx, esi
sete r10b
neg ecx
mov ecx, dword [r12]
sbb edx, edx
and ecx, 7
neg edx
add edx, 5
add r10d, edx
cmp ecx, r11d
jne 0x18007cfd4
mov rcx, qword [r15 + 0x30]
mov edx, dword [r12 + 4]
cmp edx, dword [rcx + 0xd8]
jae 0x180080a24
mov rcx, qword [rcx + 0xd0]
mov r12, qword [rcx + rdx*8]
test r12, r12
je 0x180080a24
add r15, 0x90
mov rcx, qword [r15]
cmp qword [r12 + 0x20], rcx
jne 0x18007cf4a
mov r8d, dword [r12 + 0x18]
sub r8d, r10d
sub r8d, dword [rbp + 0x67]
jmp 0x18007d066
cmp r12d, 9
jne 0x18007b8c6
movzx eax, byte [r15 + 3]
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0xa40c0]
mov dword [rsp + 0x30], edi
mov esi, dword [r15 + 4]
jmp 0x18007b2f6
cmp r12d, 0xa
jne 0x18007b8ef
movzx eax, byte [r15 + 3]
lea rcx, [0x180000000]
and eax, 0xf
or edi, dword [rcx + rax*4 + 0xa40c0]
mov dword [rsp + 0x30], edi
mov esi, dword [r15 + 4]
jmp 0x18007b48a
mov eax, dword [r15 + 8]
mov r11b, r13b
movzx r8d, byte [r14 + 3]
mov r10d, dword [r15 + 0xc]
mov ecx, r8d
shl r10, 0x20
and ecx, 0xf
or r10, rax
mov dword [rbp + 0x5f], r11d
movzx eax, byte [rdx + 7]
lea rdx, [0x180000000]
mov qword [rsp + 0x38], r10
mov esi, dword [rdx + rcx*4 + 0xa40c0]
or esi, dword [rdx + rax*4 + 0xb04d0]
mov edi, esi
mov dword [rsp + 0x30], esi
shr esi, 0x12
and esi, 7
cmp r12d, 0x19
jne 0x18007b949
mov r12d, dword [r14 + 4]
jmp 0x18007d6b3
cmp r12d, 0x1a
jne 0x18007b123
test r8b, r8b
je 0x18007db25
mov r8, r14
mov qword [rsp + 0x40], r14
jmp 0x18007c47f
cmp r12d, r13d
jne 0x18007b123
cmp byte [r14 + 3], r13b
je 0x18007b123
movzx eax, byte [r14 + 3]
lea rcx, [0x180000000]
mov esi, dword [r14 + 4]
and eax, 0xf
or edi, dword [rcx + rax*4 + 0xa40c0]
jmp 0x18007def5
cmp r12d, 9
jne 0x18007ba5e
movzx ecx, byte [r14 + 3]
lea rdx, [0x180000000]
mov eax, ecx
and eax, 0xf
or edi, dword [rdx + rax*4 + 0xa4100]
mov dword [rsp + 0x30], edi
cmp cl, byte [r15 + 3]
jne 0x18007de68
mov r12d, dword [r14 + 4]
mov esi, dword [r15 + 4]
cmp cl, r13b
jne 0x18007ba2e
mov eax, dword [r14]
mov ecx, 0xff000fff
and eax, ecx
mov edx, 0x80000000
mov r8d, 0x40000000
cmp eax, 0x1000021
je 0x18007ba03
cmp r12d, r11d
sbb eax, eax
not eax
and eax, r8d
or r9d, eax
jmp 0x18007ba09
or r9d, edx
add r12d, r11d
mov eax, dword [r15]
and eax, ecx
cmp eax, 0x1000021
je 0x18007ba24
cmp esi, r11d
sbb eax, eax
not eax
and eax, r8d
or r9d, eax
jmp 0x18007ba2a
or r9d, edx
add esi, r11d
mov dword [rbp + 0x67], r9d
mov r10, qword [rsp + 0x38]
mov eax, r9d
mov r8d, dword [rbp + 0x67]
mov r11d, dword [rbp + 0x5f]
shr eax, 9
test r13b, al
je 0x18007d6b7
add edi, 2
mov eax, esi
mov dword [rsp + 0x30], edi
mov esi, r12d
mov r12d, eax
jmp 0x18007d6b7
cmp r12d, 0x11
jne 0x18007bab5
movzx edx, byte [r14 + 3]
lea eax, [rdi + 2]
mov ecx, edx
lea r8, [0x180000000]
and ecx, 0xf
or eax, dword [r8 + rcx*4 + 0xa4100]
mov dword [rsp + 0x30], eax
cmp dl, r13b
mov esi, dword [r14 + 4]
mov r8, r15
mov qword [rsp + 0x40], r15
jne 0x18007b492
mov eax, dword [r14]
jmp 0x18007b76d
mov edx, 0x80000000
or r9d, edx
mov dword [rbp + 0x67], r9d
add esi, r11d
jmp 0x18007b495
cmp r12d, 0xa
je 0x18007b739
mov edi, 0x80
mov dword [rsp + 0x30], edi
cmp r12d, 0x19
jne 0x18007bc90
movzx eax, byte [r14 + 3]
mov rcx, r15
mov r12d, dword [r14 + 4]
mov qword [rbp + 0x77], rax
mov dword [rbp + 0x5f], eax
call fcn.1800811f4
mov r15, qword [rbp + 0x77]
mov r10, rax
mov qword [rsp + 0x38], rax
cmp r15d, r13d
jne 0x18007bba5
mov ecx, dword [r14]
lea r14d, [rdi - 0x7c]
and ecx, 0xff000fff
cmp ecx, 0x1000021
je 0x18007bb26
cmp r12d, r14d
sbb ecx, ecx
not ecx
and ecx, 0x40000000
or dword [rbp + 0x67], ecx
jmp 0x18007bb31
mov edx, 0x80000000
or dword [rbp + 0x67], edx
add r12d, r14d
mov r11b, r13b
mov r8d, dword [rbp + 0x67]
test r12d, r12d
jne 0x18007bc75
cmp r15d, r13d
je 0x18007bb4f
cmp r11b, r13b
je 0x18007bc78
mov edx, 0x20
mov ecx, r8d
call fcn.18007ac74
test al, al
jne 0x18007bc75
xor ecx, ecx
mov dword [rbp + 0x77], r14d
mov eax, edi
lea rdx, [rbp + 0x77]
cmp r15d, r13d
setne cl
and eax, 0x8200000
add ecx, r14d
mov edi, ecx
lea rcx, [rbp + 0x5f]
or edi, eax
lea eax, [rsi*8]
or edi, eax
mov dword [rsp + 0x30], edi
call fcn.18007ac60
mov rsi, qword [rsp + 0x38]
mov r15b, al
jmp 0x18007daa9
mov r14d, 4
cmp r15b, 2
jne 0x18007bbb8
mov edi, 0x200080
jmp 0x18007bc31
cmp r15b, r14b
jne 0x18007bbc7
movsxd r10, r10d
mov qword [rsp + 0x38], r10
jmp 0x18007bc31
cmp r15b, 8
jne 0x18007bc31
cmp dword [rsp + 0x50], 0x15
jne 0x18007bbe5
mov rcx, r10
call fcn.18007ac4c
test al, al
je 0x18007bbe5
mov dl, r13b
jmp 0x18007bbe7
xor dl, dl
mov rcx, r10
call fcn.18007ac14
test al, al
jne 0x18007bc00
test dl, dl
jne 0x18007bc14
mov r10d, dword [rbp + 0x6f]
jmp 0x18007b129
test dl, dl
je 0x18007bc1b
mov rcx, qword [rbp + 0x57]
mov edx, r13d
call fcn.18008104c
test al, al
je 0x18007bc1b
mov r15d, r14d
mov dword [rbp + 0x5f], r14d
mov edx, r15d
lea rcx, [rsp + 0x30]
call fcn.18007ab90
mov r10, qword [rsp + 0x38]
mov edi, dword [rsp + 0x30]
lea rdx, [rbp + 0x77]
mov dword [rbp + 0x77], r14d
lea rcx, [rbp + 0x5f]
call fcn.18007ac60
mov rcx, r10
mov r11d, eax
call fcn.18007ac38
test al, al
je 0x18007bb34
mov r8d, dword [rbp + 0x67]
mov edx, 0x20
mov ecx, r8d
call fcn.18007ac74
test al, al
movzx r11d, r11b
cmove r11d, r13d
jmp 0x18007bb38
cmp r11b, r13b
mov ecx, 3
cmovne ecx, r13d
xor eax, eax
cmp r15d, r13d
cmovne eax, ecx
add edi, eax
jmp 0x18007bde0
cmp r12d, 0x1a
jne 0x18007b123
movzx edi, byte [r14 + 3]
mov dword [rbp + 0x77], edi
test edi, edi
je 0x18007db25
mov rcx, r15
call fcn.1800811f4
lea r15d, [r12 - 0x16]
mov qword [rsp + 0x38], rax
lea rdx, [rbp + 0x5f]
mov dword [rbp + 0x5f], r15d
lea rcx, [rbp + 0x77]
mov rbx, rax
call fcn.18007ac60
mov r9b, al
mov dword [rbp + 0x5f], r9d
cmp edi, r15d
jne 0x18007bce4
movsxd rbx, ebx
mov qword [rsp + 0x38], rbx
mov rcx, rbx
call fcn.18007ac38
test al, al
je 0x18007bd0b
mov ecx, dword [rbp + 0x67]
mov edx, 0x20
call fcn.18007ac74
test al, al
movzx r9d, r9b
cmove r9d, r13d
mov dword [rbp + 0x5f], r9d
cmp r9b, r13b
mov ecx, 3
mov edx, edi
cmovne ecx, r13d
xor eax, eax
cmp edi, r13d
cmovne eax, ecx
lea rcx, [rsp + 0x30]
sub eax, 0xffffff80
mov dword [rsp + 0x30], eax
call fcn.18007ab7c
mov r8, r14
mov qword [rsp + 0x40], r14
jmp 0x18007b495
movzx eax, byte [r14 + 3]
lea rcx, [0x180000000]
and eax, 0xf
or edi, dword [rcx + rax*4 + 0xa40c0]
mov dword [rsp + 0x30], edi
cmp r12d, 9
jne 0x18007bd6c
mov r12d, dword [r14 + 4]
mov esi, dword [r15 + 4]
jmp 0x18007b0fc
cmp r12d, 0xa
jne 0x18007b123
mov esi, dword [r15 + 4]
mov qword [rsp + 0x40], r14
jmp 0x18007b48f
cmp r12d, 0x11
jne 0x18007b123
mov esi, dword [r14 + 4]
mov r8, r15
mov qword [rsp + 0x40], r15
jmp 0x18007b492
cmp r12d, 9
jne 0x18007bde9
mov esi, dword [r14 + 4]
mov r12d, dword [r15 + 4]
mov r10, qword [rsp + 0x38]
mov r8d, dword [rbp + 0x67]
mov r11d, dword [rbp + 0x5f]
cmp byte [r14 + 3], al
jne 0x18007bdcf
mov byte [rbx], 0x66
add rbx, r13
mov edi, dword [rsp + 0x30]
jmp 0x18007d6b7
xor eax, eax
mov ecx, 0x8000000
cmp byte [r14 + 3], 8
cmove eax, ecx
or edi, eax
mov dword [rsp + 0x30], edi
jmp 0x18007d6b7
cmp r12d, 0x11
jne 0x18007b123
mov r8, r15
mov esi, dword [r14 + 4]
mov qword [rsp + 0x40], r15
mov r15, r11
cmp byte [r14 + 3], al
jne 0x18007be18
mov byte [rbx], 0x66
add rbx, r13
mov qword [rsp + 0x48], rbx
jmp 0x18007b495
xor eax, eax
mov ecx, 0x8000000
cmp byte [r14 + 3], 8
cmove eax, ecx
or edi, eax
mov dword [rsp + 0x30], edi
jmp 0x18007b495
cmp r12d, 0x4a
jne 0x18007b5cc
mov rdx, qword [rbp + 0x7f]
mov eax, dword [rdx]
and al, 7
cmp al, r13b
jne 0x18007b123
mov eax, dword [rdx + 0x10]
and al, 7
cmp al, r13b
jmp 0x18007b575
sub ecx, 0x1f
je 0x18007c4e4
sub ecx, r13d
je 0x18007c4c1
sub ecx, r13d
je 0x18007c14d
sub ecx, r13d
je 0x18007c0c3
sub ecx, r13d
je 0x18007c044
sub ecx, r13d
je 0x18007bf6c
sub ecx, r13d
je 0x18007bf4e
sub ecx, r13d
je 0x18007bf15
cmp ecx, r13d
jne 0x18007b123
mov ecx, dword [r14]
mov eax, ecx
and al, 7
mov qword [rsp + 0x40], r14
cmp al, r13b
jne 0x18007bf09
and ecx, 0xf07
cmp ecx, r13d
sete cl
cmp dword [r14 + 4], r13d
sete al
test al, cl
je 0x18007b123
mov rcx, qword [rbp + 0x57]
mov al, byte [rcx + 0x48]
test r13b, al
je 0x18007bee6
cmp byte [r14 + 3], 2
je 0x18007bef3
not al
test r13b, al
je 0x18007bef8
cmp byte [r14 + 3], r11b
jne 0x18007bef8
mov rax, r13
jmp 0x18007befa
xor eax, eax
mov byte [rbx], 0x67
add rbx, rax
mov edi, dword [rsp + 0x30]
mov qword [rsp + 0x40], r15
mov r12, qword [rsp + 0x40]
xor esi, esi
jmp 0x18007b7c0
test r9b, 0xc0
je 0x18007b7bb
mov rcx, qword [rbp + 0x57]
mov eax, dword [rcx + 0x20]
shr eax, 4
test r13b, al
je 0x18007b7bb
mov eax, r9d
shr eax, 6
and al, r13b
shl al, 4
or al, 0x2e
mov byte [rbx], al
add rbx, r13
mov edi, dword [rsp + 0x30]
jmp 0x18007b7bb
cmp r12d, 3
jne 0x18007b123
mov esi, dword [r14 + 0xc]
mov eax, dword [r14 + 8]
shl rsi, 0x20
or rsi, rax
jmp 0x18007b184
cmp r12d, r13d
jne 0x18007c011
mov r12d, dword [r14 + 4]
cmp byte [r14 + 3], r13b
jne 0x18007bfb8
mov eax, dword [r14]
mov r10, qword [rsp + 0x38]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x18007bfa4
cmp r12d, r11d
sbb eax, eax
not eax
and eax, 0x40000000
jmp 0x18007b714
mov edx, 0x80000000
or r9d, edx
mov dword [rbp + 0x67], r9d
add r12d, r11d
jmp 0x18007b101
mov rcx, qword [rbp + 0x57]
test byte [rcx + 0x48], r13b
je 0x18007bff2
movzx eax, byte [rdx + 7]
lea r8, [0x180000000]
and r12d, 7
mov edi, dword [r8 + rax*4 + 0xb04d0]
xor eax, eax
add edi, r12d
cmp byte [r14 + 3], 2
mov r11d, 0x200000
cmove eax, r11d
jmp 0x18007da96
movzx eax, byte [r14 + 3]
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0xa4100]
mov dword [rsp + 0x30], edi
jmp 0x18007b0fc
cmp r12d, eax
jne 0x18007b123
cmp byte [r14 + 3], 0
je 0x18007db25
movzx eax, byte [r14 + 3]
lea rcx, [0x180000000]
and eax, 0xf
or edi, dword [rcx + rax*4 + 0xa4100]
mov dword [rsp + 0x30], edi
jmp 0x18007b48a
cmp r12d, 0xa
jne 0x18007b123
mov edx, dword [r14]
lea r8d, [r12 - 8]
mov eax, edx
and al, 7
cmp al, r8b
jne 0x18007b123
cmp dword [r14 + 4], 7
jne 0x18007b123
mov eax, edx
shr eax, 3
test al, 0x1f
lea eax, [r12 - 0xa]
cmove eax, dword [r14 + 4]
or eax, dword [r14 + 0xc]
jne 0x18007b123
cmp dword [r15 + 4], r8d
jne 0x18007b123
mov r9b, byte [r14 + 3]
test r9b, r9b
je 0x18007db25
mov rsi, r14
xor ecx, ecx
mov r11d, 0x200000
cmp r9b, r13b
setne cl
xor eax, eax
add edi, ecx
cmp r9b, r8b
cmove eax, r11d
or edi, eax
jmp 0x18007d437
cmp r12d, 0x19
jne 0x18007c116
cmp dword [r14 + 4], 0
jne 0x18007b123
movzx ecx, byte [rdx + 7]
lea r8, [0x180000000]
movzx esi, byte [r15 + 8]
xor eax, eax
cmp byte [r14 + 3], r13b
mov r11d, 0x200000
mov r15b, r13b
mov edi, dword [r8 + rcx*4 + 0xb04d0]
setne al
add edi, eax
xor eax, eax
cmp byte [r14 + 3], 2
cmove eax, r11d
or edi, eax
mov dword [rsp + 0x30], edi
jmp 0x18007daa5
cmp r12d, 9
jne 0x18007b123
cmp dword [r14 + 4], 0
jne 0x18007b123
mov edx, eax
cmp dword [r15 + 4], eax
jne 0x18007b123
xor ecx, ecx
cmp byte [r14 + 3], r13b
setne cl
xor eax, eax
add edi, ecx
cmp byte [r14 + 3], dl
jmp 0x18007bfe3
cmp r12d, 0xc9
jne 0x18007c1cf
mov dword [rsp + 0x30], WSASetLastError
lea rdx, [0x180000000]
movzx ecx, byte [r14 + 3]
mov eax, ecx
mov byte [rbp + 0x5f], r13b
and eax, 0xf
mov edi, dword [rdx + rax*4 + 0xa40c0]
or edi, 0x6b
mov dword [rsp + 0x30], edi
mov eax, dword [r8 + 8]
mov r10d, dword [r8 + 0xc]
shl r10, 0x20
or r10, rax
lea rax, [r10 + 0x80]
cmp rax, 0xff
ja 0x18007c1aa
mov eax, r9d
shr eax, 5
test r13b, al
je 0x18007c1be
add edi, 0xfffffffe
mov eax, 2
cmp cl, al
mov dword [rsp + 0x30], edi
cmove r11d, eax
jmp 0x18007c1c2
mov r11d, dword [rbp + 0x5f]
mov esi, dword [r14 + 4]
mov r12d, dword [r15 + 4]
jmp 0x18007d6b3
cmp r12d, 0xd1
jne 0x18007c262
mov dword [rsp + 0x30], WSASetLastError
lea rcx, [0x180000000]
movzx edx, byte [r14 + 3]
mov eax, edx
mov byte [rbp + 0x5f], r13b
and eax, 0xf
mov ecx, dword [rcx + rax*4 + 0xa40c0]
or ecx, 0x6b
mov dword [rsp + 0x30], ecx
mov ebx, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
shl rbx, 0x20
or rbx, rax
mov qword [rsp + 0x38], rbx
cmp dl, r11b
jne 0x18007c228
movsxd rbx, ebx
mov qword [rsp + 0x38], rbx
lea rax, [rbx + 0x80]
cmp rax, 0xff
ja 0x18007c246
mov eax, r9d
shr eax, 5
test r13b, al
je 0x18007bd8e
lea eax, [rcx - 2]
mov ecx, 2
mov dword [rsp + 0x30], eax
cmp dl, cl
mov eax, r11d
cmove eax, ecx
mov byte [rbp + 0x5f], al
jmp 0x18007bd8e
cmp r12d, 9
jne 0x18007c2a6
cmp byte [r15 + 3], r13b
je 0x18007c37b
movzx eax, byte [r14 + 3]
cmp al, byte [r15 + 3]
jne 0x18007de68
mov esi, dword [r14 + 4]
lea rcx, [rsp + 0x30]
mov r12d, dword [r15 + 4]
mov edx, eax
mov dword [rsp + 0x30], 0x1af
call fcn.18007ab7c
mov edi, dword [rsp + 0x30]
jmp 0x18007b0fc
cmp r12d, 0x11
jne 0x18007c2de
cmp byte [r15 + 3], r13b
je 0x18007c3f8
mov esi, dword [r14 + 4]
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x30], 0x1af
movzx edx, byte [r14 + 3]
mov qword [rsp + 0x40], r15
call fcn.18007ab7c
mov r8, r15
jmp 0x18007c47f
cmp r12d, 0x19
jne 0x18007c36b
mov dword [rsp + 0x30], WSASetLastError
lea rcx, [rsp + 0x30]
movzx edx, byte [r14 + 3]
call fcn.18007ab7c
mov rcx, r15
call fcn.1800811f4
mov r9b, byte [r14 + 3]
lea r15d, [r12 - 0x15]
mov r10, rax
mov r11b, r13b
cmp r9b, r15b
jne 0x18007c31e
movsxd r10, eax
mov rcx, r10
call fcn.18007ac38
mov r8d, dword [rbp + 0x67]
test al, al
je 0x18007c345
mov edx, 0x20
mov ecx, r8d
call fcn.18007ac74
test al, al
jne 0x18007c345
mov edi, dword [rsp + 0x30]
jmp 0x18007c35f
mov edi, dword [rsp + 0x30]
mov eax, 2
add edi, 0xfffffffe
cmp r9b, al
mov dword [rsp + 0x30], edi
cmove r15d, eax
mov r11b, r15b
mov r12d, dword [r14 + 4]
mov esi, r12d
jmp 0x18007d6b7
cmp r12d, 7
jbe 0x18007c48a
cmp r12d, 9
jne 0x18007c3f2
mov eax, dword [r14]
and eax, 0xff000fff
cmp eax, 0x2000029
sete cl
cmp dword [r14 + 4], 0
sete al
test al, cl
je 0x18007b123
mov eax, dword [r15]
and eax, 0xff000f07
cmp eax, 0x1000001
jne 0x18007b123
mov r12d, dword [r15 + 4]
mov rcx, r15
call fcn.1800810b4
mov r10, qword [rsp + 0x38]
mov r11d, dword [rbp + 0x5f]
test al, al
jne 0x18007c3e1
mov r15d, 4
cmp r12d, r15d
sbb eax, eax
not eax
and eax, 0x40000000
or dword [rbp + 0x67], eax
jmp 0x18007d6b3
mov edx, 0x80000000
or dword [rbp + 0x67], edx
add r12d, 4
jmp 0x18007d6b3
cmp r12d, 0x11
jne 0x18007c41d
mov eax, dword [r14]
and eax, 0xff000fff
cmp eax, 0x2000029
sete cl
cmp dword [r14 + 4], 0
sete al
test al, cl
je 0x18007b123
jmp 0x18007bd92
cmp r12d, 0x49
jne 0x18007c44b
movzx eax, byte [r14 + 3]
cmp al, byte [r15 + 3]
jne 0x18007b123
mov edx, eax
lea rcx, [rsp + 0x30]
call fcn.18007ab3c
mov rcx, qword [rbp + 0x77]
mov r12d, dword [rcx + 4]
jmp 0x18007c29d
cmp r12d, 0x89
jne 0x18007b123
movzx eax, byte [r14 + 3]
cmp al, byte [r15 + 3]
jne 0x18007b123
mov edx, eax
lea rcx, [rsp + 0x30]
call fcn.18007ab3c
mov rcx, qword [rbp + 0x77]
mov r8, rcx
mov qword [rsp + 0x40], rcx
mov r15d, 4
jmp 0x18007b495
cmp r12d, r13d
jne 0x18007c011
movzx ecx, byte [r14 + 3]
lea rdx, [0x180000000]
mov eax, ecx
and eax, 0xf
or edi, dword [rdx + rax*4 + 0xa4100]
mov dword [rsp + 0x30], edi
mov r12d, dword [r14 + 4]
cmp cl, r13b
jne 0x18007b0fc
jmp 0x18007bf7f
cmp r12d, 0x1b
jne 0x18007b123
movzx esi, byte [r15 + 8]
mov r15b, 3
movzx eax, word [r14 + 8]
shl rsi, 0x10
or rsi, rax
jmp 0x18007daa5
mov esi, dword [r14 + 4]
xor eax, eax
cmp byte [r14 + 3], 8
mov ecx, 0x8000000
cmove eax, ecx
or edi, eax
mov dword [rsp + 0x30], edi
cmp r12d, 9
jne 0x18007c52e
mov r12d, dword [r15 + 4]
cmp byte [r15 + 3], r13b
jne 0x18007c515
mov eax, dword [r15]
jmp 0x18007bf82
cmp byte [r15 + 3], 2
jne 0x18007c526
mov byte [rbx], 0x66
add rbx, r13
mov edi, dword [rsp + 0x30]
add edi, r13d
jmp 0x18007c008
cmp r12d, 0x11
jne 0x18007b123
cmp byte [r15 + 3], 0
mov qword [rsp + 0x40], r15
je 0x18007db25
cmp byte [r15 + 3], 2
jne 0x18007c55e
mov byte [rbx], 0x66
add rbx, r13
mov edi, dword [rsp + 0x30]
mov qword [rsp + 0x48], rbx
xor eax, eax
cmp byte [r15 + 3], r13b
setne al
add edi, eax
mov dword [rsp + 0x30], edi
mov r8, r15
jmp 0x18007b492
cmp r12d, r13d
je 0x18007b2f6
mov qword [rsp + 0x40], r14
mov r8, r14
cmp r12d, eax
je 0x18007b492
mov edi, 0xe9
jmp 0x18007b7b7
cmp ecx, 0x3c
ja 0x18007db6c
je 0x18007d9ae
cmp ecx, r10d
ja 0x18007d2c5
je 0x18007d263
sub ecx, 0x29
je 0x18007b7bd
sub ecx, r13d
je 0x18007ce57
sub ecx, r13d
je 0x18007ce2e
sub ecx, r13d
je 0x18007c88f
sub ecx, r13d
je 0x18007c780
sub ecx, r13d
je 0x18007c738
sub ecx, r13d
je 0x18007c705
sub ecx, r13d
je 0x18007c696
cmp ecx, r13d
jne 0x18007b123
cmp r12d, 0xb
jne 0x18007c653
cmp dword [r15 + 4], 0
jne 0x18007b123
movzx ecx, byte [rdx + 7]
lea r8, [0x180000000]
xor eax, eax
mov r11d, 0x200000
cmp byte [r15 + 3], r13b
mov edi, dword [r8 + rcx*4 + 0xb04d0]
setne al
add edi, eax
xor eax, eax
cmp byte [r15 + 3], 2
cmove eax, r11d
or edi, eax
mov dword [rsp + 0x30], edi
jmp 0x18007b17f
cmp r12d, 9
jne 0x18007b123
cmp dword [r14 + 4], eax
jne 0x18007b123
cmp dword [r15 + 4], 0
jne 0x18007b123
movzx ecx, byte [r15 + 3]
xor eax, eax
cmp cl, r13b
mov edx, ecx
lea rcx, [rsp + 0x30]
setne al
add edi, eax
mov dword [rsp + 0x30], edi
call fcn.18007ab24
jmp 0x18007b0be
cmp r12d, 0x12
jne 0x18007b123
mov ecx, dword [r14]
mov eax, dword [r15]
shr ecx, 3
shr eax, 3
and cl, 0x1f
and al, 0x1f
cmp cl, al
jne 0x18007b123
test dword [r14], 0x1f00
jne 0x18007b123
mov esi, dword [r14 + 4]
xor eax, eax
test cl, cl
cmove eax, esi
or eax, dword [r14 + 0xc]
jne 0x18007b123
mov rcx, r14
call fcn.18008106c
test al, al
je 0x18007c6f8
mov rcx, r14
call fcn.1800811d0
cmp eax, r13d
jne 0x18007b123
mov r8, r15
mov qword [rsp + 0x40], r15
jmp 0x18007c47f
cmp r12d, 0xa
jne 0x18007b123
mov ecx, dword [r15]
xor eax, eax
mov edx, 0x8000000
and ecx, 0xff000fff
lea r11d, [rdx + 0x39]
cmp ecx, r11d
cmove eax, edx
or edi, eax
mov dword [rsp + 0x30], edi
mov esi, dword [r15 + 4]
jmp 0x18007b95c
movzx ecx, byte [r14 + 3]
xor eax, eax
mov dl, byte [r15 + 3]
and ecx, 0xf
cmp dl, r13b
setne al
add edi, eax
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0xa40c0]
mov dword [rsp + 0x30], edi
cmp r12d, 9
jne 0x18007bd84
mov esi, dword [r14 + 4]
mov r12d, dword [r15 + 4]
cmp dl, r13b
jne 0x18007b0fc
jmp 0x18007c50d
cmp r12d, 0x11
jne 0x18007c7e8
movzx eax, byte [r14 + 3]
lea rdx, [0x180000000]
mov ecx, dword [r14 + 4]
and eax, 0xf
mov qword [rsp + 0x40], r15
mov eax, dword [rdx + rax*4 + 0xa4100]
or eax, 0xa0
mov dword [rsp + 0x30], eax
test dword [r14], 0xf00
jne 0x18007b123
test ecx, ecx
jne 0x18007b123
test dword [r15], 0x1ff8
jne 0x18007c7dd
mov rcx, r15
call fcn.180080c8c
cmp eax, 2
jne 0x18007cc3b
mov r10d, 0x2b
jmp 0x18007b129
cmp r12d, 0xa
jne 0x18007c83c
movzx eax, byte [r15 + 3]
lea rdx, [0x180000000]
mov ecx, dword [r15 + 4]
and eax, 0xf
mov qword [rsp + 0x40], r14
mov eax, dword [rdx + rax*4 + 0xa4100]
or eax, 0xa2
mov dword [rsp + 0x30], eax
test dword [r15], 0xf00
jne 0x18007b123
test ecx, ecx
jne 0x18007b123
mov rcx, r14
call fcn.180081024
test al, al
jne 0x18007c7dd
jmp 0x18007cc3b
cmp r12d, 0x19
jne 0x18007b123
mov eax, dword [r14]
mov r11d, 0x8000039
and eax, 0xff000fff
cmp eax, r11d
jne 0x18007b123
mov esi, dword [r14 + 4]
mov rcx, r15
mov dword [rsp + 0x30], 0xb8
mov r12b, 8
call fcn.1800811f4
mov edx, 8
lea rcx, [rsp + 0x30]
mov r14, rax
call fcn.18007ab68
mov edi, dword [rsp + 0x30]
jmp 0x18007cd25
cmp r12d, 9
jne 0x18007cab1
mov r10d, dword [r14]
mov ecx, 0xf07
mov esi, dword [r14 + 4]
mov eax, r10d
mov r8d, dword [r15]
and eax, ecx
cmp eax, r13d
jne 0x18007ca4f
mov eax, r8d
mov dword [rbp + 0x6f], esi
and eax, ecx
mov r12d, esi
mov esi, dword [r15 + 4]
mov dword [rbp + 0x77], esi
cmp eax, r13d
jne 0x18007c9b6
movzx edx, byte [r14 + 3]
movzx eax, byte [r15 + 3]
cmp edx, eax
jne 0x18007b123
cmp edx, r13d
jne 0x18007c986
mov ecx, 0xff000fff
mov edx, 0x80000000
and r10d, ecx
mov edi, 0x40000000
cmp r10d, 0x1000021
je 0x18007c915
cmp r12d, r11d
sbb eax, eax
not eax
and eax, edi
or r9d, eax
jmp 0x18007c91f
or r9d, edx
add r12d, r11d
mov dword [rbp + 0x6f], r12d
and r8d, ecx
cmp r8d, 0x1000021
je 0x18007c939
cmp esi, r11d
sbb eax, eax
not eax
and eax, edi
or r9d, eax
jmp 0x18007c942
or r9d, edx
add esi, r11d
mov dword [rbp + 0x77], esi
mov edi, 0x88
mov dword [rbp + 0x67], r9d
mov edx, 0x200
mov dword [rsp + 0x30], edi
mov ecx, r9d
call fcn.18007ac74
test al, al
je 0x18007b0fc
mov edi, 0x8a
mov dword [rsp + 0x30], edi
lea rdx, [rbp + 0x6f]
lea rcx, [rbp + 0x77]
call fcn.18007ac68
mov esi, dword [rbp + 0x77]
mov r12d, dword [rbp + 0x6f]
jmp 0x18007b0fc
lea rcx, [rsp + 0x30]
mov dword [rsp + 0x30], 0x89
call fcn.18007ab7c
mov ecx, dword [rbp + 0x67]
mov edx, 0x200
call fcn.18007ac74
mov edi, dword [rsp + 0x30]
test al, al
je 0x18007b0fc
add edi, 2
jmp 0x18007c969
and r8d, 0xff000fff
cmp r8d, 0x2000599
jne 0x18007c9e9
mov dword [rsp + 0x30], 0x8c
movzx edx, byte [r14 + 3]
lea rcx, [rsp + 0x30]
call fcn.18007ab7c
mov edx, 0xffffffff
add esi, edx
jmp 0x18007c29d
mov rcx, r15
call fcn.180081094
test al, al
je 0x18007ca35
mov edi, 0x120
mov dword [rsp + 0x30], edi
test sil, 8
je 0x18007b0fc
mov rcx, qword [rbp + 0x57]
call fcn.180081078
test al, al
je 0x18007b0fc
mov edx, 0xf0
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov rbx, qword [rsp + 0x48]
and esi, 7
jmp 0x18007c29d
mov rcx, r15
call fcn.1800810a4
test al, al
je 0x18007b123
mov edi, 0x121
jmp 0x18007c008
mov r12d, dword [r15 + 4]
and r8d, ecx
cmp r8d, r13d
jne 0x18007b123
and r10d, 0xff000fff
cmp r10d, 0x2000599
jne 0x18007ca81
mov dword [rsp + 0x30], 0x8e
movzx edx, byte [r15 + 3]
jmp 0x18007c9d3
mov rcx, r14
call fcn.180081094
test al, al
je 0x18007ca97
mov edi, 0x122
jmp 0x18007c9fa
mov rcx, r14
call fcn.1800810a4
test al, al
je 0x18007b123
mov edi, 0x123
jmp 0x18007c008
cmp r12d, 0x11
jne 0x18007cbaa
mov edi, dword [r14]
mov esi, dword [r14 + 4]
and edi, 0xff000fff
mov qword [rsp + 0x40], r15
cmp edi, 0x2000599
jne 0x18007cb00
movzx eax, byte [r15 + 3]
lea rcx, [0x180000000]
and eax, 0xf
mov edx, 0xffffffff
mov eax, dword [rcx + rax*4 + 0xa40c0]
or eax, 0x8e
mov dword [rsp + 0x30], eax
add esi, edx
jmp 0x18007c56d
and dword [rsp + 0x30], 0
lea rax, [0x180000000]
movzx r14d, byte [r14 + 3]
mov ebx, r14d
and ebx, 0xf
mov ebx, dword [rax + rbx*4 + 0xa4100]
mov dword [rsp + 0x30], ebx
test esi, esi
jne 0x18007cb62
mov rcx, r15
call fcn.180081024
mov r12d, dword [rbp + 0x67]
test al, al
jne 0x18007cb68
mov rcx, qword [rbp + 0x57]
lea rdx, [rsp + 0x48]
mov r8d, r14d
mov qword [rsp + 0x20], r15
mov r9d, r12d
call fcn.180081258
test al, al
je 0x18007cb68
add ebx, 0xa0
mov dword [rsp + 0x30], ebx
jmp 0x18007cc3b
mov r12d, dword [rbp + 0x67]
jmp 0x18007cb6e
mov r11d, 4
cmp r14b, r13b
jne 0x18007cb9b
cmp edi, 0x1000021
je 0x18007cb8c
cmp esi, r11d
sbb eax, eax
not eax
and eax, 0x40000000
or r12d, eax
jmp 0x18007cb97
mov edx, 0x80000000
or r12d, edx
add esi, r11d
mov dword [rbp + 0x67], r12d
add ebx, 0x8a
mov dword [rsp + 0x30], ebx
jmp 0x18007c2d6
cmp r12d, 0xa
jne 0x18007ccd1
mov eax, dword [r15]
lea rcx, [rsp + 0x30]
mov esi, dword [r15 + 4]
mov ebx, 0xff000fff
and eax, ebx
mov qword [rsp + 0x40], r14
cmp eax, 0x2000599
jne 0x18007cbf1
mov dword [rsp + 0x30], 0x8c
movzx edx, byte [r14 + 3]
call fcn.18007ab7c
mov edx, 0xffffffff
add esi, edx
jmp 0x18007ceb4
and dword [rsp + 0x30], 0
movzx edx, byte [r15 + 3]
call fcn.18007ab3c
test esi, esi
jne 0x18007cc78
mov rcx, r14
call fcn.180081024
mov r12d, dword [rbp + 0x67]
test al, al
jne 0x18007cc7c
movzx r8d, byte [r15 + 3]
lea rdx, [rsp + 0x48]
mov rcx, qword [rbp + 0x57]
mov r9d, r12d
mov qword [rsp + 0x20], r14
call fcn.180081258
test al, al
je 0x18007cc7c
add dword [rsp + 0x30], 0xa2
mov rcx, qword [rsp + 0x40]
call fcn.180081104
mov rcx, qword [rbp + 0x57]
mov rsi, rax
call fcn.180081184
mov rcx, qword [rsp + 0x40]
mov r15b, al
call fcn.1800811d0
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.180080f50
mov rbx, qword [rsp + 0x48]
mov edi, dword [rsp + 0x30]
jmp 0x18007daa5
mov r12d, dword [rbp + 0x67]
cmp byte [r15 + 3], r13b
jne 0x18007ccba
mov eax, dword [r15]
mov r15d, 4
and eax, ebx
cmp eax, 0x1000021
je 0x18007cca9
cmp esi, r15d
sbb eax, eax
not eax
and eax, 0x40000000
or r12d, eax
mov dword [rbp + 0x67], r12d
jmp 0x18007ccc0
mov edx, 0x80000000
or r12d, edx
mov dword [rbp + 0x67], r12d
add esi, r15d
jmp 0x18007ccc0
mov r15d, 4
mov edi, 0x88
add dword [rsp + 0x30], edi
mov r8, r14
jmp 0x18007b495
cmp r12d, 0x19
jne 0x18007cdc7
mov r12b, byte [r14 + 3]
mov esi, dword [r14 + 4]
cmp r12b, r13b
jne 0x18007cd31
mov eax, dword [r14]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x18007cd08
cmp esi, r11d
sbb eax, eax
not eax
and eax, 0x40000000
or r9d, eax
jmp 0x18007cd13
mov edx, 0x80000000
or r9d, edx
add esi, r11d
mov edi, 0xb0
mov dword [rbp + 0x67], r9d
mov dword [rsp + 0x30], edi
movzx r14d, byte [r15 + 8]
lea rcx, [0x180000000]
jmp 0x18007df02
mov rcx, r15
call fcn.1800811f4
mov qword [rsp + 0x38], rax
mov r10, rax
cmp r12b, 8
jne 0x18007cd7a
mov ecx, dword [rbp + 0x67]
mov edx, 0x20
call fcn.18007ac74
test al, al
jne 0x18007cd7a
mov rcx, r10
call fcn.18007ac4c
test al, al
je 0x18007cda4
mov rcx, qword [rbp + 0x57]
mov edx, r13d
call fcn.18008104c
test al, al
je 0x18007cd9f
mov r12d, 4
mov dl, r12b
mov dword [rsp + 0x30], 0xb8
lea rcx, [rsp + 0x30]
call fcn.18007ab50
mov edi, dword [rsp + 0x30]
lea rcx, [0x180000000]
jmp 0x18007defd
mov r10, qword [rsp + 0x38]
mov rcx, r10
call fcn.18007ac14
test al, al
je 0x18007cd7a
mov r12d, esi
mov edi, 0x80000c7
xor esi, esi
mov dword [rsp + 0x30], edi
lea r11d, [rsi + 4]
jmp 0x18007d6b3
cmp r12d, 0x1a
jne 0x18007b123
movzx edx, byte [r14 + 3]
mov dword [rbp + 0x6f], edx
test edx, edx
je 0x18007db25
xor eax, eax
lea rcx, [rsp + 0x30]
cmp edx, r13d
setne al
add eax, 0xc6
mov dword [rsp + 0x30], eax
call fcn.18007ab7c
mov rcx, r15
mov qword [rsp + 0x40], r14
xor esi, esi
call fcn.1800811f4
lea r15d, [r12 - 0x16]
mov qword [rsp + 0x38], rax
lea rdx, [rbp + 0x77]
mov dword [rbp + 0x77], r15d
lea rcx, [rbp + 0x6f]
call fcn.18007ac60
mov byte [rbp + 0x5f], al
jmp 0x18007ccc9
cmp r12d, 0x11
jne 0x18007b123
movzx eax, byte [r14 + 3]
lea rcx, [0x180000000]
and eax, 0xf
or edi, dword [rcx + rax*4 + 0xa40c0]
mov dword [rsp + 0x30], edi
jmp 0x18007bd8e
cmp r12d, eax
jne 0x18007cebc
movzx ebx, byte [r14 + 3]
mov qword [rsp + 0x40], r14
test ebx, ebx
jne 0x18007ce7f
mov rax, qword [rbp + 0x57]
mov al, byte [rax + 0x48]
not al
and eax, r13d
lea ebx, [rax*4 + 4]
jmp 0x18007ce9d
add ebx, 0xfffffffe
lea eax, [rbx - 2]
test eax, 0xfffffffd
je 0x18007ce9d
mov rcx, qword [rbp + 0x57]
call fcn.180081184
cmp ebx, eax
jne 0x18007c7dd
mov eax, ebx
lea rcx, [0x180000000]
and eax, 0xf
or edi, dword [rcx + rax*4 + 0xa40c0]
mov dword [rsp + 0x30], edi
mov r8, r14
jmp 0x18007c47f
cmp r12d, 0x1b
jne 0x18007b123
mov rax, qword [rbp + 0x57]
test byte [rax + 0x48], r13b
je 0x18007b123
mov edx, dword [r14 + 0xc]
mov eax, dword [r14 + 8]
shl rdx, 0x20
or rdx, rax
cmp rdx, 0xffff
jg 0x18007b129
mov rcx, r15
call fcn.1800811f4
mov edx, 0xffffffff
cmp rax, rdx
jg 0x18007bbf7
mov r11, qword [rsp + 0x50]
lea rcx, [0x180000000]
lea rcx, [rcx + r11*8]
lea rcx, [rcx + 0xaabc0]
call fcn.180081220
mov rcx, r14
mov dword [rsp + 0x30], eax
mov edi, eax
call fcn.1800811f4
mov rsi, rax
mov rcx, r15
shl rsi, 0x20
call fcn.1800811f4
or rsi, rax
mov r15b, 6
jmp 0x18007daa5
test r8d, r8d
je 0x18007cf69
test eax, eax
je 0x18007cfb5
mov ecx, r9d
shr ecx, 4
test r13b, cl
jne 0x18007cfb5
mov r15, qword [rbp + 0x57]
add r15, 0x90
test eax, eax
je 0x18007d0e1
shr r9d, 4
test r13b, r9b
jne 0x18007d0e1
test r14d, eax
mov byte [rbx], 0xf
mov eax, 0
mov r14d, 0xfffffffc
setne al
add rbx, rax
mov al, byte [rsp + 0x30]
mov byte [rbx], al
lea rcx, [rbx + 1]
xor ebx, ebx
mov al, sil
shl al, 3
sub al, 0x40
test esi, esi
mov byte [rcx], al
setne bl
add rbx, rcx
jmp 0x18007cfc7
mov byte [rbx], r8b
mov r11, r13
add rbx, r13
mov qword [rsp + 0x60], r13
or r14, 0xffffffffffffffff
mov esi, dword [rbp + 0x5f]
mov qword [rsp + 0x48], rbx
jmp 0x180080b0c
cmp ecx, 3
jne 0x18007b123
mov edx, dword [r12 + 0xc]
add r15, 0x30
mov ecx, dword [r12 + 8]
or r14, 0xffffffffffffffff
shl rdx, 0x20
or rdx, rcx
mov r8, qword [r15]
mov qword [rbp + 0x6f], r8
mov qword [rbp - 0x79], rdx
cmp qword [r8 + 8], r14
je 0x18007d0ec
mov r14, qword [rbp + 0x6f]
mov r8, rdx
mov r12, qword [rbp + 0x57]
mov ecx, r10d
sub r8, rcx
sub r8, qword [r14 + 8]
sub r8, qword [rbp + 0x67]
test byte [r12 + 0x48], r13b
jne 0x18007d060
mov ecx, 0x80000000
mov edx, 0xffffffff
add rcx, r8
cmp rcx, rdx
jbe 0x18007d060
mov rax, qword [rsp + 0x50]
cmp eax, 0x12f
je 0x18007d0ef
cmp eax, 0x3b
jne 0x18007d0e1
lea r15, [r12 + 0x30]
jmp 0x18007d0ef
mov r14d, 0x1f00
lea ecx, [r8 + 0x7e]
add ecx, r10d
cmp ecx, 0xff
ja 0x18007d099
mov edx, dword [rbp + 0x77]
test edx, edx
je 0x18007d099
mov ecx, r9d
shr ecx, 5
test r13b, cl
jne 0x18007d099
sub r10b, 2
mov byte [rbx], dl
add r10b, r8b
mov byte [rbx + 1], r10b
jmp 0x18007e1cc
test eax, eax
je 0x18007d0e1
shr r9d, 4
test r13b, r9b
jne 0x18007d0e1
mov byte [rbx], 0xf
test r14d, eax
mov eax, 0
mov cl, sil
setne al
shl cl, 3
add rbx, rax
sub cl, 0x40
mov al, byte [rsp + 0x30]
mov byte [rbx], al
lea rax, [rbx + 1]
xor ebx, ebx
mov byte [rax], cl
test esi, esi
setne bl
add rbx, rax
mov dword [rbx], r8d
add rbx, r11
jmp 0x180080c42
mov r10d, 0x30
jmp 0x18007b129
mov r14, r8
mov r8d, r11d
lea rdx, [rsp + 0x58]
mov rcx, r14
call fcn.18007a814
mov r10d, eax
test eax, eax
jne 0x18007b129
mov rax, qword [rsp + 0x58]
mov r8, qword [rbp + 0x57]
mov r14, qword [rbp - 0x79]
mov rcx, qword [r8 + 0xa8]
sub rcx, qword [r8 + 0x98]
mov qword [rax + 0x18], rcx
mov rax, qword [r8 + 0x90]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x58]
mov dword [rax + 0x10], ecx
mov rax, qword [rsp + 0x58]
mov qword [rax + 0x20], r14
mov eax, dword [rsp + 0x30]
test eax, eax
je 0x18007d224
mov cl, byte [r8 + 0x48]
not cl
test r13b, cl
je 0x18007d1b2
mov rcx, qword [rsp + 0x50]
mov r12, r15
cmp ecx, 0x12f
je 0x18007d173
cmp ecx, 0x3b
jne 0x18007d1b2
lea r12, [r8 + 0x30]
test edi, edi
jne 0x18007d18c
lea edx, [rdi + 0x40]
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov rbx, qword [rsp + 0x48]
mov r15, r12
mov rcx, qword [r15]
mov rdx, r14
call fcn.180079e28
mov r10d, eax
test eax, eax
jne 0x18007b129
mov rax, qword [rsp + 0x58]
mov dword [rax + 4], 5
mov eax, dword [rsp + 0x30]
mov byte [rbx], 0xf
test eax, 0x1f00
mov eax, 0
setne al
add rbx, rax
mov al, byte [rsp + 0x30]
mov byte [rbx], al
lea rdx, [rbx + 1]
mov al, sil
shl al, 3
sub al, 0x40
mov byte [rbx + 1], al
xor eax, eax
test esi, esi
setne al
add rdx, rax
lea r8, [rax + rbx]
mov rax, qword [rsp + 0x58]
xor ebx, ebx
mov dword [rax + 8], 0x4040000
mov dword [rax + 0xc], 0x2000
mov rcx, qword [rsp + 0x58]
mov rax, qword [rbp + 0x57]
sub dl, byte [rax + 0xa8]
mov al, dl
add al, byte [rcx + 0xb]
mov byte [rcx + 0xa], al
mov byte [rcx + 0xc], dl
mov dword [r8 + 1], ebx
lea rbx, [r8 + 5]
jmp 0x180080c42
mov edx, dword [rbp + 0x77]
mov byte [rbx], dl
inc rbx
mov rax, qword [rsp + 0x58]
mov cl, bl
mov dword [rax + 8], 0x1010000
mov dword [rax + 0xc], 0x800
sub cl, byte [r8 + 0xa8]
mov rdx, qword [rsp + 0x58]
mov al, cl
add al, byte [rdx + 0xb]
mov byte [rdx + 0xa], al
mov byte [rdx + 0xc], cl
mov byte [rbx], 0
inc rbx
jmp 0x180080c42
cmp r12d, 0x11
jne 0x18007b123
mov r8d, eax
cmp dword [r14 + 4], eax
jne 0x18007b123
mov edx, dword [r15]
mov eax, edx
and al, 7
cmp al, r8b
jne 0x18007b123
cmp dword [r15 + 4], 6
jne 0x18007b123
mov eax, edx
shr eax, 3
test al, 0x1f
lea eax, [r12 - 0x11]
cmove eax, dword [r15 + 4]
or eax, dword [r15 + 0xc]
jne 0x18007b123
mov r9b, byte [r15 + 3]
test r9b, r9b
je 0x18007db25
mov rsi, r15
jmp 0x18007c0a3
sub ecx, 0x33
je 0x18007d88e
sub ecx, r13d
je 0x18007d850
sub ecx, r13d
je 0x18007d809
sub ecx, r13d
je 0x18007d5f5
sub ecx, r13d
je 0x18007d5e3
sub ecx, r13d
je 0x18007d510
sub ecx, r13d
je 0x18007d3d0
sub ecx, r13d
je 0x18007d384
cmp ecx, r13d
jne 0x18007b123
cmp r12d, 0x12
jne 0x18007b123
mov ecx, dword [r14]
mov eax, dword [r15]
shr ecx, 3
shr eax, 3
xor eax, ecx
test eax, 0x3ff
jne 0x18007b123
test cl, 0x1f
lea eax, [r12 - 0x12]
mov rsi, r15
cmove eax, dword [r14 + 4]
or eax, dword [r14 + 0xc]
jne 0x18007b123
movzx edx, byte [r15 + 3]
test edx, edx
je 0x18007db25
movzx eax, byte [r14 + 3]
cmp eax, edx
jne 0x18007de68
lea rcx, [rsp + 0x30]
call fcn.18007ab3c
mov edx, dword [r15]
lea r8d, [r12 - 0x10]
mov edi, dword [rsp + 0x30]
jmp 0x18007d43b
cmp r12d, 0xa
jne 0x18007b123
cmp dword [r14 + 0xc], 0
mov rsi, r14
jne 0x18007b123
mov eax, dword [r15]
and eax, 0xf07
cmp eax, r13d
sete cl
cmp dword [r15 + 4], 0
sete al
test al, cl
je 0x18007b123
mov edx, dword [r14]
movzx eax, byte [r15 + 3]
test edx, 0xff000000
je 0x18007d420
cmp byte [r14 + 3], al
jmp 0x18007d41a
cmp r12d, 0x11
jne 0x18007b123
cmp dword [r15 + 0xc], 0
mov rsi, r15
jne 0x18007b123
mov eax, dword [r14]
and eax, 0xf07
cmp eax, r13d
sete cl
cmp dword [r14 + 4], 0
sete al
test al, cl
je 0x18007b123
mov edx, dword [r15]
movzx eax, byte [r14 + 3]
test edx, 0xff000000
je 0x18007d420
cmp byte [r15 + 3], al
jne 0x18007de68
and eax, 0xf
lea rcx, [0x180000000]
mov r8d, 2
or edi, dword [rcx + rax*4 + 0xa4100]
mov dword [rsp + 0x30], edi
mov ecx, edx
lea rdx, [0x180000000]
mov eax, ecx
shr ecx, 3
shr rax, 3
and eax, 0x3ff
test cl, 0x1f
movzx r9d, byte [rax + rdx + 0xa3a30]
mov eax, 0
cmove eax, dword [rsi + 4]
or eax, dword [rsi + 0xc]
jne 0x18007b123
test r8b, r9b
jne 0x18007b123
shr edi, 0x15
and edi, 7
mov al, byte [rdi + rdx + 0xa39e0]
mov byte [rbx], al
mov eax, 0
mov edx, dword [rsp + 0x30]
setne al
or edx, dword [rbp + 0x67]
shr edx, 0x18
lea rcx, [rax + rbx]
cmp edx, 0x80
ja 0x18007b53f
and edx, 0x7f
mov al, dl
or al, 0x40
mov byte [rcx], al
xor eax, eax
test edx, edx
lea rdx, [0x180000000]
setne al
add rax, rcx
mov ecx, dword [rsi]
shr rcx, 0x12
and ecx, 7
mov cl, byte [rcx + rdx + 0xa39e8]
xor edx, edx
mov byte [rax], cl
test cl, cl
lea rcx, [rsp + 0x48]
setne dl
add rdx, rax
mov rax, qword [rbp + 0x57]
mov eax, dword [rax + 0x28]
test r9d, eax
mov eax, 0
mov byte [rdx], 0x67
setne al
add rax, rdx
mov edx, dword [rsp + 0x30]
mov qword [rsp + 0x48], rax
call fcn.180080ec0
jmp 0x18007b422
cmp r12d, 0xc9
jne 0x18007d54f
movzx eax, byte [r14 + 3]
lea rcx, [0x180000000]
and eax, 0xf
or edi, dword [rcx + rax*4 + 0xa40c0]
mov dword [rsp + 0x30], edi
mov r10d, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
mov esi, dword [r15 + 4]
mov r12d, dword [r14 + 4]
shl r10, 0x20
or r10, rax
jmp 0x18007b0e9
cmp r12d, 0xca
jne 0x18007d598
movzx eax, byte [r15 + 3]
lea rcx, [0x180000000]
and eax, 0xf
mov qword [rsp + 0x40], r14
or edi, dword [rcx + rax*4 + 0xa40c0]
mov dword [rsp + 0x30], edi
mov ebx, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
mov esi, dword [r15 + 4]
shl rbx, 0x20
or rbx, rax
mov qword [rsp + 0x38], rbx
mov byte [rbp + 0x5f], r13b
jmp 0x18007b48f
lea eax, [rdi + 1]
mov dword [rsp + 0x30], eax
mov edi, eax
cmp r12d, 0x49
jne 0x18007d5bb
cmp dword [r8 + 4], r13d
jne 0x18007b123
movzx eax, byte [r14 + 3]
jmp 0x18007b8a8
cmp r12d, 0x4a
jne 0x18007b123
cmp dword [r8 + 4], r13d
jne 0x18007b123
movzx edx, byte [r15 + 3]
lea rcx, [rsp + 0x30]
call fcn.18007ab7c
jmp 0x18007c72f
cmp r12d, r13d
jne 0x18007b5cc
mov r12d, dword [r14 + 4]
jmp 0x18007bf7f
mov ecx, dword [r14]
mov eax, ecx
movzx edx, byte [r14 + 3]
and al, 7
cmp al, r13b
jne 0x18007d78e
mov eax, edx
lea r8, [0x180000000]
and eax, 0xf
or edi, dword [r8 + rax*4 + 0xa4100]
mov dword [rsp + 0x30], edi
mov eax, dword [r14 + 4]
mov dword [rsp + 0x60], eax
cmp dl, r13b
jne 0x18007d661
and ecx, 0xff000fff
cmp ecx, 0x1000021
je 0x18007d64e
cmp eax, r11d
sbb eax, eax
not eax
and eax, 0x40000000
or r9d, eax
jmp 0x18007d65d
mov edx, 0x80000000
or r9d, edx
add eax, r11d
mov dword [rsp + 0x60], eax
mov dword [rbp + 0x67], r9d
cmp r12d, 9
jne 0x18007d682
cmp dword [r15 + 4], r13d
jne 0x18007b123
add edi, 2
mov dword [rsp + 0x30], edi
mov r12d, dword [rsp + 0x60]
jmp 0x18007b0fc
cmp r12d, 0x19
jne 0x18007b123
movzx r10d, byte [r15 + 8]
xor r11b, r11b
cmp r10, r13
jne 0x18007d6a4
mov eax, r9d
shr eax, 5
test r13b, al
je 0x18007d6ae
add edi, 0xfffffff0
mov r11b, r13b
mov dword [rsp + 0x30], edi
mov r12d, dword [rsp + 0x60]
mov r8d, dword [rbp + 0x67]
shr edi, 0x15
mov ecx, r12d
and edi, 7
mov eax, edi
lea rdi, [0x180000000]
mov al, byte [rax + rdi + 0xa39e0]
mov byte [rbx], al
mov eax, 0
mov edx, dword [rsp + 0x30]
setne al
or edx, r8d
and ecx, 8
shr edx, 0x15
add rax, rbx
or edx, ecx
mov ecx, esi
shr edx, 2
and ecx, 8
or edx, ecx
shr edx, 1
cmp edx, 0x80
ja 0x18007b53f
and edx, 0x7f
mov cl, dl
or cl, 0x40
mov byte [rax], cl
xor ecx, ecx
mov r9d, dword [rsp + 0x30]
test edx, edx
mov r8d, r9d
setne cl
shr r8, 8
add rcx, rax
and r8d, 0x1f
and esi, 7
and r12d, 7
mov dl, byte [rdi + r8*4 + 0xa39a0]
mov al, byte [rdi + r8*4 + 0xa39a1]
mov byte [rcx], al
xor eax, eax
test dl, dl
mov dl, byte [rdi + r8*4 + 0xa39a0]
setne al
add rax, rcx
mov cl, byte [rdi + r8*4 + 0xa39a2]
mov r8b, r11b
mov byte [rax], cl
xor ecx, ecx
cmp dl, r13b
mov rdx, r10
seta cl
shl sil, 3
add rcx, rax
sub sil, 0x40
add sil, r12b
mov byte [rcx], r9b
mov byte [rcx + 1], sil
add rcx, 2
mov qword [rsp + 0x48], rcx
jmp 0x180080c33
test dl, dl
je 0x18007db25
mov rax, rdx
lea rcx, [0x180000000]
and eax, 0xf
or edi, dword [rcx + rax*4 + 0xa4100]
mov dword [rsp + 0x30], edi
cmp r12d, 0xa
jne 0x18007d7c6
cmp dword [r15 + 4], r13d
jne 0x18007b123
lea eax, [rdi + 2]
jmp 0x18007b486
cmp r12d, 0x1a
jne 0x18007b123
movzx ebx, byte [r15 + 8]
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x38], rbx
mov byte [rbp + 0x5f], 0
cmp rbx, r13
jne 0x18007d7fd
lea edx, [r12 + 6]
mov ecx, r9d
call fcn.18007ac74
test al, al
je 0x18007b48f
lea eax, [rdi - 0x10]
mov dword [rsp + 0x30], eax
jmp 0x18007d58f
test r12d, r12d
jne 0x18007d816
add edi, r13d
jmp 0x18007da98
cmp r12d, 3
jne 0x18007b123
mov esi, dword [r14 + 0xc]
mov eax, dword [r14 + 8]
shl rsi, 0x20
or rsi, rax
jne 0x18007d848
mov eax, r9d
shr eax, 5
test r13b, al
jne 0x18007d848
add edi, r13d
mov dword [rsp + 0x30], edi
jmp 0x18007daa1
mov r15b, 2
jmp 0x18007daa5
cmp r12d, r13d
jne 0x18007d95a
mov eax, dword [r14]
and eax, 0xff000fff
cmp eax, 0x2000599
jne 0x18007d8cc
cmp dword [r14 + 4], 2
je 0x18007d8c1
cmp dword [r14 + 4], 7
jae 0x18007d8c1
mov eax, dword [r14 + 4]
lea r8, [0x180000000]
mov edi, dword [r8 + rax*4 + 0xa3a10]
jmp 0x18007da98
cmp r12d, r13d
jne 0x18007d90a
mov eax, dword [r14]
and eax, 0xff000fff
cmp eax, 0x2000599
jne 0x18007d8cc
cmp dword [r14 + 4], 7
jae 0x18007d8c1
mov eax, dword [r14 + 4]
lea r8, [0x180000000]
mov edi, dword [r8 + rax*4 + 0xa39f0]
jmp 0x18007da98
mov r10d, 0x31
jmp 0x18007b129
mov ecx, 2
cmp byte [r14 + 3], cl
jb 0x18007b123
movzx eax, byte [rdx + 7]
xor edi, edi
cmp byte [r14 + 3], cl
mov r11d, 0x200000
lea rcx, [0x180000000]
cmove edi, r11d
or edi, dword [rcx + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], edi
mov esi, dword [r14 + 4]
jmp 0x18007def9
cmp r12d, 3
jne 0x18007d95a
mov eax, dword [r14 + 8]
mov esi, dword [r14 + 0xc]
shl rsi, 0x20
or rsi, rax
mov dword [rbp + 0x5f], r11d
lea rax, [rsi + 0x80]
cmp rax, 0xff
ja 0x18007d947
mov eax, r9d
movzx r11d, r11b
shr eax, 5
test r13b, al
cmove r11d, r13d
mov dword [rbp + 0x5f], r11d
mov edi, 0x68
cmp r11b, r13b
lea eax, [rdi + 2]
cmove edi, eax
jmp 0x18007d83f
mov edx, eax
cmp r12d, eax
jne 0x18007b123
movzx r8d, byte [r14 + 3]
test r8b, r8b
je 0x18007db25
cmp r8b, dl
je 0x18007d994
mov rax, qword [rbp + 0x57]
mov cl, byte [rax + 0x48]
not cl
and ecx, r13d
lea ecx, [rcx*4 + 4]
cmp r8d, ecx
jne 0x18007b123
xor eax, eax
mov r11d, 0x200000
cmp r8b, dl
cmove eax, r11d
or edi, eax
mov dword [rsp + 0x30], edi
jmp 0x18007b95c
cmp r12d, 9
je 0x18007b691
cmp r12d, 0xa
je 0x18007b739
movzx eax, byte [rdx + 7]
lea r10, [0x180000000]
mov esi, dword [r10 + rax*4 + 0xb04d0]
mov edi, esi
mov dword [rsp + 0x30], esi
shr esi, 0x12
and esi, 7
cmp r12d, 0x19
jne 0x18007db12
movzx r8d, byte [r14 + 3]
mov eax, r8d
and eax, 0xf
or edi, dword [r10 + rax*4 + 0xa4100]
mov dword [rsp + 0x30], edi
mov r12d, dword [r14 + 4]
cmp r8b, r13b
jne 0x18007da44
mov eax, dword [r14]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x18007da2b
cmp r12d, r11d
sbb eax, eax
not eax
and eax, 0x40000000
or r9d, eax
jmp 0x18007da36
mov edx, 0x80000000
or r9d, edx
add r12d, r11d
movzx r10d, byte [r15 + 8]
mov r11b, r13b
mov dword [rbp + 0x67], r9d
jmp 0x18007da60
mov eax, dword [r15 + 8]
mov r10d, dword [r15 + 0xc]
shl r10, 0x20
or r10, rax
mov eax, r8d
cmp r8d, r11d
cmova eax, r11d
mov r11b, al
mov dword [rbp + 0x5f], r11d
mov qword [rsp + 0x38], r10
test r12d, r12d
jne 0x18007d6b3
mov eax, r9d
shr eax, 5
test r13b, al
jne 0x18007d6b3
xor ecx, ecx
mov eax, edi
cmp r8b, r13b
setne cl
and eax, 0x8200000
lea edi, [rcx + 0xa8]
or edi, eax
mov dword [rsp + 0x30], edi
mov rsi, qword [rsp + 0x38]
mov r15d, dword [rbp + 0x5f]
mov r8d, dword [rbp + 0x67]
shr edi, 0x15
lea rcx, [0x180000000]
and edi, 7
mov al, byte [rdi + rcx + 0xa39e0]
mov byte [rbx], al
mov eax, 0
mov edx, dword [rsp + 0x30]
setne al
or edx, r8d
add rax, rbx
shr edx, 0x18
cmp edx, 0x80
ja 0x18007b53f
and edx, 0x7f
mov cl, dl
or cl, 0x40
mov byte [rax], cl
xor ecx, ecx
test edx, edx
mov edx, dword [rsp + 0x30]
setne cl
add rcx, rax
mov qword [rsp + 0x48], rcx
lea rcx, [rsp + 0x48]
call fcn.180080ec0
mov r8b, r15b
mov rdx, rsi
jmp 0x180080c33
cmp r12d, 0x1a
jne 0x18007b123
movzx ecx, byte [r14 + 3]
test cl, cl
jne 0x18007db30
mov r10d, 0x34
jmp 0x18007b129
mov rax, rcx
mov qword [rsp + 0x40], r14
and eax, 0xf
or edi, dword [r10 + rax*4 + 0xa4100]
mov dword [rsp + 0x30], edi
mov eax, dword [r15 + 8]
mov ebx, dword [r15 + 0xc]
shl rbx, 0x20
or rbx, rax
mov eax, ecx
cmp ecx, r11d
mov qword [rsp + 0x38], rbx
cmova eax, r11d
mov byte [rbp + 0x5f], al
jmp 0x18007b48f
cmp ecx, 0x46
ja 0x18007df79
je 0x18007e18a
sub ecx, 0x3d
je 0x18007de48
sub ecx, r13d
je 0x18007de1e
sub ecx, r13d
je 0x18007de16
sub ecx, r13d
je 0x18007dda6
sub ecx, r13d
je 0x18007e19b
sub ecx, r13d
je 0x18007dd65
sub ecx, r13d
je 0x18007dd38
sub ecx, r13d
je 0x18007dc63
cmp ecx, r13d
jne 0x18007b123
cmp r12d, eax
jne 0x18007b123
and edi, 0xffff1fff
mov qword [rsp + 0x40], r14
mov dword [rsp + 0x30], edi
cmp byte [r14 + 3], al
jne 0x18007dc0a
mov r15, qword [rsp + 0x68]
mov eax, dword [r15]
shr eax, 0xb
test r13b, al
je 0x18007b123
lea eax, [rdi + 4]
mov dword [rsp + 0x30], eax
jmp 0x18007b48f
mov rcx, qword [rsp + 0x68]
cmp byte [r14 + 3], r11b
jne 0x18007dc23
mov eax, dword [rcx]
shr eax, 0xc
test r13b, al
jne 0x18007b48f
cmp byte [r14 + 3], 8
jne 0x18007b123
mov eax, dword [rcx]
shr eax, 0xd
test r13b, al
je 0x18007b123
movzx eax, byte [rdx + 7]
lea rcx, [0x180000000]
mov esi, dword [rcx + rax*4 + 0xb04d0]
and esi, 0xffff1fff
mov dword [rsp + 0x30], esi
shr esi, 0x12
and esi, 7
jmp 0x18007b48f
cmp r12d, eax
jne 0x18007dce4
mov qword [rsp + 0x40], r14
cmp byte [r14 + 3], r11b
jne 0x18007dc88
mov rcx, qword [rsp + 0x68]
mov eax, dword [rcx]
shr eax, 0xc
test r13b, al
jne 0x18007b48f
jmp 0x18007dcb4
cmp byte [r14 + 3], 8
jne 0x18007dcaf
mov r15, qword [rsp + 0x68]
mov eax, dword [r15]
shr eax, 0xd
test r13b, al
je 0x18007b123
add edi, r11d
mov dword [rsp + 0x30], edi
jmp 0x18007b48f
mov rcx, qword [rsp + 0x68]
cmp byte [r14 + 3], 0xa
jne 0x18007b123
mov eax, dword [rcx]
shr eax, 0xb
test r13b, al
je 0x18007b123
movzx eax, byte [rdx + 7]
lea rcx, [0x180000000]
mov esi, dword [rcx + rax*4 + 0xb04d0]
jmp 0x18007dc54
cmp r12d, r13d
jne 0x18007b123
mov rax, qword [rsp + 0x50]
cmp eax, 0xce
jne 0x18007dd08
mov edi, dword [r14 + 4]
add edi, 0x364c0
jmp 0x18007e197
cmp eax, 0xec
jne 0x18007dd1e
mov edi, dword [r14 + 4]
add edi, 0x374d0
jmp 0x18007e197
cmp eax, 0xef
jne 0x18007b123
mov edi, dword [r14 + 4]
add edi, 0x374d8
jmp 0x18007e197
test r12d, r12d
je 0x18007dd77
cmp r12d, r13d
jne 0x18007dd48
mov r13d, dword [r14 + 4]
jmp 0x18007dd77
cmp r12d, eax
jne 0x18007b123
cmp byte [r14 + 3], r11b
mov eax, 0xdc
lea ecx, [rax - 4]
cmove eax, ecx
jmp 0x18007b486
cmp r12d, 9
jne 0x18007dd48
mov ecx, dword [r14 + 4]
mov r13d, dword [r15 + 4]
test ecx, ecx
jne 0x18007dd8c
shr edi, 0xa
movzx eax, dil
lea edi, [r13 + 0x36000]
add edi, eax
jmp 0x18007e197
test r13d, r13d
jne 0x18007b123
movzx edi, dil
add ecx, 0x37000
add edi, ecx
jmp 0x18007e197
cmp r12d, 9
jne 0x18007dde7
mov esi, dword [r14 + 4]
mov eax, r9d
mov r12d, dword [r15 + 4]
mov r10, qword [rsp + 0x38]
mov r8d, dword [rbp + 0x67]
mov r11d, dword [rbp + 0x5f]
shr eax, 8
test r13b, al
je 0x18007d6b7
movzx eax, byte [rdx + 7]
lea rcx, [0x180000000]
mov edi, dword [rcx + rax*4 + 0xb04d0]
jmp 0x18007ba4d
cmp r12d, 0x11
je 0x18007bd8e
cmp r12d, 0xa
jne 0x18007b123
movzx eax, byte [rdx + 7]
lea rcx, [0x180000000]
mov eax, dword [rcx + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], eax
jmp 0x18007bd76
xor r12d, r12d
jmp 0x18007b0fc
cmp r12d, 0x11
jne 0x18007de48
movzx ecx, byte [r14 + 3]
lea rdx, [0x180000000]
mov eax, ecx
and eax, 0xf
or edi, dword [rdx + rax*4 + 0xa4100]
mov dword [rsp + 0x30], edi
cmp cl, r13b
jmp 0x18007ba87
cmp r12d, 9
jne 0x18007b72f
movzx ecx, byte [r14 + 3]
movzx eax, byte [r15 + 3]
mov r12d, dword [r14 + 4]
mov esi, dword [r15 + 4]
cmp ecx, eax
je 0x18007de73
mov r10d, 0x35
jmp 0x18007b129
cmp ecx, r13d
je 0x18007b6c8
cmp dword [rsp + 0x50], 0x668
jne 0x18007df72
test esi, esi
je 0x18007de97
test r12d, r12d
jne 0x18007df72
mov rax, qword [rbp + 0x57]
mov al, byte [rax + 0x48]
not al
test r13b, al
je 0x18007dec0
cmp esi, r12d
jne 0x18007dec0
cmp ecx, r11d
jb 0x18007dec0
cmp ecx, 8
jne 0x18007df72
and edi, 0x8000000
jmp 0x18007dee8
mov eax, r9d
shr eax, 5
test r13b, al
jne 0x18007df72
mov edx, ecx
add esi, r12d
lea rcx, [rsp + 0x30]
call fcn.18007ab3c
mov edi, dword [rsp + 0x30]
and edi, 0x8200000
lea rcx, [0x180000000]
or edi, 0x90
mov dword [rsp + 0x30], edi
mov r12d, dword [rbp + 0x5f]
mov r14, qword [rsp + 0x38]
shr edi, 0x15
and edi, 7
mov al, byte [rdi + rcx + 0xa39e0]
mov byte [rbx], al
mov eax, 0
mov edx, dword [rsp + 0x30]
setne al
or edx, dword [rbp + 0x67]
add rax, rbx
shr edx, 0x15
or edx, esi
shr edx, 3
cmp edx, 0x80
ja 0x18007b53f
and edx, 0x7f
mov cl, dl
or cl, 0x40
mov byte [rax], cl
xor ecx, ecx
test edx, edx
mov edx, dword [rsp + 0x30]
setne cl
and esi, 7
add rcx, rax
add edx, esi
mov qword [rsp + 0x48], rcx
lea rcx, [rsp + 0x48]
mov dword [rsp + 0x30], edx
call fcn.180080ec0
mov r8b, r12b
mov rdx, r14
jmp 0x180080c33
mov eax, ecx
jmp 0x18007bff7
sub ecx, 0x47
je 0x18007e180
sub ecx, r13d
je 0x18007e144
sub ecx, r13d
je 0x18007e127
sub ecx, r13d
je 0x18007e0ff
sub ecx, r13d
je 0x18007e0c5
sub ecx, r13d
je 0x18007e05a
mov edx, 0x8000000
sub ecx, r13d
je 0x18007e028
sub ecx, r13d
je 0x18007e038
cmp ecx, r13d
jne 0x18007b123
cmp r12d, 9
je 0x18007b5f5
cmp r12d, 0x11
je 0x18007bd8e
mov r11, qword [rsp + 0x50]
lea rcx, [0x180000000]
lea rax, [r11*8 + 0xaabc0]
movzx eax, byte [rax + rcx + 7]
mov esi, dword [rcx + rax*4 + 0xb04d0]
mov edi, esi
mov dword [rsp + 0x30], esi
shr esi, 0x12
and esi, 7
cmp r12d, 0x19
jne 0x18007b123
mov r10d, dword [r15 + 0xc]
mov r11b, r13b
mov eax, dword [r15 + 8]
shl r10, 0x20
or r10, rax
jmp 0x18007b940
xor eax, eax
cmp byte [r15 + 3], 8
cmove eax, edx
or edi, eax
mov dword [rsp + 0x30], edi
mov ecx, dword [r14]
xor eax, eax
and ecx, 0xff000fff
mov r11d, 0x8000039
cmp ecx, r11d
cmove eax, edx
or edi, eax
mov dword [rsp + 0x30], edi
jmp 0x18007e127
cmp r12d, 9
jne 0x18007e098
mov eax, dword [r14]
xor edx, edx
mov ecx, 0xff000fff
mov r11d, 0x200000
and eax, ecx
cmp eax, 0x10000161
mov eax, dword [r15]
cmove edx, r11d
and eax, ecx
xor ecx, ecx
cmp eax, 0x10000161
cmove ecx, r11d
or edx, ecx
or edi, edx
mov dword [rsp + 0x30], edi
jmp 0x18007b5f5
cmp r12d, 0x11
jne 0x18007b123
mov ecx, dword [r14]
xor eax, eax
and ecx, 0xff000fff
mov r11d, 0x200000
cmp ecx, 0x10000161
cmove eax, r11d
or edi, eax
mov dword [rsp + 0x30], edi
jmp 0x18007e13b
mov ecx, dword [r8]
test ecx, ecx
je 0x18007e123
mov eax, ecx
and al, 7
cmp al, 2
jne 0x18007b123
cmp dword [r8 + 4], 7
jne 0x18007b123
shr ecx, 3
mov eax, 0
test cl, 0x1f
cmove eax, dword [r8 + 4]
or eax, dword [r8 + 0xc]
jne 0x18007b123
jmp 0x18007e123
mov eax, dword [r8]
test eax, eax
je 0x18007e123
and eax, 0xff000fff
cmp eax, 0x10000161
sete cl
cmp dword [r8 + 4], 0
sete al
test al, cl
je 0x18007b123
and r12d, 0x3f
cmp r12d, 9
je 0x18007b5f5
cmp r12d, 0x11
jne 0x18007b123
mov esi, dword [r14 + 4]
jmp 0x18007c6f8
cmp r12d, r13d
jne 0x18007e16c
cmp dword [r14 + 4], 0
jne 0x18007b123
movzx eax, byte [rdx + 7]
lea rcx, [0x180000000]
mov edi, dword [rcx + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], edi
jmp 0x18007e1a2
cmp r12d, eax
jne 0x18007b123
and edi, 0xffff1fff
jmp 0x18007c03b
test r12d, r12d
jne 0x18007e18a
add edi, r13d
jmp 0x18007e197
cmp r12d, r13d
jne 0x18007b123
add edi, dword [r14 + 4]
mov dword [rsp + 0x30], edi
lea rcx, [0x180000000]
shr edi, 0x15
and edi, 7
mov al, byte [rdi + rcx + 0xa39e0]
mov byte [rbx], al
mov eax, 0
setne al
add rbx, rax
mov eax, dword [rsp + 0x30]
shr eax, 0xa
mov byte [rbx], al
mov al, byte [rsp + 0x30]
mov byte [rbx + 1], al
add rbx, 2
jmp 0x180080c42
cmp r12d, 9
jne 0x18007e215
mov eax, dword [r14]
xor edx, edx
mov ecx, 0xff000fff
mov r11d, 0x200000
and eax, ecx
cmp eax, 0x10000161
mov eax, dword [r15]
cmove edx, r11d
and eax, ecx
xor ecx, ecx
cmp eax, 0x10000161
cmove ecx, r11d
or edx, ecx
or edx, edi
mov edi, edx
mov dword [rsp + 0x30], edx
jmp 0x18007b5f5
cmp r12d, 0x11
jne 0x18007e23f
mov eax, dword [r14]
xor ecx, ecx
and eax, 0xff000fff
mov r11d, 0x200000
cmp eax, 0x10000161
cmove ecx, r11d
or ecx, edi
mov dword [rsp + 0x30], ecx
jmp 0x18007e13b
movzx eax, byte [rdx + 7]
mov ecx, dword [r10 + rax*4 + 0xb04d0]
mov esi, ecx
shr esi, 0x12
and esi, 7
mov dword [rsp + 0x30], ecx
cmp r12d, 0x19
jne 0x18007b123
mov eax, dword [r14]
xor edi, edi
and eax, 0xff000fff
mov r11d, 0x200000
cmp eax, 0x10000161
cmove edi, r11d
or edi, ecx
mov dword [rsp + 0x30], edi
jmp 0x18007e011
mov edx, 0x8000000
mov r11d, eax
mov r10d, 4
cmp ecx, 0x79
ja 0x18007f22c
je 0x18007f1c1
mov r11d, 0xc9
cmp ecx, 0x65
ja 0x18007ece7
je 0x18007ecbf
cmp ecx, 0x5b
ja 0x18007e8f2
je 0x18007e893
cmp ecx, 0x56
ja 0x18007e5de
je 0x18007e55f
sub ecx, 0x51
je 0x18007e536
sub ecx, r13d
je 0x18007e4cd
sub ecx, r13d
je 0x18007e418
sub ecx, r13d
je 0x18007e3a4
cmp ecx, r13d
jne 0x18007b123
cmp r12d, 9
jne 0x18007e35a
mov esi, dword [r14 + 4]
mov eax, r9d
mov r12d, dword [r15 + 4]
shr eax, 8
mov dword [rbp + 0x77], esi
mov dword [rbp + 0x6f], r12d
test r13b, al
je 0x18007b0fc
mov r11, qword [rsp + 0x50]
lea rcx, [0x180000000]
lea rax, [r11*8 + 0xaabc0]
add rax, rcx
cmp byte [rax + 7], 0
je 0x18007b0fc
mov rcx, rax
call fcn.180081220
mov edi, eax
mov dword [rsp + 0x30], eax
jmp 0x18007c96d
cmp r12d, 0x11
jne 0x18007e371
mov esi, dword [r14 + 4]
mov r8, r15
mov qword [rsp + 0x40], r15
jmp 0x18007e4c5
mov r11, qword [rsp + 0x50]
lea rcx, [0x180000000]
lea rax, [r11*8 + 0xaabc0]
movzx eax, byte [rax + rcx + 7]
mov eax, dword [rcx + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], eax
cmp r12d, 0xa
jne 0x18007b123
jmp 0x18007e4b9
cmp r12d, r11d
jne 0x18007e3e5
mov ecx, dword [r15]
xor eax, eax
and ecx, 0xff000fff
mov r11d, 0x200000
cmp ecx, 0x10000161
cmove eax, r11d
mov r11b, r13b
or edi, eax
mov dword [rsp + 0x30], edi
mov r10d, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
mov esi, dword [r15 + 4]
shl r10, 0x20
or r10, rax
jmp 0x18007b940
cmp r12d, 0xca
jne 0x18007b123
mov ecx, dword [r15]
xor eax, eax
and ecx, 0xff000fff
mov r11d, 0x200000
cmp ecx, 0x10000161
cmove eax, r11d
or edi, eax
mov dword [rsp + 0x30], edi
jmp 0x18007e4a1
cmp r12d, r11d
jne 0x18007e455
mov ecx, dword [r15]
xor eax, eax
and ecx, 0xff000fff
mov r11d, 0x200000
cmp ecx, 0x10000161
cmove eax, r11d
mov r11b, r13b
or edi, eax
mov dword [rsp + 0x30], edi
mov r10d, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
shl r10, 0x20
or r10, rax
jmp 0x18007c1c2
cmp r12d, 0xca
jne 0x18007b123
mov r11, qword [rsp + 0x50]
lea r9, [0x180000000]
xor ecx, ecx
lea rax, [r11*8 + 0xaabc0]
mov r11d, 0x200000
movzx edx, byte [rax + r9 + 7]
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x10000161
cmove ecx, r11d
or ecx, dword [r9 + rdx*4 + 0xb04d0]
mov dword [rsp + 0x30], ecx
mov ebx, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
shl rbx, 0x20
or rbx, rax
mov byte [rbp + 0x5f], r13b
mov qword [rsp + 0x38], rbx
mov esi, dword [r15 + 4]
mov r8, r14
mov qword [rsp + 0x40], r14
mov r15, r10
jmp 0x18007b495
mov r10d, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
shl r10, 0x20
or r10, rax
mov byte [rbp + 0x5f], r13b
mov qword [rsp + 0x38], r10
cmp r12d, r11d
jne 0x18007e52a
mov eax, dword [r14]
xor edx, edx
mov ecx, 0xff000fff
mov r11d, 0x200000
and eax, ecx
cmp eax, 0x10000161
mov eax, dword [r15]
cmove edx, r11d
and eax, ecx
xor ecx, ecx
cmp eax, 0x10000161
cmove ecx, r11d
or edx, ecx
or edi, edx
mov dword [rsp + 0x30], edi
mov esi, dword [r14 + 4]
mov r12d, dword [r15 + 4]
jmp 0x18007b101
cmp r12d, 0xd1
jmp 0x18007e09c
mov r10d, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
shl r10, 0x20
or r10, rax
mov byte [rbp + 0x5f], r13b
mov qword [rsp + 0x38], r10
cmp r12d, r11d
je 0x18007e51d
cmp r12d, 0xd1
jmp 0x18007e135
cmp r12d, 0x11
jne 0x18007e58e
cmp byte [r14 + 3], r13b
je 0x18007b123
movzx eax, byte [r14 + 3]
lea rcx, [0x180000000]
and eax, 0xf
or edi, dword [rcx + rax*4 + 0xa40c0]
mov dword [rsp + 0x30], edi
jmp 0x18007e360
mov r11, qword [rsp + 0x50]
lea rdx, [0x180000000]
lea rax, [r11*8 + 0xaabc0]
movzx eax, byte [rax + rdx + 7]
mov ecx, dword [rdx + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], ecx
cmp r12d, 0xa
jne 0x18007b123
cmp byte [r15 + 3], r13b
je 0x18007b123
movzx eax, byte [r15 + 3]
and eax, 0xf
or ecx, dword [rdx + rax*4 + 0xa40c0]
mov dword [rsp + 0x30], ecx
jmp 0x18007e4b9
mov edx, 0xff000fff
mov r10d, 0x10000161
sub ecx, 0x57
je 0x18007e7d6
sub ecx, r13d
je 0x18007e6cf
sub ecx, r13d
je 0x18007e671
cmp ecx, r13d
jne 0x18007b123
mov rdx, qword [rbp + 0x7f]
mov esi, dword [r14 + 4]
mov eax, dword [rdx]
and eax, 7
shl eax, 9
add eax, r12d
mov r12d, dword [r15 + 4]
cmp eax, 9
je 0x18007b0fc
cmp eax, 0x6c9
jne 0x18007b123
mov r11, qword [rsp + 0x50]
lea rcx, [0x180000000]
lea rax, [r11*8 + 0xaabc0]
movzx eax, byte [rax + rcx + 7]
mov edi, dword [rcx + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], edi
movzx r10d, byte [rdx + 8]
movzx eax, byte [r8 + 8]
shl r10, 8
mov r11b, 2
add r10, rax
jmp 0x18007d6b3
mov eax, dword [r15 + 4]
mov esi, dword [r14 + 4]
mov dword [rsp + 0x60], eax
cmp r12d, 9
je 0x18007d678
cmp r12d, 0xd9
jne 0x18007b123
mov r11, qword [rsp + 0x50]
lea rcx, [0x180000000]
mov r12d, esi
lea rax, [r11*8 + 0xaabc0]
movzx eax, byte [rax + rcx + 7]
mov edi, dword [rcx + rax*4 + 0xb04d0]
mov esi, edi
mov dword [rsp + 0x30], edi
movzx r10d, byte [r8 + 8]
movzx eax, byte [r15 + 8]
shr esi, 0x12
and esi, 7
jmp 0x18007e662
cmp r12d, 9
jne 0x18007e761
mov eax, dword [r15 + 4]
mov ecx, 0x8000391
mov esi, dword [r14 + 4]
mov dword [rsp + 0x60], eax
mov dword [rbp + 0x6f], eax
mov eax, dword [r14]
and eax, edx
mov dword [rbp + 0x77], esi
cmp eax, ecx
jne 0x18007e728
mov eax, dword [r15]
and eax, edx
cmp eax, ecx
jne 0x18007e7ce
mov eax, r9d
mov edi, 0x16f
shr eax, 8
mov dword [rsp + 0x30], edi
test r13b, al
je 0x18007d678
mov edi, 0x17f
jmp 0x18007c969
cmp eax, r10d
jne 0x18007e7ce
mov eax, dword [r15]
and eax, edx
cmp eax, r10d
jne 0x18007e7ce
mov eax, r9d
mov edi, 0x40017e
shr eax, 8
mov dword [rsp + 0x30], edi
test r13b, al
je 0x18007d678
mov edi, 0x2001d6
jmp 0x18007c969
cmp r12d, 0x11
jne 0x18007e79b
mov eax, dword [r14]
mov ecx, 0x8000391
mov esi, dword [r14 + 4]
and eax, edx
mov qword [rsp + 0x40], r15
mov r8, r15
cmp eax, ecx
jne 0x18007e78f
mov edi, 0x16f
mov dword [rsp + 0x30], edi
jmp 0x18007c47f
cmp eax, r10d
jne 0x18007e7ce
mov edi, 0x40017e
jmp 0x18007e786
cmp r12d, 0xa
jne 0x18007e7ce
mov eax, dword [r15]
mov ecx, 0x8000391
mov esi, dword [r15 + 4]
and eax, edx
mov qword [rsp + 0x40], r14
mov r8, r14
cmp eax, ecx
jne 0x18007e7c2
mov edi, 0x17f
jmp 0x18007e786
cmp eax, r10d
jne 0x18007e7ce
mov edi, 0x2001d6
jmp 0x18007e786
bts edi, 0x1b
mov dword [rsp + 0x30], edi
mov r9d, dword [r14]
xor ecx, ecx
mov esi, dword [r14 + 4]
mov eax, r9d
and eax, edx
mov dword [rsp + 0x60], esi
cmp eax, r10d
mov r11d, 0x200000
mov r8d, 0xf07
cmove ecx, r11d
or ecx, edi
mov dword [rbp + 0x77], ecx
mov edi, ecx
mov dword [rsp + 0x30], ecx
cmp r12d, 9
jne 0x18007e81c
mov eax, dword [r15]
and eax, r8d
cmp eax, r13d
jne 0x18007e826
jmp 0x18007b5f9
cmp r12d, 0x11
je 0x18007c6f8
mov rcx, qword [rsp + 0x50]
lea rdi, [0x180000000]
mov esi, dword [r15 + 4]
lea rax, [rcx*8 + 0xaabc0]
movzx ecx, byte [rax + rdi + 7]
xor edi, edi
mov eax, dword [r15]
and eax, edx
cmp eax, r10d
lea rax, [0x180000000]
cmove edi, r11d
or edi, dword [rax + rcx*4 + 0xb04d0]
mov eax, dword [rbp + 0x77]
and eax, 0x8000000
or edi, eax
mov dword [rsp + 0x30], edi
cmp r12d, 9
jne 0x18007e884
and r9d, r8d
cmp r9d, r13d
jne 0x18007b123
jmp 0x18007d678
cmp r12d, 0xa
jne 0x18007b123
jmp 0x18007b95c
movzx r10d, dil
mov edi, 0x10f
mov dword [rsp + 0x30], edi
mov r11b, r13b
mov esi, dword [r14 + 4]
mov qword [rsp + 0x38], r10
mov dword [rbp + 0x5f], r11d
cmp r12d, 9
je 0x18007c1c6
cmp r12d, 0x11
jmp 0x18007c6f2
and r9d, 0x7f
lea rcx, [rsp + 0x48]
setne r8b
or r9d, 0x40
mov edx, r9d
call fcn.18007abd0
mov edx, dword [rsp + 0x30]
lea rcx, [rsp + 0x48]
and esi, 7
call fcn.180080ec0
jmp 0x180080269
sub ecx, 0x5c
je 0x18007ec63
sub ecx, r13d
je 0x18007fb3d
sub ecx, r13d
je 0x18007eba6
sub ecx, r13d
je 0x18007eb77
sub ecx, r13d
je 0x18007eb69
sub ecx, r13d
je 0x18007eb69
sub ecx, r13d
je 0x18007e9a7
sub ecx, r13d
je 0x18007e966
cmp ecx, r13d
jne 0x18007b123
mov edx, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
shl rdx, 0x20
or rdx, rax
mov byte [rbp + 0x5f], r13b
mov qword [rsp + 0x38], rdx
cmp r12d, r11d
jne 0x18007efa2
mov esi, dword [r15 + 4]
mov r12d, dword [r14 + 4]
jmp 0x18007e9e1
cmp r12d, 0xa
jne 0x18007b123
movzx eax, byte [r15 + 3]
lea rdx, [0x180000000]
shr rax, 4
mov ecx, dword [rdx + rax*4 + 0xa3e70]
mov eax, dword [r14]
shr eax, 8
and eax, 0x1f
mov eax, dword [rdx + rax*4 + 0xa3eb0]
cmp eax, ecx
cmovae ecx, eax
or edi, ecx
mov dword [rsp + 0x30], edi
jmp 0x18007fea3
movzx eax, byte [r15 + 3]
movzx ecx, byte [r14 + 3]
or rcx, rax
lea rax, [0x180000000]
shr rcx, 4
or edi, dword [rax + rcx*4 + 0xa3e70]
mov dword [rsp + 0x30], edi
cmp r12d, 9
jne 0x18007eb5a
mov esi, dword [r15 + 4]
mov r12d, dword [r14 + 4]
mov rdx, qword [rsp + 0x38]
mov r11d, dword [rbp + 0x5f]
mov rax, qword [rbp + 0x57]
mov ecx, 0x1000
mov r15, qword [rsp + 0x68]
mov r14d, dword [rax + 0x5c]
mov eax, esi
and eax, 0xf98
shl r14d, 0xc
or r14d, eax
and esi, 7
shl r14d, 2
mov eax, r12d
and eax, 0x18
or r14d, eax
mov eax, r9d
and eax, ecx
shl r14d, 2
or eax, edi
shr eax, 8
and eax, 0x60001f
or r14d, eax
test r9d, 0x8c0000
je 0x18007ea96
mov eax, r9d
and eax, 0x800000
or r14d, eax
test r9d, 0xc0000
je 0x18007ea96
mov eax, r14d
mov r8d, 0x600000
and eax, r8d
cmp eax, 0x400000
je 0x18007ea66
test byte [r15 + 4], 0x70
jne 0x18007ffc3
mov ecx, dword [r15 + 4]
mov eax, r9d
shr eax, 0x12
test r13b, al
je 0x18007fcfd
shr ecx, 2
test r13b, cl
je 0x18007ffc3
mov eax, r14d
xor eax, r9d
and eax, r8d
xor r14d, eax
bts r14d, 0x14
mov eax, 0xd78150
test byte [r15 + 3], r13b
je 0x18007eab3
test eax, r14d
jne 0x18007eabc
test r9d, 0xc00
jne 0x18007eab3
or r14d, 0x10
test eax, r14d
je 0x18007fd15
shl sil, 3
mov ecx, r14d
and ecx, 0x8000
mov eax, edi
shl ecx, 4
and edi, 0x8000000
or ecx, r14d
shr eax, 1
and ecx, 0xffff78ef
and eax, 0x8300000
shl ecx, 4
or eax, edi
shr eax, 4
and r14d, 0x100
or ecx, r14d
and r12d, 7
shl ecx, 4
sub sil, 0x40
or ecx, eax
add sil, r12b
xor ecx, 0x87cf062
mov dword [rbx], ecx
mov al, byte [rsp + 0x30]
mov byte [rbx + r10], al
mov byte [rbx + r10 + 1], sil
add rbx, 2
add rbx, r10
test r11b, r11b
je 0x180080c42
mov byte [rbx], dl
lea rax, [rbx + 1]
mov rbx, rax
cmp r11b, r13b
je 0x180080c42
shr rdx, 8
lea rbx, [rax + 3]
mov byte [rax], dl
shr rdx, 8
mov byte [rax + 1], dl
shr rdx, 8
mov byte [rax + 2], dl
jmp 0x180080c42
cmp r12d, 0xa
jne 0x18007b123
jmp 0x18007fea3
cmp r12d, eax
jne 0x18007b123
jmp 0x18007fea7
cmp r12d, r13d
jne 0x18007b123
mov ecx, dword [r14]
xor eax, eax
mov r12d, dword [r14 + 4]
and ecx, 0xff000fff
mov r11d, 0x8000039
cmp ecx, r11d
cmove eax, edx
or edi, eax
mov dword [rsp + 0x30], edi
jmp 0x18007e9dc
cmp r12d, 9
jne 0x18007ec3f
mov eax, dword [r15]
mov ecx, 0xf07
mov esi, dword [r14 + 4]
and eax, ecx
mov r12d, dword [r15 + 4]
cmp eax, r13d
jne 0x18007ebeb
mov rcx, qword [rsp + 0x50]
lea r8, [0x180000000]
lea rax, [rcx*8 + 0xaabc0]
movzx eax, byte [rax + r8 + 7]
mov edi, dword [r8 + rax*4 + 0xb04d0]
jmp 0x18007eb9d
mov eax, dword [r14]
and eax, ecx
cmp eax, r13d
jne 0x18007ec1c
mov rcx, qword [rsp + 0x50]
lea r8, [0x180000000]
lea rax, [rcx*8 + 0xaabc0]
movzx eax, byte [rax + r8 + 7]
mov edi, dword [r8 + rax*4 + 0xb04d0]
add edi, r13d
jmp 0x18007eb9d
mov eax, r9d
shr eax, 8
test r13b, al
je 0x18007e9dc
mov eax, esi
add edi, r13d
mov esi, r12d
mov dword [rsp + 0x30], edi
mov r12d, eax
jmp 0x18007e9dc
cmp r12d, 0x11
jne 0x18007ec51
mov esi, dword [r14 + 4]
mov rbx, r15
jmp 0x18007feaa
cmp r12d, 0xa
jne 0x18007b123
add edi, r13d
jmp 0x18007e99e
mov ecx, edi
shr r9d, 0xa
shr ecx, 6
mov eax, edi
and ecx, 0x1800000
mov r8d, 0x600000
and eax, r8d
or ecx, eax
mov eax, edi
shr ecx, 5
and eax, 0x1f00
or ecx, eax
shr ecx, 8
test r13b, r9b
je 0x18007ecab
shl edi, 0x18
or edi, 0x78e0c4
shl ecx, 8
xor edi, ecx
mov dword [rbx], edi
add rbx, r10
jmp 0x180080c42
mov eax, ecx
mov byte [rbx], 0xc5
shr eax, 8
add rbx, r13
xor al, cl
xor al, 0xf9
jmp 0x18007e1c3
movzx eax, byte [r15 + 3]
movzx ecx, byte [r14 + 3]
or rcx, rax
lea rax, [0x180000000]
shr rcx, 4
or edi, dword [rax + rcx*4 + 0xa3e70]
mov dword [rsp + 0x30], edi
jmp 0x18007e93b
cmp ecx, 0x6f
ja 0x18007efae
je 0x18007f18b
sub ecx, 0x66
je 0x18007ef6b
sub ecx, r13d
je 0x18007ef52
sub ecx, r13d
je 0x18007ef16
sub ecx, r13d
je 0x18007eee1
sub ecx, r13d
je 0x18007eec0
sub ecx, r13d
je 0x18007ee92
sub ecx, r13d
je 0x18007ee2f
sub ecx, r13d
je 0x18007edee
cmp ecx, r13d
jne 0x18007b123
mov rdi, qword [rbp + 0x7f]
mov ecx, 0xf07
mov eax, dword [r14]
mov edx, 0x101
and eax, ecx
lea rbx, [rdi + 0x20]
mov qword [rsp + 0x40], rbx
cmp eax, edx
jne 0x18007b123
mov eax, dword [r15]
and eax, ecx
cmp eax, edx
jne 0x18007b123
mov eax, dword [r8]
and eax, ecx
cmp eax, edx
jne 0x18007b123
mov eax, dword [rdi]
and eax, ecx
cmp eax, edx
jne 0x18007b123
mov eax, dword [rdi + 0x10]
and eax, ecx
cmp eax, edx
jne 0x18007b123
mov rcx, rbx
call fcn.1800810c4
test al, al
je 0x18007b123
mov edx, dword [r15 + 4]
test dl, 3
jne 0x18007ede3
mov rcx, qword [rbp + 0x77]
lea eax, [rdx + 1]
cmp dword [rcx + 4], eax
jne 0x18007ede3
lea eax, [rdx + 2]
cmp dword [rdi + 4], eax
jne 0x18007ede3
lea eax, [rdx + 3]
cmp dword [rdi + 0x14], eax
jne 0x18007ede3
mov ecx, dword [r14 + 4]
call fcn.180081250
mov esi, eax
jmp 0x18007feaf
mov r10d, 0x3c
jmp 0x18007b129
cmp r12d, 0x11
jne 0x18007b123
movzx eax, byte [r14 + 3]
lea rdx, [0x180000000]
shr rax, 4
mov ecx, dword [rdx + rax*4 + 0xa3e70]
mov eax, dword [r15]
shr eax, 8
and eax, 0x1f
mov eax, dword [rdx + rax*4 + 0xa3eb0]
cmp eax, ecx
cmovae ecx, eax
or edi, ecx
mov dword [rsp + 0x30], edi
jmp 0x18007ec45
cmp r12d, 9
jne 0x18007eec0
mov eax, dword [r15]
and eax, 0xf07
cmp eax, r13d
jne 0x18007eec0
movzx eax, byte [r15 + 3]
lea r8, [0x180000000]
mov r11, qword [rsp + 0x50]
movzx ecx, byte [r14 + 3]
or rcx, rax
shr rcx, 4
lea rax, [r11*8 + 0xaabc0]
movzx eax, byte [rax + r8 + 7]
mov edi, dword [r8 + rcx*4 + 0xa3e70]
or edi, dword [r8 + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], edi
mov esi, dword [r14 + 4]
mov r12d, dword [r15 + 4]
jmp 0x18007e9dc
movzx eax, byte [r15 + 3]
test al, al
je 0x18007eeaf
shr rax, 4
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0xa3e70]
jmp 0x18007ef10
cmp byte [r14 + 3], 0x20
jne 0x18007ef52
bts edi, 0x1e
jmp 0x18007ef10
movzx eax, byte [r15 + 3]
movzx ecx, byte [r14 + 3]
or rcx, rax
lea rax, [0x180000000]
shr rcx, 4
or edi, dword [rax + rcx*4 + 0xa3e70]
jmp 0x18007ef10
mov eax, dword [r14]
xor edx, edx
mov ecx, 0xff000fff
mov r11d, 0x8000039
and eax, ecx
cmp eax, r11d
mov eax, dword [r15]
lea r8d, [r11 - 0x39]
cmove edx, r8d
and eax, ecx
xor ecx, ecx
cmp eax, r11d
cmove ecx, r8d
or edx, ecx
or edi, edx
mov dword [rsp + 0x30], edi
jmp 0x18007ef52
mov ecx, dword [r8]
test ecx, ecx
je 0x18007ef4e
mov eax, ecx
and al, 7
cmp al, 2
jne 0x18007b123
cmp dword [r8 + 4], 7
jne 0x18007b123
shr ecx, 3
mov eax, 0
test cl, 0x1f
cmove eax, dword [r8 + 4]
or eax, dword [r8 + 0xc]
jne 0x18007b123
and r12d, 0x3f
cmp r12d, 9
je 0x18007ee85
cmp r12d, 0x11
jne 0x18007b123
jmp 0x18007ec45
cmp r12d, r11d
jne 0x18007e93b
mov edi, 0x2001c5
mov byte [rbp + 0x5f], r13b
mov dword [rsp + 0x30], edi
mov edx, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
mov esi, dword [r14 + 4]
mov r12d, dword [r15 + 4]
shl rdx, 0x20
or rdx, rax
mov qword [rsp + 0x38], rdx
jmp 0x18007e9e1
cmp r12d, 0xca
jmp 0x18007eb5e
sub ecx, 0x70
je 0x18007f154
sub ecx, r13d
je 0x18007f133
sub ecx, r13d
je 0x18007f109
sub ecx, r13d
je 0x18007f0e1
sub ecx, r13d
je 0x18007f0b8
sub ecx, r13d
je 0x18007f097
sub ecx, r13d
je 0x18007f078
sub ecx, r13d
je 0x18007f000
cmp ecx, r13d
je 0x18007f1e4
jmp 0x18007b123
cmp r12d, 0x49
jne 0x18007b123
mov ecx, dword [r14 + 4]
test r13b, cl
jne 0x18007f06d
lea eax, [rcx + 1]
cmp eax, dword [r15 + 4]
jne 0x18007f06d
movzx eax, byte [r8 + 3]
lea rdx, [0x180000000]
shr rax, 4
or edi, dword [rdx + rax*4 + 0xa3e70]
mov rax, qword [rbp + 0x7f]
mov dword [rsp + 0x30], edi
mov esi, dword [r8 + 4]
shl esi, 7
add esi, ecx
mov ecx, dword [rax]
and ecx, 7
cmp ecx, r13d
jne 0x18007f057
mov r12d, dword [rax + 4]
jmp 0x18007e9dc
cmp ecx, 2
jne 0x18007b123
mov rbx, rax
mov qword [rsp + 0x40], rax
jmp 0x18007feaf
mov r10d, 0x1d
jmp 0x18007b129
mov ecx, dword [r14]
xor eax, eax
and ecx, 0xff000fff
cmp ecx, 0x289
mov ecx, 0x1000
cmove eax, ecx
or edi, eax
mov dword [rsp + 0x30], edi
movzx eax, byte [r15 + 3]
movzx ecx, byte [r14 + 3]
or rcx, rax
lea rax, [0x180000000]
shr rcx, 4
or edi, dword [rax + rcx*4 + 0xa3e70]
jmp 0x18007f105
mov rdx, qword [rbp + 0x7f]
mov eax, dword [rdx]
test eax, eax
je 0x18007f0dc
and eax, 0xf07
cmp eax, r13d
sete cl
cmp dword [rdx + 4], 2
sete al
test al, cl
je 0x18007b123
mov edx, 0x8000000
mov eax, dword [r14]
xor ecx, ecx
and eax, 0xff000fff
mov r11d, 0x8000039
cmp eax, r11d
cmove ecx, edx
xor eax, eax
cmp byte [r8 + 3], 8
cmove eax, edx
or ecx, eax
or edi, ecx
mov dword [rsp + 0x30], edi
cmp r12d, 0x49
je 0x18007f593
cmp r12d, 0x89
jne 0x18007b123
mov esi, dword [r15 + 4]
mov rbx, r8
shl esi, 7
add esi, dword [r14 + 4]
jmp 0x18007feaa
movzx eax, byte [r15 + 3]
movzx ecx, byte [r14 + 3]
or rcx, rax
lea rax, [0x180000000]
shr rcx, 4
or edi, dword [rax + rcx*4 + 0xa3e70]
jmp 0x18007f187
mov eax, dword [r14]
xor edx, edx
mov r11d, 0x8000039
mov ecx, 0xff000fff
and eax, ecx
cmp eax, r11d
mov eax, dword [r15]
lea esi, [r11 - 0x39]
cmove edx, esi
and eax, ecx
xor ecx, ecx
cmp eax, r11d
mov r11d, 0xc9
cmove ecx, esi
or edx, ecx
or edi, edx
mov dword [rsp + 0x30], edi
mov edx, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
shl rdx, 0x20
or rdx, rax
mov byte [rbp + 0x5f], r13b
mov qword [rsp + 0x38], rdx
cmp r12d, r11d
jne 0x18007f1b5
mov esi, dword [r14 + 4]
mov r12d, dword [r15 + 4]
jmp 0x18007e9e1
cmp r12d, 0xd1
jmp 0x18007ef60
movzx eax, byte [r15 + 3]
movzx ecx, byte [r14 + 3]
or rcx, rax
lea rax, [0x180000000]
shr rcx, 4
or edi, dword [rax + rcx*4 + 0xa3e70]
mov dword [rsp + 0x30], edi
mov rdx, qword [rbp + 0x7f]
mov r11b, r13b
mov dword [rbp + 0x5f], r11d
mov ecx, dword [rdx]
mov edx, dword [rdx + 4]
and ecx, 7
shl ecx, 9
shl edx, 4
add ecx, r12d
mov qword [rsp + 0x38], rdx
cmp ecx, 0x249
jne 0x18007f221
mov esi, dword [r15 + 4]
mov r12d, dword [r8 + 4]
shl esi, 7
add esi, dword [r14 + 4]
jmp 0x18007e9e5
cmp ecx, 0x289
jmp 0x18007f11a
mov eax, 0x8d
cmp ecx, eax
ja 0x18007f7d7
je 0x18007f9e5
mov eax, 0x83
cmp ecx, eax
ja 0x18007f48c
je 0x18007f792
sub ecx, 0x7a
je 0x18007f44d
sub ecx, r13d
je 0x18007f42e
sub ecx, r13d
je 0x18007f40d
sub ecx, r13d
je 0x18007f3ee
sub ecx, r13d
je 0x18007f3cf
sub ecx, r13d
je 0x18007f39e
sub ecx, r13d
je 0x18007f353
sub ecx, r13d
je 0x18007f2ff
cmp ecx, r13d
jne 0x18007b123
mov rax, qword [rbp + 0x7f]
mov r11b, r13b
mov dword [rbp + 0x5f], r11d
mov ecx, dword [rax]
mov edx, dword [rax + 0xc]
and ecx, 7
mov eax, dword [rax + 8]
shl ecx, 9
shl rdx, 0x20
add ecx, r12d
or rdx, rax
mov qword [rsp + 0x38], rdx
cmp ecx, 0x649
jne 0x18007f2e3
mov esi, dword [r8 + 4]
shl esi, 7
add esi, dword [r14 + 4]
mov r12d, dword [r15 + 4]
jmp 0x18007e9e5
cmp ecx, 0x651
jne 0x18007b123
mov esi, dword [r8 + 4]
shl esi, 7
add esi, dword [r14 + 4]
jmp 0x18007ec49
cmp r12d, 0x11
jne 0x18007f353
movzx eax, byte [r14 + 3]
lea rdx, [0x180000000]
mov r11, qword [rsp + 0x50]
shr rax, 4
mov ecx, dword [rdx + rax*4 + 0xa3e70]
mov eax, dword [r15]
shr eax, 8
and eax, 0x1f
mov eax, dword [rdx + rax*4 + 0xa3eb0]
cmp eax, ecx
cmovae ecx, eax
lea rax, [r11*8 + 0xaabc0]
movzx eax, byte [rax + rdx + 7]
or ecx, dword [rdx + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], ecx
jmp 0x18007ec45
cmp r12d, 0x51
jne 0x18007b123
movzx eax, byte [r8 + 3]
lea r9, [0x180000000]
movzx ecx, byte [r14 + 3]
or rcx, rax
mov eax, dword [r15]
shr eax, 8
and eax, 0x1f
shr rcx, 4
mov eax, dword [r9 + rax*4 + 0xa3eb0]
mov edx, dword [r9 + rcx*4 + 0xa3e70]
cmp eax, edx
cmovae edx, eax
or edi, edx
mov dword [rsp + 0x30], edi
jmp 0x18007f2ef
mov eax, dword [r14]
xor edx, edx
mov ecx, 0xff000fff
mov r11d, 0x8000039
and eax, ecx
cmp eax, r11d
mov eax, dword [r8]
lea esi, [r11 - 0x39]
cmove edx, esi
and eax, ecx
xor ecx, ecx
cmp eax, r11d
cmove ecx, esi
or edx, ecx
or edi, edx
mov dword [rsp + 0x30], edi
cmp r12d, 0x49
jne 0x18007f3e5
mov esi, dword [r8 + 4]
shl esi, 7
add esi, dword [r14 + 4]
jmp 0x18007ee89
cmp r12d, 0x51
jmp 0x18007f2e9
mov ecx, dword [r14]
xor eax, eax
and ecx, 0xff000fff
cmp ecx, 0x289
mov ecx, 0x1000
cmove eax, ecx
or edi, eax
mov dword [rsp + 0x30], edi
movzx eax, byte [r15 + 3]
movzx ecx, byte [r14 + 3]
or rcx, rax
lea rax, [0x180000000]
shr rcx, 4
or edi, dword [rax + rcx*4 + 0xa3e70]
jmp 0x18007f449
mov ecx, dword [r14]
xor eax, eax
and ecx, 0xff000fff
cmp ecx, 0x289
mov ecx, 0x1000
cmove eax, ecx
or edi, eax
mov dword [rsp + 0x30], edi
mov rax, qword [rbp + 0x7f]
mov r11b, r13b
mov dword [rbp + 0x5f], r11d
mov ecx, dword [rax]
mov edx, dword [rax + 0xc]
and ecx, 7
mov eax, dword [rax + 8]
shl ecx, 9
shl rdx, 0x20
add ecx, r12d
or rdx, rax
mov qword [rsp + 0x38], rdx
cmp ecx, 0x649
je 0x18007f20d
cmp ecx, 0x689
jmp 0x18007f11a
sub ecx, 0x84
je 0x18007f76c
sub ecx, r13d
je 0x18007f70c
sub ecx, r13d
je 0x18007f69a
sub ecx, r13d
je 0x18007f675
sub ecx, r13d
je 0x18007f62b
sub ecx, r13d
je 0x18007f5f1
sub ecx, r13d
je 0x18007f586
sub ecx, r13d
je 0x18007f561
cmp ecx, r13d
jne 0x18007b123
lea rdx, [0x180000000]
cmp r12d, 0x49
je 0x18007f593
cmp r12d, 0x89
je 0x18007f120
mov rcx, qword [rsp + 0x50]
mov esi, edi
and esi, 0x60001000
lea rax, [rcx*8 + 0xaabc0]
movzx eax, byte [rax + rdx + 7]
or esi, dword [rdx + rax*4 + 0xb04d0]
mov edi, esi
mov dword [rsp + 0x30], esi
shr esi, 0x12
and esi, 7
mov r11b, r13b
mov edx, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
shl rdx, 0x20
or rdx, rax
mov dword [rbp + 0x5f], r11d
mov qword [rsp + 0x38], rdx
cmp r12d, 0xc9
jne 0x18007f969
mov eax, dword [r14 + 4]
shl eax, 7
add esi, eax
jmp 0x18007f2da
movzx ecx, byte [r14 + 3]
lea rdx, [0x180000000]
movzx eax, byte [r15 + 3]
or rcx, rax
shr rcx, 4
or edi, dword [rdx + rcx*4 + 0xa3e70]
mov dword [rsp + 0x30], edi
jmp 0x18007f58d
lea rdx, [0x180000000]
cmp r12d, 0x49
jne 0x18007f5a7
mov esi, dword [r15 + 4]
mov r12d, dword [r8 + 4]
shl esi, 7
add esi, dword [r14 + 4]
jmp 0x18007e9dc
cmp r12d, 0x89
je 0x18007f120
mov rcx, qword [rsp + 0x50]
and edi, 0x60000000
lea rax, [rcx*8 + 0xaabc0]
movzx eax, byte [rax + rdx + 7]
or edi, dword [rdx + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], edi
cmp r12d, 0x4a
jne 0x18007b123
mov esi, dword [r15 + 4]
shl esi, 7
add esi, dword [r8 + 4]
jmp 0x18007fea7
cmp r12d, 0x49
je 0x18007f593
cmp r12d, 0x89
je 0x18007f120
mov rcx, qword [rsp + 0x50]
lea r8, [0x180000000]
lea rax, [rcx*8 + 0xaabc0]
movzx eax, byte [rax + r8 + 7]
mov edi, dword [r8 + rax*4 + 0xb04d0]
jmp 0x18007e9c6
cmp r12d, 0x49
je 0x18007f712
cmp r12d, 0x51
je 0x18007f2ef
cmp r12d, 0x89
jne 0x18007f653
or edi, edx
mov dword [rsp + 0x30], edi
jmp 0x18007f120
mov rcx, qword [rsp + 0x50]
lea rdx, [0x180000000]
lea rax, [rcx*8 + 0xaabc0]
movzx eax, byte [rax + rdx + 7]
mov edi, dword [rdx + rax*4 + 0xb04d0]
jmp 0x18007f6d7
movzx ecx, byte [r14 + 3]
lea rdx, [0x180000000]
movzx eax, byte [r15 + 3]
or rcx, rax
shr rcx, 4
or edi, dword [rdx + rcx*4 + 0xa3e70]
mov dword [rsp + 0x30], edi
jmp 0x18007f6a1
lea rdx, [0x180000000]
cmp r12d, 0x49
je 0x18007f593
cmp r12d, 0x89
je 0x18007f120
mov rcx, qword [rsp + 0x50]
and edi, 0x60000000
lea rax, [rcx*8 + 0xaabc0]
movzx eax, byte [rax + rdx + 7]
or edi, dword [rdx + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], edi
mov r11b, r13b
mov edx, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
shl rdx, 0x20
or rdx, rax
mov dword [rbp + 0x5f], r11d
mov qword [rsp + 0x38], rdx
cmp r12d, 0xc9
jne 0x18007f1b5
mov esi, dword [r14 + 4]
jmp 0x18007f2da
cmp r12d, 0x49
jne 0x18007f750
mov esi, dword [r8 + 4]
mov eax, r9d
mov ecx, dword [r14 + 4]
mov r8d, esi
mov r11d, dword [rbp + 0x5f]
mov r12d, dword [r15 + 4]
shl esi, 7
add esi, ecx
shr eax, 8
test r13b, al
je 0x18007f746
mov esi, r12d
or edi, edx
shl esi, 7
mov r12d, r8d
add esi, ecx
mov dword [rsp + 0x30], edi
mov rdx, qword [rsp + 0x38]
jmp 0x18007e9e5
cmp r12d, 0x51
je 0x18007f2ef
cmp r12d, 0x89
jne 0x18007b123
jmp 0x18007f648
movzx ecx, byte [r14 + 3]
lea r8, [0x180000000]
movzx eax, byte [r15 + 3]
or rcx, rax
shr rcx, 4
or edi, dword [r8 + rcx*4 + 0xa3e70]
mov dword [rsp + 0x30], edi
jmp 0x18007f799
lea r8, [0x180000000]
cmp r12d, 9
je 0x18007ee85
cmp r12d, 0x11
je 0x18007ec45
mov rcx, qword [rsp + 0x50]
and edi, 0x60000000
lea rax, [rcx*8 + 0xaabc0]
movzx eax, byte [rax + r8 + 7]
or edi, dword [r8 + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], edi
jmp 0x18007eb5a
mov eax, 0x97
cmp ecx, eax
ja 0x18007fadd
je 0x18007fa0d
sub ecx, 0x8e
je 0x18007f9d1
sub ecx, r13d
je 0x18007f9b7
sub ecx, r13d
je 0x18007f984
sub ecx, r13d
je 0x18007f52b
sub ecx, r13d
je 0x18007f917
sub ecx, r13d
je 0x18007f93f
sub ecx, r13d
je 0x18007f903
sub ecx, r13d
je 0x18007f85d
cmp ecx, r13d
jne 0x18007b123
movzx eax, byte [r15 + 3]
movzx ecx, byte [r14 + 3]
or rcx, rax
lea rax, [0x180000000]
shr rcx, 4
or edi, dword [rax + rcx*4 + 0xa3e70]
mov dword [rsp + 0x30], edi
mov rax, qword [rbp + 0x7f]
mov ecx, dword [rax]
and ecx, 7
shl ecx, 9
add ecx, r12d
cmp ecx, 0x249
jne 0x18007f89a
mov edx, dword [rax + 4]
mov r11b, r13b
mov esi, dword [r15 + 4]
mov r12d, dword [r8 + 4]
shl esi, 7
add esi, dword [r14 + 4]
shl edx, 4
mov qword [rsp + 0x38], rdx
mov dword [rbp + 0x5f], r11d
jmp 0x18007e9e5
cmp ecx, 0x449
jne 0x18007f8d0
or edi, edx
mov qword [rsp + 0x40], rax
mov dword [rsp + 0x30], edi
mov ebx, dword [r8 + 4]
mov esi, dword [r15 + 4]
shl esi, 7
add esi, dword [r14 + 4]
shl ebx, 4
mov qword [rsp + 0x38], rbx
mov rbx, rax
mov byte [rbp + 0x5f], r13b
jmp 0x18007feaf
cmp ecx, 0x289
jne 0x18007b123
mov ebx, dword [rax + 4]
mov esi, dword [r15 + 4]
shl esi, 7
add esi, dword [r14 + 4]
shl ebx, 4
mov qword [rsp + 0x38], rbx
mov rbx, r8
mov qword [rsp + 0x40], r8
mov byte [rbp + 0x5f], r13b
jmp 0x18007feaf
cmp r12d, 0xd1
jne 0x18007f917
mov eax, 0x1000
or edi, eax
mov dword [rsp + 0x30], edi
movzx eax, byte [r15 + 3]
movzx ecx, byte [r14 + 3]
or rcx, rax
lea rax, [0x180000000]
shr rcx, 4
or edi, dword [rax + rcx*4 + 0xa3e70]
mov dword [rsp + 0x30], edi
jmp 0x18007f52b
mov eax, dword [r14]
mov r11d, 0x8000039
and eax, 0xff000fff
cmp eax, r11d
je 0x18007f95b
cmp byte [r15 + 3], 8
je 0x18007f95b
xor edx, edx
or edi, edx
mov r11b, r10b
mov dword [rsp + 0x30], edi
jmp 0x18007f52e
cmp r12d, 0xd1
jne 0x18007b123
mov eax, dword [r14 + 4]
shl eax, 7
add esi, eax
jmp 0x18007ec49
mov eax, dword [r14]
xor edx, edx
mov ecx, 0xff000fff
mov r11d, 0x8000039
and eax, ecx
cmp eax, r11d
mov eax, dword [r15]
lea r8d, [r11 - 0x39]
cmove edx, r8d
and eax, ecx
xor ecx, ecx
cmp eax, r11d
cmove ecx, r8d
or edx, ecx
or edi, edx
mov dword [rsp + 0x30], edi
cmp r12d, 9
jne 0x18007f9cb
mov eax, dword [r14 + 4]
shl eax, 7
add esi, eax
jmp 0x18007ee89
cmp r12d, 0x11
jmp 0x18007f970
mov eax, dword [r15]
xor ecx, ecx
and al, 7
cmp al, r11b
mov eax, 0x1000
cmove ecx, eax
or edi, ecx
movzx ecx, byte [r14 + 3]
lea rdx, [0x180000000]
movzx eax, byte [r15 + 3]
or rcx, rax
shr rcx, 4
or edi, dword [rdx + rcx*4 + 0xa3e70]
mov dword [rsp + 0x30], edi
jmp 0x18007f4e7
mov r11, qword [rbp + 0x7f]
mov eax, dword [r11 + 0x10]
and eax, 7
cmp al, 3
jne 0x18007b123
movzx eax, byte [r15 + 3]
movzx ecx, byte [r14 + 3]
mov esi, dword [r11]
or rcx, rax
movzx eax, byte [r8 + 3]
and esi, 7
or rcx, rax
shl esi, 9
movzx eax, byte [r11 + 3]
add esi, r12d
or rcx, rax
mov byte [rbp + 0x5f], r13b
shr rcx, 4
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0xa3e70]
mov dword [rsp + 0x30], edi
movzx edx, byte [r11 + 0x18]
and edx, 0xf
cmp esi, 0x249
jne 0x18007fa96
mov eax, dword [r11 + 4]
mov esi, dword [r15 + 4]
mov r12d, dword [r8 + 4]
shl esi, 7
add esi, dword [r14 + 4]
shl eax, 4
or rdx, rax
mov qword [rsp + 0x38], rdx
jmp 0x18007e9e1
cmp esi, 0x449
jne 0x18007fac8
bts edi, 0x1b
mov rbx, r11
mov dword [rsp + 0x30], edi
mov eax, dword [r8 + 4]
mov esi, dword [r15 + 4]
shl esi, 7
add esi, dword [r14 + 4]
shl eax, 4
or rdx, rax
mov qword [rsp + 0x38], rdx
jmp 0x18007feaa
cmp esi, 0x289
jne 0x18007b123
mov eax, dword [r11 + 4]
mov rbx, r8
jmp 0x18007faad
sub ecx, 0x98
je 0x18007fc70
sub ecx, r13d
je 0x18007fc29
sub ecx, r13d
je 0x18007fb70
sub ecx, r13d
je 0x18007fb4d
sub ecx, r13d
je 0x18007fb45
sub ecx, r13d
je 0x18007fb30
sub ecx, r13d
je 0x18007ef5c
sub ecx, r13d
je 0x18007eb5a
cmp ecx, r13d
jne 0x18007b123
cmp r12d, 0x49
jne 0x18007b123
jmp 0x18007f3d5
cmp r12d, r13d
jne 0x18007b123
mov esi, dword [r14 + 4]
xor r12d, r12d
jmp 0x18007e9dc
cmp r12d, r11d
jmp 0x18007eb6c
movzx eax, byte [r15 + 3]
movzx ecx, byte [r14 + 3]
or rcx, rax
lea rax, [0x180000000]
shr rcx, 4
or edi, dword [rax + rcx*4 + 0xa3e70]
mov dword [rsp + 0x30], edi
mov rcx, qword [rbp + 0x7f]
mov eax, dword [rcx]
and eax, 7
shl eax, 9
add eax, r12d
cmp eax, 0x249
jne 0x18007fbc7
mov esi, dword [r15 + 4]
mov eax, r9d
shl esi, 7
mov r11b, r13b
add esi, dword [r14 + 4]
shr eax, 8
mov dword [rbp + 0x5f], r11d
test r13b, al
jne 0x18007fbbe
or edi, edx
mov dword [rsp + 0x30], edi
mov r12d, dword [rcx + 4]
mov edx, dword [r8 + 4]
shl edx, 4
mov qword [rsp + 0x38], rdx
jmp 0x18007e9e5
mov r12d, dword [r8 + 4]
mov edx, dword [rcx + 4]
jmp 0x18007fbb1
cmp eax, 0x449
jne 0x18007fbfc
or edi, edx
mov qword [rsp + 0x40], rcx
mov dword [rsp + 0x30], edi
mov ebx, dword [r8 + 4]
mov esi, dword [r15 + 4]
shl esi, 7
add esi, dword [r14 + 4]
shl ebx, 4
mov qword [rsp + 0x38], rbx
mov rbx, rcx
mov byte [rbp + 0x5f], r13b
jmp 0x18007feaf
cmp eax, 0x289
jne 0x18007b123
mov eax, dword [rcx + 4]
mov rbx, r8
mov esi, dword [r15 + 4]
shl esi, 7
add esi, dword [r14 + 4]
shl eax, 4
mov qword [rsp + 0x38], rax
mov byte [rbp + 0x5f], r13b
jmp 0x18007feaa
cmp r12d, 0x49
je 0x18007f593
cmp r12d, 0x11
je 0x18007ec45
cmp r12d, 0xa
jne 0x18007b123
mov rcx, qword [rsp + 0x50]
lea rdx, [0x180000000]
lea rax, [rcx*8 + 0xaabc0]
movzx eax, byte [rax + rdx + 7]
mov eax, dword [rdx + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], eax
jmp 0x18007fea3
cmp r12d, 9
jne 0x18007fe36
mov eax, dword [r14]
mov ecx, 0xf07
and eax, ecx
cmp eax, r13d
jne 0x18007fcbe
mov rcx, qword [rsp + 0x50]
lea r8, [0x180000000]
xor edi, edi
cmp byte [r14 + 3], 8
lea rax, [rcx*8 + 0xaabc0]
cmove edi, edx
movzx eax, byte [rax + r8 + 7]
or edi, dword [r8 + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], edi
jmp 0x18007e9d4
mov eax, dword [r15]
and eax, ecx
cmp eax, r13d
jne 0x18007fcd9
xor eax, eax
cmp byte [r15 + 3], 8
cmove eax, edx
or edi, eax
jmp 0x18007ee81
bt edi, 0x1c
jae 0x18007fe5e
and edi, 0xffdfe17e
mov eax, edi
mov edi, 0x40017e
or eax, edi
mov edi, eax
mov dword [rsp + 0x30], eax
jmp 0x18007ee85
shr ecx, 3
test r13b, cl
je 0x18007ffc3
and r14d, 0xff9fffff
jmp 0x18007ea91
and r9d, 0xfffffc00
mov ecx, edi
shr ecx, 1
mov eax, edi
and ecx, 0x300000
shl r9d, 0x15
and eax, 0x8000000
mov r11d, 0x200000
or ecx, eax
mov eax, r14d
shr ecx, 1
and eax, r11d
or ecx, eax
shr ecx, 0xb
or ecx, r9d
or r14d, ecx
test r14d, 0x8000803e
je 0x18007fdc9
shl edi, 0x18
lea rcx, [0x180000000]
shl sil, 3
and r12d, 7
sub sil, 0x40
mov eax, r14d
and eax, 0xf
add sil, r12b
or edi, dword [rcx + rax*4 + 0xa3e30]
movzx eax, r14w
shl eax, 8
xor edi, eax
mov eax, dword [rbp + 0x5f]
mov dword [rbx], edi
add rbx, r10
mov byte [rbx], sil
inc rbx
test al, al
je 0x180080c42
mov byte [rbx], dl
lea rcx, [rbx + 1]
mov rbx, rcx
cmp al, r13b
je 0x180080c42
shr rdx, 8
lea rbx, [rcx + 3]
mov byte [rcx], dl
shr rdx, 8
mov byte [rcx + 1], dl
shr rdx, 8
mov byte [rcx + 2], dl
jmp 0x180080c42
mov edx, 0xc5
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov edx, r14d
lea rcx, [rsp + 0x48]
xor edx, 0xf900
shr edx, 8
xor edx, r14d
call fcn.18007abc4
mov edx, dword [rsp + 0x30]
lea rcx, [rsp + 0x48]
call fcn.18007abc4
and r12d, 7
mov edx, esi
mov r8d, r12d
mov ecx, 3
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov r8d, dword [rbp + 0x5f]
lea rcx, [rsp + 0x48]
mov rdx, qword [rsp + 0x38]
call fcn.180080e1c
jmp 0x180080c3d
cmp r12d, 0x11
jne 0x18007fe5e
bt edi, 0x1c
jae 0x18007ec45
and edi, 0xffdfe17e
mov eax, edi
mov edi, 0x40017e
or eax, edi
mov dword [rsp + 0x30], eax
jmp 0x18007ec45
mov rcx, qword [rsp + 0x50]
lea rdx, [0x180000000]
lea rax, [rcx*8 + 0xaabc0]
movzx eax, byte [rax + rdx + 7]
mov ecx, dword [rdx + rax*4 + 0xb04d0]
mov dword [rsp + 0x30], ecx
cmp r12d, 0xa
jne 0x18007b123
bt ecx, 0x1c
jae 0x18007fea3
and ecx, 0xffbfe1d6
mov edi, 0x2001d6
or ecx, edi
mov dword [rsp + 0x30], ecx
mov esi, dword [r15 + 4]
mov rbx, r14
mov qword [rsp + 0x40], rbx
mov rcx, rbx
call fcn.180080e04
mov eax, eax
lea rcx, [0x180000000]
movzx r12d, byte [rax + rcx + 0xa3a30]
mov rcx, rbx
call fcn.1800811d0
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.180080f50
mov rax, qword [rsp + 0x48]
lea rcx, [rsp + 0x48]
mov qword [rbp - 0x79], rax
mov rax, qword [rbp + 0x57]
test dword [rax + 0x28], r12d
setne dl
call fcn.18007abe0
mov rcx, rbx
call fcn.180081030
test al, al
je 0x18007ff0d
mov r14d, dword [rbx + 4]
jmp 0x18007ff10
xor r14d, r14d
mov rcx, rbx
call fcn.18008105c
test al, al
je 0x18007ff21
mov edi, dword [rbx + 8]
jmp 0x18007ff23
xor edi, edi
mov rcx, rbx
mov dword [rbp + 0x77], edi
call fcn.180081040
movzx r15d, al
lea rcx, [rsp + 0x30]
mov rax, qword [rbp + 0x57]
shl r15d, 4
or r15d, dword [rax + 0x5c]
mov eax, edi
and eax, 0x10
add r15d, r15d
or r15d, eax
mov eax, esi
and eax, 0xf98
shl r15d, 0xb
or r15d, eax
mov eax, edi
mov edi, dword [rbp + 0x67]
and eax, 8
add r15d, r15d
mov edx, edi
or r15d, eax
mov eax, r14d
and eax, 8
add r15d, r15d
or r15d, eax
shl r15d, 2
call fcn.180080ff8
mov r8, qword [rsp + 0x68]
mov edx, 0x400000
or r15d, eax
and esi, 7
mov ecx, dword [r8]
not ecx
call fcn.18007ace4
shl eax, 9
mov edx, 0x8c0000
or r15d, eax
mov ecx, edi
mov dword [rbp + 0x6f], r15d
call fcn.18007ac74
test al, al
je 0x18007ffdf
mov edx, 0xc0000
call fcn.18007ac74
test al, al
je 0x18007ffce
mov r10d, 0x2a
jmp 0x18007b129
mov edx, 0x800000
call fcn.18007ace4
or r15d, eax
mov dword [rbp + 0x6f], r15d
mov rcx, r8
call fcn.18008117c
mov r8d, 0x80df8110
test al, al
je 0x18008000e
test r8d, r15d
jne 0x180080017
mov edx, 0xc00
mov ecx, edi
call fcn.18007ac74
test al, al
jne 0x18008000e
or r15d, 0x10
mov dword [rbp + 0x6f], r15d
test r8d, r15d
je 0x18008018a
mov r15d, 4
lea rcx, [rsp + 0x30]
mov edx, r15d
call fcn.18007acdc
and eax, 0xfffcffff
lea edx, [r15 + 1]
lea rcx, [rsp + 0x30]
mov dword [rbp + 0x67], eax
call fcn.18007acdc
mov ecx, dword [rbp + 0x6f]
mov edx, dword [rbp + 0x67]
or edx, eax
mov eax, ecx
and eax, 0x8000
and edx, 0x830000
shl eax, 4
or eax, ecx
and ecx, 0x100
and eax, 0xffff78ef
shl eax, 4
or eax, ecx
shl eax, 4
or edx, eax
xor edx, 0x87cf062
mov dword [rbp + 0x67], edx
bt edx, 0x1c
jae 0x180080121
mov rcx, qword [rsp + 0x68]
call fcn.180080e10
mov rcx, rbx
mov dword [rbp + 0x6f], eax
call fcn.180081018
mov r10d, dword [rbp + 0x6f]
mov ecx, eax
mov r9d, r10d
shl r9d, cl
test r10d, r10d
je 0x180080116
mov r8d, dword [rbp + 0x67]
mov ecx, r9d
mov edx, r8d
mov dword [rbp + 0x67], r15d
and edx, 0x60000000
mov dword [rsp + 0x60], edx
call fcn.18007aba8
lea rdx, [rbp + 0x67]
mov dword [rbp + 0x6f], eax
lea rcx, [rbp + 0x6f]
call fcn.18007ac58
sub eax, r15d
shl eax, 0x1d
mov dword [rbp + 0x67], eax
cmp eax, 0x40000000
ja 0x180080116
lea rdx, [rbp + 0x67]
lea rcx, [rsp + 0x60]
call fcn.18007ac58
and dword [rsp + 0x30], 0xffff1fff
and r8d, 0x9fffffff
mov ecx, r10d
or r8d, eax
call fcn.18007aba8
shl eax, 0xd
or dword [rsp + 0x30], eax
jmp 0x18008016a
mov r10d, 0x29
jmp 0x18007b129
mov edx, 0x19
lea rcx, [rsp + 0x30]
call fcn.18007acdc
mov ebx, eax
lea rcx, [rsp + 0x30]
mov edx, 0xd
and ebx, r15d
call fcn.18007acdc
mov r8d, dword [rbp + 0x67]
and eax, 0x18
add ebx, eax
mov ecx, r8d
shr ecx, 0x1d
and ecx, 3
add ebx, ecx
lea rcx, [0x180000000]
mov eax, dword [rcx + rbx*4 + 0xa3ef0]
add dword [rsp + 0x30], eax
mov edx, r8d
lea rcx, [rsp + 0x48]
call fcn.18007abb8
mov edx, dword [rsp + 0x30]
lea rcx, [rsp + 0x48]
call fcn.18007abc4
jmp 0x18008024f
mov edx, 0xd
lea rcx, [rsp + 0x30]
call fcn.18007acdc
mov ebx, eax
lea rcx, [rsp + 0x30]
mov edx, 0xc
and ebx, 0x300
call fcn.18007acdc
and eax, 0x8000
mov ecx, edi
or ebx, eax
call fcn.180081238
mov edx, dword [rsp + 0x30]
or ebx, eax
mov eax, r15d
and edx, 0xffff1fff
shr eax, 0xb
and eax, 0x400
mov dword [rsp + 0x30], edx
or ebx, eax
or r15d, ebx
test r15d, 0x8000807e
je 0x180080213
mov eax, r15d
shl edx, 0x18
and eax, 0xf
lea rcx, [0x180000000]
or edx, dword [rcx + rax*4 + 0xa3e30]
lea rcx, [rsp + 0x48]
movzx eax, r15w
shl eax, 8
xor edx, eax
call fcn.18007abb8
jmp 0x180080249
mov edx, 0xc5
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov edx, r15d
lea rcx, [rsp + 0x48]
xor edx, 0xf900
shr edx, 8
xor edx, r15d
call fcn.18007abc4
mov edx, dword [rsp + 0x30]
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov r15d, 4
mov rcx, qword [rsp + 0x68]
mov edx, 0x100000
call fcn.180081054
test al, al
jne 0x18008085f
mov ebx, dword [rbp + 0x77]
test r12b, 0x42
jne 0x180080776
test r13b, r12b
je 0x1800803ce
mov rax, qword [rsp + 0x40]
and r14d, 7
mov r8d, r14d
mov edx, esi
xor ecx, ecx
mov edi, dword [rax + 0xc]
call fcn.180081230
mov ebx, eax
cmp r14d, r15d
je 0x1800802f9
mov rcx, qword [rsp + 0x68]
call fcn.1800810e0
test al, al
jne 0x1800802f9
cmp r14d, 5
je 0x1800802b7
test edi, edi
jne 0x1800802b7
mov edx, ebx
jmp 0x180080327
mov edx, 0xe000
lea rcx, [rsp + 0x30]
call fcn.18007acec
mov edx, eax
mov esi, edi
shr edx, 0xd
mov ecx, edx
sar esi, cl
mov ecx, esi
call fcn.18007ac28
test al, al
je 0x1800802ee
mov ecx, edx
mov eax, esi
shl eax, cl
cmp edi, eax
jne 0x1800802ee
lea edx, [rbx + 0x40]
jmp 0x180080381
lea edx, [rbx + 0x80]
jmp 0x1800803bd
and ebx, 0xf8
or ebx, r15d
cmp r14d, 5
je 0x180080336
test edi, edi
jne 0x180080336
mov edx, ebx
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov r8d, r14d
mov edx, r15d
xor ecx, ecx
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
jmp 0x18008076e
mov edx, 0xe000
lea rcx, [rsp + 0x30]
call fcn.18007acec
mov edx, eax
mov esi, edi
shr edx, 0xd
mov ecx, edx
sar esi, cl
mov ecx, esi
call fcn.18007ac28
test al, al
je 0x18008039e
mov ecx, edx
mov eax, esi
shl eax, cl
cmp edi, eax
jne 0x18008039e
lea edx, [rbx + 0x40]
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov r8d, r14d
mov edx, r15d
xor ecx, ecx
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
movzx edx, sil
lea rcx, [rsp + 0x48]
call fcn.18007abc4
jmp 0x18008076e
lea edx, [rbx + 0x80]
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov r8d, r14d
mov edx, r15d
xor ecx, ecx
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov edx, edi
jmp 0x180080764
mov ecx, 0x30
test cl, r12b
jne 0x1800806b5
mov rbx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.180080c8c
mov rcx, qword [rbp + 0x57]
mov r14d, eax
mov ebx, dword [rbx + 0xc]
mov dword [rbp + 0x67], ebx
call fcn.180081078
test al, al
je 0x180080429
cmp r14d, 2
je 0x18007c7dd
mov r8d, 5
mov edx, esi
xor ecx, ecx
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
jmp 0x1800806ae
mov rax, qword [rbp + 0x57]
mov rcx, qword [rsp + 0x40]
sar ebx, 0x1f
mov dword [rbp + 0x77], ebx
mov rax, qword [rax + 0x30]
mov r12d, dword [rcx + 4]
mov rax, qword [rax + 8]
mov qword [rbp + 0x6f], rax
test r14d, r14d
jne 0x180080561
or r14, 0xffffffffffffffff
cmp rax, r14
jne 0x180080529
cmp r12d, ebx
je 0x180080604
test r12d, r12d
je 0x180080604
mov rdi, qword [rbp + 0x57]
lea rdx, [rsp + 0x58]
mov r8d, r15d
mov rcx, qword [rdi + 0x30]
call fcn.18007a814
mov r10d, eax
test eax, eax
jne 0x18007b129
lea r8d, [rax + 5]
mov edx, esi
xor ecx, ecx
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov rax, qword [rdi + 0x90]
mov r8, r15
xor edx, edx
mov ecx, dword [rax]
mov rax, qword [rsp + 0x58]
mov dword [rax + 0x10], ecx
mov rcx, qword [rdi + 0xa8]
sub rcx, qword [rdi + 0x98]
mov rax, qword [rsp + 0x58]
mov qword [rax + 0x18], rcx
mov rcx, qword [rsp + 0x58]
add rcx, 8
call fcn.1800811b0
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x48]
add rcx, 8
mov ebx, dword [rbp + 0x5f]
sub rdx, qword [rdi + 0xa8]
movzx r8d, bl
call fcn.1800811dc
mov rcx, qword [rsp + 0x40]
call fcn.180081104
mov rcx, qword [rsp + 0x58]
xor edx, edx
mov qword [rcx + 0x20], rax
lea rcx, [rsp + 0x48]
call fcn.18007abb8
jmp 0x1800805e7
call fcn.1800811d0
mov rcx, qword [rsp + 0x50]
cmp ecx, 0x17e
jne 0x180080545
cmp r12d, ebx
je 0x180080548
test r12d, r12d
je 0x180080548
xor r13b, r13b
cmp eax, 5
jae 0x180080609
test r13b, r13b
jne 0x180080609
mov rcx, qword [rsp + 0x40]
jmp 0x180080578
cmp r14d, 2
jne 0x180080604
or r14, 0xffffffffffffffff
cmp rax, r14
je 0x180080470
mov r14, qword [rbp + 0x57]
mov rbx, qword [r14 + 0x90]
cmp dword [rbx], 0
jne 0x180080470
call fcn.180081104
mov r14, qword [r14 + 0x98]
sub r14, qword [rbx + 0x10]
mov ebx, dword [rbp + 0x5f]
movzx ecx, bl
sub r14, rcx
sub r14, qword [rbp + 0x6f]
sub r14, qword [rsp + 0x48]
add r14, rax
lea rcx, [r14 - 5]
call fcn.18007ac14
test al, al
je 0x1800805ef
mov r8d, 5
mov edx, esi
xor ecx, ecx
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
lea edx, [r14 - 5]
lea rcx, [rsp + 0x48]
call fcn.18007abb8
mov r8b, bl
jmp 0x180080c2e
mov rcx, qword [rsp + 0x40]
call fcn.1800810d0
test al, al
jne 0x18007c7dd
mov ebx, dword [rbp + 0x77]
mov rcx, qword [rsp + 0x50]
cmp r12d, ebx
je 0x180080677
test r12d, r12d
je 0x18008061e
mov r10d, 0x2e
jmp 0x18007b129
mov r9, qword [rbp - 0x79]
cmp byte [r9], 0x67
je 0x180080677
cmp ecx, 0x17e
jne 0x180080664
movzx eax, byte [r9]
test al, 0x40
je 0x180080677
and eax, 0xf7
mov byte [r9], al
cmp eax, 0x40
jne 0x180080677
mov edx, 0x40000000
mov ecx, edi
call fcn.18007ac74
test al, al
jne 0x180080677
mov rdx, r9
lea rcx, [rsp + 0x48]
call fcn.180081194
jmp 0x180080677
mov r8d, 0x67
lea rcx, [rsp + 0x48]
mov rdx, r9
call fcn.18007abf0
mov r8d, r15d
mov edx, esi
xor ecx, ecx
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov r8d, 5
mov edx, r15d
xor ecx, ecx
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov ebx, dword [rbp + 0x67]
mov edx, ebx
jmp 0x180080764
mov r8d, 5
mov edx, esi
xor ecx, ecx
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov rsi, qword [rbp + 0x57]
mov rcx, rsi
call fcn.180081078
test al, al
jne 0x1800809d7
mov rax, qword [rsp + 0x40]
mov r14d, dword [rax + 0xc]
test r12b, 0x10
je 0x180080761
mov edx, dword [rax + 4]
mov rcx, qword [rsi + 0x30]
call fcn.1800810e8
mov r12, rax
test rax, rax
je 0x180080a24
mov rbx, qword [rbp + 0x57]
mov edx, 0xfffffffc
mov esi, dword [rbp + 0x5f]
movzx ecx, sil
sub edx, ecx
mov rcx, rax
add r14d, edx
lea r15, [rbx + 0x90]
mov rdx, qword [r15]
call fcn.18008108c
test al, al
je 0x180080757
mov edx, dword [r12 + 0x18]
lea rcx, [rsp + 0x48]
add edx, dword [rbx + 0x98]
sub edx, dword [rsp + 0x48]
add edx, r14d
call fcn.18007abb8
jmp 0x180080c2b
mov rbx, qword [rsp + 0x48]
jmp 0x180080b01
mov edx, r14d
lea rcx, [rsp + 0x48]
call fcn.18007abb8
mov esi, dword [rbp + 0x5f]
jmp 0x180080c2b
test r12b, 0x40
jne 0x180080790
cmp ebx, r15d
jne 0x18008086c
mov r10d, 0x2c
jmp 0x18007b129
mov rax, qword [rsp + 0x40]
mov ecx, r12d
mov edx, 3
movsx edi, word [rax + 0xc]
and ecx, edx
je 0x180080831
and r14d, 7
and ebx, 7
cmp ecx, edx
jne 0x1800807d8
mov rcx, rax
call fcn.1800811ec
test eax, eax
jne 0x18007c7dd
lea ecx, [rbx + r14*8]
lea rax, [0x180000000]
mov al, byte [rcx + rax + 0xa3f80]
jmp 0x1800807ef
test r12b, 2
lea rcx, [0x180000000]
cmovne r14d, ebx
mov al, byte [r14 + rcx + 0xa3f70]
movzx eax, al
cmp eax, 0xff
je 0x18007c7dd
lea edx, [rax + rsi*8]
test edi, edi
jne 0x18008080d
cmp edx, 6
jne 0x180080327
mov ecx, edi
call fcn.18007ac28
lea rcx, [rsp + 0x48]
test al, al
je 0x18008082c
add edx, 0x40
call fcn.18007abc4
mov edx, edi
jmp 0x180080327
sub edx, 0xffffff80
jmp 0x180080849
mov ecx, 0x30
test cl, r12b
jne 0x18007c7dd
or esi, 6
lea rcx, [rsp + 0x48]
mov edx, esi
call fcn.18007abc4
mov edx, edi
lea rcx, [rsp + 0x48]
call fcn.18007abac
jmp 0x18008076e
test r12b, 2
je 0x18007b123
mov ebx, dword [rbp + 0x77]
and ebx, 7
mov dword [rbp + 0x77], ebx
test r13b, r12b
je 0x180080931
mov r9, qword [rsp + 0x40]
mov r8d, r15d
mov edx, esi
xor ecx, ecx
and r14d, 7
mov edi, dword [r9 + 0xc]
call fcn.180081230
mov rcx, r9
mov esi, eax
call fcn.1800811ec
mov ecx, eax
mov r8d, r14d
mov edx, ebx
call fcn.180081230
mov r15d, eax
test edi, edi
jne 0x1800808cb
cmp r14d, 5
je 0x1800808cb
mov edx, esi
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov edx, r15d
jmp 0x180080327
mov edx, 0xe000
lea rcx, [rsp + 0x30]
call fcn.18007acec
mov edx, eax
mov ebx, edi
shr edx, 0xd
mov ecx, edx
sar ebx, cl
mov ecx, ebx
call fcn.18007ac28
test al, al
je 0x180080919
mov ecx, edx
mov eax, ebx
shl eax, cl
cmp edi, eax
jne 0x180080919
lea edx, [rsi + 0x40]
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov edx, r15d
lea rcx, [rsp + 0x48]
call fcn.18007abc4
jmp 0x1800802b3
lea edx, [rsi + 0x80]
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov edx, r15d
jmp 0x1800803bd
mov ecx, 0x30
test cl, r12b
jne 0x180080984
mov r8d, r15d
mov edx, esi
xor ecx, ecx
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov rbx, qword [rsp + 0x40]
mov rcx, rbx
call fcn.1800811ec
mov edx, dword [rbp + 0x77]
mov ecx, eax
mov r8d, 5
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov edx, dword [rbx + 0xc]
jmp 0x180080764
mov rcx, qword [rbp + 0x57]
call fcn.180081078
test al, al
je 0x18007c7dd
mov r8d, r15d
mov edx, esi
xor ecx, ecx
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
mov rsi, qword [rsp + 0x40]
mov rcx, rsi
call fcn.1800811ec
mov ecx, eax
mov r8d, 5
mov edx, ebx
call fcn.180081230
mov edx, eax
lea rcx, [rsp + 0x48]
call fcn.18007abc4
jmp 0x1800809dc
mov rsi, qword [rsp + 0x40]
mov rbx, qword [rbp + 0x57]
mov r8d, r13d
mov rcx, qword [rbx + 0x30]
lea rdx, [rcx + 0x40]
add rcx, 0xe0
call fcn.180081204
test eax, eax
jne 0x180080c83
movsxd rdi, dword [rsi + 0xc]
test r12b, 0x10
je 0x180080b7e
mov edx, dword [rsi + 4]
mov rsi, rbx
mov rcx, qword [rbx + 0x30]
call fcn.1800810e8
mov r12, rax
test rax, rax
jne 0x180080a2f
mov r10d, 0xc
jmp 0x18007b129
mov rcx, qword [rsi + 0x30]
lea rdx, [rsp + 0x58]
mov r8d, 3
call fcn.18007a814
mov r10d, eax
test eax, eax
jne 0x18007b129
lea rax, [rsi + 0x90]
mov r8, r15
mov qword [rbp + 0x77], rax
mov dl, r13b
mov rax, qword [rax]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x58]
mov dword [rax + 0x10], ecx
mov rcx, qword [rsi + 0xa8]
sub rcx, qword [rsi + 0x98]
mov rax, qword [rsp + 0x58]
mov qword [rax + 0x18], rcx
mov rcx, qword [rsp + 0x58]
add rcx, 8
call fcn.1800811b0
mov rax, qword [rbp + 0x57]
mov rcx, qword [rsp + 0x58]
mov rbx, qword [rsp + 0x48]
add rcx, 8
mov esi, dword [rbp + 0x5f]
mov rdx, rbx
sub rdx, qword [rax + 0xa8]
movzx r8d, sil
call fcn.1800811dc
mov rax, qword [rsp + 0x58]
mov rcx, r12
mov qword [rax + 0x20], rdi
call fcn.180081080
test al, al
je 0x180080af0
mov rcx, qword [rsp + 0x58]
mov rax, qword [r12 + 0x18]
add qword [rcx + 0x20], rax
mov rax, qword [r12 + 0x20]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x58]
mov dword [rax + 0x14], ecx
jmp 0x180080c1f
mov r15, qword [rbp + 0x77]
mov r14d, 0xfffffffc
movzx eax, sil
sub r14d, eax
mov r11d, 4
mov qword [rsp + 0x60], r11
mov rax, qword [rbp + 0x57]
lea rcx, [rbp - 0x71]
mov r8, r11
xor edx, edx
mov rdi, qword [rax + 0x98]
call fcn.1800811b0
mov rax, qword [r15]
lea rcx, [rbp - 0x71]
mov qword [rsp + 0x28], rcx
sub rbx, rdi
mov r9, rbx
mov rdx, r12
mov r8d, dword [rax]
movsxd rax, r14d
mov qword [rsp + 0x20], rax
mov rax, qword [rbp + 0x57]
mov rcx, qword [rax + 0x30]
call fcn.18007a4c4
test rax, rax
je 0x180080c83
mov rcx, qword [rsp + 0x58]
test rcx, rcx
je 0x180080b6a
mov ecx, dword [rcx]
mov dword [rax + 0xc], ecx
mov rdx, qword [rsp + 0x60]
lea rcx, [rsp + 0x48]
call fcn.180080f6c
jmp 0x180080c2b
mov rcx, qword [rbx + 0x30]
lea rdx, [rsp + 0x58]
mov r8d, 3
call fcn.18007a814
mov r10d, eax
test eax, eax
jne 0x18007b129
mov rax, qword [rbx + 0x90]
mov r8, r15
mov dl, r13b
mov ecx, dword [rax]
mov rax, qword [rsp + 0x58]
mov dword [rax + 0x10], ecx
mov rax, qword [rbx + 0x90]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x58]
mov dword [rax + 0x14], ecx
mov rcx, qword [rsp + 0x58]
add rcx, 8
call fcn.1800811b0
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x48]
add rcx, 8
mov esi, dword [rbp + 0x5f]
sub rdx, qword [rbx + 0xa8]
movzx r8d, sil
call fcn.1800811dc
mov rdx, qword [rbx + 0xa8]
sub rdx, qword [rbx + 0x98]
mov rax, qword [rsp + 0x58]
mov qword [rax + 0x18], rdx
mov r8, qword [rsp + 0x58]
movzx ecx, byte [r8 + 0xa]
add rcx, rdx
add rcx, rdi
mov qword [r8 + 0x20], rcx
xor edx, edx
lea rcx, [rsp + 0x48]
call fcn.18007abb8
mov r8b, sil
mov rdx, qword [rsp + 0x38]
lea rcx, [rsp + 0x48]
call fcn.180080e5c
mov rbx, qword [rsp + 0x48]
mov rdx, qword [rbp + 0x57]
mov rax, rbx
and dword [rdx + 0x58], 0
and dword [rdx + 0x5c], 0
and dword [rdx + 0x54], 0
and qword [rdx + 0x60], 0
sub rax, qword [rdx + 0x98]
mov rcx, qword [rdx + 0x90]
mov qword [rdx + 0xa8], rbx
cmp qword [rcx + 0x50], rax
cmovae rax, qword [rcx + 0x50]
mov qword [rcx + 0x50], rax
xor eax, eax
jmp 0x18007b148
mov r10d, r13d
jmp 0x18007b129