Function at 0x180108240
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 - 0x28]
sub rsp, 0x128
mov r12, r9
mov r15, r8
mov r9, rcx
mov qword [rsp + 0x70], 0
xor r14d, r14d
xor al, al
mov dword [rbp + 0x80], eax
mov rbx, qword [rcx + 0xa8]
xor eax, eax
cmp edx, 0x67f
cmovb eax, edx
mov edi, eax
mov qword [rsp + 0x60], rdi
lea rcx, [0x180000000]
mov eax, dword [rcx + rax*8 + 0x29ead0]
shr rax, 0xe
and eax, 0x3ff
lea rax, [rax*8 + 0x29dcf0]
add rax, rcx
mov qword [rsp + 0x78], rax
mov edx, dword [r8]
and edx, 7
mov ecx, dword [r12]
and ecx, 7
mov r8, qword [rbp + 0x90]
mov eax, dword [r8]
and eax, 7
lea eax, [rcx + rax*8]
lea r13d, [rdx + rax*8]
mov r11d, dword [r9 + 0x24]
mov edx, dword [r9 + 0x54]
mov rax, qword [r9 + 0xa0]
mov r10, rax
sub r10, rbx
sub rax, rbx
xor ecx, ecx
cmp rax, 0x10
setb cl
xor eax, eax
test edi, edi
sete al
or ecx, eax
or edx, ecx
or r11d, edx
mov dword [rbp + 0x88], r11d
test r11d, 0x3e001
je 0x18010851b
mov rcx, qword [r9 + 0x30]
test rcx, rcx
jne 0x18010833a
xor r8d, r8d
lea edx, [rcx + 5]
mov rcx, r9
call fcn.180107df0
jmp 0x180108668
test edi, edi
je case.default.0x1801085a1
cmp r10, 0x10
jae 0x18010837d
mov rdx, qword [r9 + 0x90]
add rdx, 0x48
mov r8d, reloc.WS2_32.dll_recv
call fcn.180106450
test eax, eax
je 0x180108372
xor r8d, r8d
mov edx, eax
mov rcx, qword [rbp + 0x70]
call fcn.180107df0
jmp 0x18010837f
mov rax, qword [rbp + 0x70]
mov rbx, qword [rax + 0xa8]
xor eax, eax
mov rdi, qword [rbp + 0x90]
test eax, eax
jne 0x180108636
mov r9, qword [rbp + 0x70]
lea rsi, [r9 + 0x58]
test byte [r9 + 0x10], 1
je 0x180108423
movups xmm0, xmmword [r15]
movaps xmmword [rbp - 0x40], xmm0
movups xmm1, xmmword [r12]
movaps xmmword [rbp - 0x30], xmm1
movups xmm0, xmmword [rdi]
movaps xmmword [rbp - 0x20], xmm0
mov rax, qword [rbp + 0x98]
movups xmm1, xmmword [rax]
movaps xmmword [rbp - 0x10], xmm1
movups xmm0, xmmword [rax + 0x10]
movaps xmmword [rbp], xmm0
movups xmm1, xmmword [rax + 0x20]
movaps xmmword [rbp + 0x10], xmm1
mov r10, qword [r9 + 0x88]
mov rax, qword [rsp + 0x60]
mov dword [rbp - 0x58], eax
mov ecx, dword [rbp + 0x88]
mov dword [rbp - 0x54], ecx
mov rax, qword [rsi]
mov qword [rbp - 0x50], rax
mov dword [rsp + 0x20], 0
mov r9d, 6
lea r8, [rbp - 0x40]
lea rdx, [rbp - 0x58]
mov rax, qword [rbp + 0x70]
movzx ecx, byte [rax + 0x48]
call r10
test eax, eax
jne 0x180108636
mov r9, qword [rbp + 0x70]
mov rax, qword [rsp + 0x60]
lea r10, [0x180000000]
mov eax, dword [r10 + rax*8 + 0x29ead0]
shr rax, 0xe
and eax, 0x3ff
mov edx, dword [r10 + rax*8 + 0x29dcf0]
mov r11d, dword [rbp + 0x88]
mov eax, r11d
shr eax, 0xd
test al, 1
je 0x1801084cd
mov ecx, r11d
and ecx, 0x30000
mov eax, edx
shr eax, 0x10
test al, 1
jne 0x180108477
test ecx, ecx
jne 0x18010847b
lea eax, [rcx + 0x21]
jmp 0x180108636
test ecx, ecx
je 0x1801084c7
mov ecx, r11d
shr ecx, 0x10
test cl, 1
je 0x180108499
mov eax, edx
shr eax, 0x11
test al, 1
jne 0x180108499
mov eax, 0x22
jmp 0x180108636
mov eax, r11d
shr eax, 0x11
test al, 1
je 0x1801084b6
mov eax, edx
shr eax, 0x12
test al, 1
jne 0x1801084b6
mov eax, 0x23
jmp 0x180108636
not cl
and cl, 1
or cl, 0xf2
mov byte [rbx], cl
inc rbx
lea rsi, [r9 + 0x58]
mov byte [rbx], 0xf0
inc rbx
test r11d, 0xc000
je 0x180108503
shr edx, 0xe
test dl, 1
je 0x180108511
mov eax, dword [rsi]
test eax, eax
je 0x1801084f2
shr eax, 8
test al, 0xf
jne 0x180108511
cmp dword [r9 + 0x5c], 1
jne 0x180108511
mov eax, r11d
shr eax, 0xf
not al
and al, 1
or al, 0xf2
mov byte [rbx], al
inc rbx
mov r8, qword [rbp + 0x90]
mov rdi, qword [rsp + 0x60]
jmp 0x180108522
mov eax, 0x24
jmp 0x180108636
lea r10, [0x180000000]
movzx eax, byte [r10 + rdi*8 + 0x29ead6]
mov ecx, dword [r10 + rax*4 + 0x2a4010]
mov dword [rbp + 0x78], ecx
mov esi, ecx
shr esi, 0x12
and esi, 7
movzx edi, byte [r10 + rdi*8 + 0x29ead5]
or edi, ecx
mov dword [rbp + 0x78], edi
mov rax, qword [rsp + 0x60]
movzx eax, byte [r10 + rax*8 + 0x29ead4]
cmp eax, 0xa0
ja case.default.0x1801085a1
mov edx, edi
mov r10d, edi
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x10e38c]
lea rax, [0x180000000]
add rcx, rax
mov dword [rsp + 0x58], 0x8000000
mov dword [rbp - 0x70], 0x1000
mov qword [rsp + 0x50], 1
lea rax, [0x180000000]
jmp rcx
shr r10d, 0xd
and r10d, 7
jmp 0x18010c04d
mov eax, dword [r15]
and eax, 7
cmp al, 3
jne case.default.0x1801085a1
shr r10d, 0xd
and r10d, 7
movzx r14d, byte [r15 + 8]
mov al, 1
mov dword [rbp + 0x80], eax
jmp 0x18010c04d
mov edx, dword [r15]
mov eax, edx
and al, 7
cmp al, 1
jne case.default.0x1801085a1
mov ecx, dword [r9 + 0x28]
mov byte [rbx], 0x67
mov eax, edx
shr eax, 3
and eax, 0x1f
lea r8, [0x180000000]
test byte [rax + r8 + 0x29ab50], cl
mov eax, 0
setne al
add rbx, rax
mov edi, dword [rbp + 0x78]
jmp case.0x1801085a1.1
test r13d, r13d
je case.0x1801085a1.1
cmp r13d, 1
jne case.default.0x1801085a1
cmp dword [r15 + 4], 0
je case.0x1801085a1.1
mov eax, 0x1a
mov rdi, qword [rbp + 0x90]
mov r13, qword [rbp + 0x98]
mov qword [rsp + 0x38], r13
mov qword [rsp + 0x30], rdi
mov qword [rsp + 0x28], r12
mov qword [rsp + 0x20], r15
mov r9d, dword [rbp + 0x88]
mov r8d, dword [rsp + 0x60]
mov edx, eax
mov rcx, qword [rbp + 0x70]
call fcn.180113f30
add rsp, 0x128
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
test r13d, r13d
je case.0x1801085a1.1
cmp r13d, 9
jne case.default.0x1801085a1
cmp dword [r15 + 4], 2
jne case.default.0x1801085a1
cmp dword [r12 + 4], 0
jmp 0x180108624
test r13d, r13d
je case.0x1801085a1.1
mov r8, r15
cmp r13d, 2
jne case.default.0x1801085a1
mov edx, dword [r15]
mov eax, edx
and al, 7
cmp al, r13b
jne case.default.0x1801085a1
mov ecx, dword [r15 + 4]
test ecx, ecx
jne case.default.0x1801085a1
mov eax, edx
shr eax, 3
test al, 0x1f
mov eax, ecx
cmove eax, ecx
or eax, dword [r15 + 0xc]
jne case.default.0x1801085a1
jmp 0x18010b07d
cmp r13d, 3
jne 0x1801086fa
movzx r14d, byte [r15 + 8]
mov r10b, 1
jmp 0x1801097aa
cmp r13d, 0x19
jne case.default.0x1801085a1
cmp dword [r15 + 4], 0
jne case.default.0x1801085a1
movzx r14d, byte [r12 + 8]
mov r10b, 1
jmp 0x1801097aa
mov ecx, dword [r15]
mov eax, ecx
and al, 7
cmp al, 1
jne case.0x1801085a1.11
shr rcx, 0x18
and ecx, 0xf
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0x29b1f0]
jmp 0x180108755
movzx eax, byte [r15 + 3]
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b1f0]
mov dword [rbp + 0x78], edi
mov r10d, dword [r15 + 4]
cmp r13d, 1
je 0x18010c04d
mov r8, r15
mov qword [rsp + 0x50], r15
cmp r13d, 2
je 0x1801087d5
jmp case.default.0x1801085a1
cmp r13d, 0x4a
jne case.0x1801085a1.14
mov eax, dword [r12]
and eax, 0xff000fff
cmp eax, 0x4000031
sete cl
cmp dword [r12 + 4], 2
sete al
test al, cl
je case.default.0x1801085a1
mov eax, dword [r8]
and eax, 0xff000fff
cmp eax, 0x4000031
sete cl
cmp dword [r8 + 4], 0
sete al
test al, cl
je case.default.0x1801085a1
jmp 0x1801087cd
cmp r13d, 2
jne case.default.0x1801085a1
mov qword [rsp + 0x50], r15
mov r8, r15
mov ecx, dword [r8]
mov eax, ecx
shr rax, 3
and eax, 0x3ff
lea r8, [0x180000000]
movzx r13d, byte [rax + r8 + 0x29ab50]
shr rcx, 0x12
and ecx, 7
movzx eax, byte [rcx + r8 + 0x29ab08]
mov byte [rbx], al
xor ecx, ecx
test al, al
setne cl
lea r8, [rcx + rbx]
mov rax, qword [rbp + 0x70]
mov eax, dword [rax + 0x28]
mov byte [r8], 0x67
test r13d, eax
mov eax, 0
setne al
add rax, r8
mov ecx, dword [rbp + 0x78]
shr ecx, 0x15
and ecx, 7
lea rbx, [0x180000000]
movzx ecx, byte [rcx + rbx + 0x29ab00]
mov byte [rax], cl
mov edx, 0
setne dl
add rdx, rax
mov rax, qword [rsp + 0x50]
mov edi, dword [rax + 4]
mov eax, dword [rax + 8]
mov dword [rsp + 0x68], eax
mov r9d, edi
shr r9d, 1
and r9d, 4
and eax, 8
or r9d, eax
shr r9d, 1
mov eax, esi
and eax, 8
or r9d, eax
shr r9d, 1
and r9d, r13d
mov eax, dword [rbp + 0x78]
or eax, r11d
shr eax, 0x18
or r9d, eax
cmp r9d, 0x80
jbe 0x18010c136
mov eax, 0x25
jmp 0x18010862f
test r13d, r13d
je case.0x1801085a1.1
xor esi, esi
cmp r13d, 1
jne 0x1801088d3
movzx edi, byte [r15 + 3]
and edi, 0xf
mov edi, dword [rax + rdi*4 + 0x29b1f0]
or edi, 0x11f
mov dword [rbp + 0x78], edi
mov r10d, dword [r15 + 4]
jmp 0x18010c04d
cmp r13d, 2
jne 0x1801088fc
movzx eax, byte [r15 + 3]
and eax, 0xf
lea rcx, [0x180000000]
mov eax, dword [rcx + rax*4 + 0x29b1f0]
or eax, 0x11f
mov dword [rbp + 0x78], eax
jmp 0x1801087cd
mov esi, dword [r12 + 4]
movzx edi, byte [r12 + 3]
and edi, 0xf
mov edi, dword [rax + rdi*4 + 0x29b1f0]
or edi, 0x11f
mov dword [rbp + 0x78], edi
cmp r13d, 9
jne 0x180108929
mov r10d, dword [r15 + 4]
jmp 0x18010c04d
cmp r13d, 0xa
jmp 0x1801087c7
cmp r13d, 2
jne case.default.0x1801085a1
mov r10d, dword [r15 + 4]
mov ecx, dword [r15]
mov eax, ecx
shr rax, 3
and eax, 0x3ff
lea r14, [0x180000000]
movzx r8d, byte [rax + r14 + 0x29ab50]
shr ecx, 3
test cl, 0x1f
mov eax, 0
cmove eax, r10d
or eax, dword [r15 + 0xc]
jne case.default.0x1801085a1
test r13b, r8b
jne case.default.0x1801085a1
shr edi, 0x15
and edi, 7
movzx eax, byte [rdi + r14 + 0x29ab00]
mov byte [rbx], al
mov eax, 0
setne al
add rax, rbx
mov edx, dword [rbp + 0x78]
or edx, r11d
shr edx, 0x15
or edx, r10d
shr edx, 2
mov ecx, esi
and ecx, 8
or edx, ecx
shr edx, 1
cmp edx, 0x80
ja 0x180108897
and edx, 0x7f
movzx ecx, dl
or cl, 0x40
mov byte [rax], cl
xor ecx, ecx
test edx, edx
setne cl
add rcx, rax
mov edx, dword [r15]
shr rdx, 0x12
and edx, 7
movzx edx, byte [rdx + r14 + 0x29ab08]
mov byte [rcx], dl
xor eax, eax
test dl, dl
setne al
add rax, rcx
mov ecx, dword [r9 + 0x28]
mov byte [rax], 0x67
test r8d, ecx
mov ecx, 0
setne cl
add rcx, rax
mov r9d, dword [rbp + 0x78]
mov eax, r9d
shr rax, 8
and eax, 0x1f
lea r8, [r14 + 0x29aac0]
lea r8, [r8 + rax*4]
movzx edx, byte [r8]
movzx eax, byte [r8 + 1]
mov byte [rcx], al
xor eax, eax
test dl, dl
setne al
add rax, rcx
movzx edx, byte [r8]
movzx ecx, byte [r8 + 2]
mov byte [rax], cl
xor ecx, ecx
cmp dl, 1
seta cl
mov byte [rcx + rax], r9b
and sil, 7
shl sil, 3
and r10b, 7
sub r10b, 0x40
add sil, r10b
mov byte [rcx + rax + 1], sil
lea rbx, [rax + 2]
add rbx, rcx
mov r10d, dword [rbp + 0x80]
jmp 0x18010e2e6
cmp r13d, 0x49
jne 0x180108aca
mov eax, dword [r12]
and eax, 0xff000fff
cmp eax, 0x4000031
sete cl
cmp dword [r12 + 4], 2
sete al
test al, cl
je case.default.0x1801085a1
mov eax, dword [r8]
and eax, 0xff000fff
cmp eax, 0x4000031
sete cl
cmp dword [r8 + 4], 0
sete al
test al, cl
je case.default.0x1801085a1
mov r10d, dword [r15 + 4]
jmp 0x18010c04d
cmp r13d, 1
jne case.default.0x1801085a1
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x4000031
jne case.default.0x1801085a1
mov r10d, dword [r15 + 4]
jmp 0x18010c04d
cmp r13d, 1
jne case.default.0x1801085a1
mov r10d, dword [r15 + 4]
jmp 0x18010c04d
movzx eax, byte [r15 + 3]
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b1f0]
mov dword [rbp + 0x78], edi
cmp r13d, 9
jne 0x180108b2b
mov esi, dword [r15 + 4]
jmp 0x18010c048
cmp r13d, 0x11
jne case.default.0x1801085a1
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
cmp r13d, 9
jne 0x180108b83
mov esi, dword [r15 + 4]
mov r10d, dword [r12 + 4]
movzx ecx, byte [r15 + 3]
cmp cl, 2
jne 0x180108b6d
mov byte [rbx], 0x66
inc rbx
mov edi, dword [rbp + 0x78]
jmp 0x18010c04d
xor eax, eax
cmp cl, 8
cmove eax, dword [rsp + 0x58]
or eax, edi
mov edi, eax
mov dword [rbp + 0x78], eax
jmp 0x18010c04d
cmp r13d, 0x11
jne case.default.0x1801085a1
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
movzx ecx, byte [r15 + 3]
cmp cl, 2
jne 0x180108bae
mov byte [rbx], 0x66
inc rbx
jmp 0x1801087d5
xor eax, eax
cmp cl, 8
cmove eax, dword [rsp + 0x58]
or eax, edi
mov dword [rbp + 0x78], eax
jmp 0x1801087d5
movzx eax, byte [r15 + 3]
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b1f0]
mov dword [rbp + 0x78], edi
cmp r13d, 9
jne 0x180108bef
mov r10d, dword [r15 + 4]
mov esi, dword [r12 + 4]
jmp 0x18010c04d
cmp r13d, 0xa
jne case.default.0x1801085a1
mov esi, dword [r12 + 4]
jmp 0x1801087cd
cmp r13d, 9
jne 0x180108cbb
movzx ecx, byte [r15 + 3]
mov eax, ecx
and eax, 0xf
lea r8, [0x180000000]
or edi, dword [r8 + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
cmp cl, byte [r12 + 3]
jne 0x18010b3bd
mov r10d, dword [r15 + 4]
mov esi, dword [r12 + 4]
cmp cl, 1
jne 0x180108c9a
mov eax, dword [r15]
and eax, 0xff000fff
mov edx, 0x80000000
mov ecx, 0x40000000
cmp eax, 0x1000021
je 0x180108c69
xor eax, eax
cmp r10d, 4
cmovae eax, ecx
or r11d, eax
jmp 0x180108c70
or r11d, edx
add r10d, 4
mov eax, dword [r12]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x180108c8d
xor eax, eax
cmp esi, 4
cmovae eax, ecx
or r11d, eax
jmp 0x180108c93
or r11d, edx
add esi, 4
mov dword [rbp + 0x88], r11d
mov eax, r11d
shr eax, 9
test al, 1
je 0x18010c04d
add edi, 2
mov dword [rbp + 0x78], edi
mov eax, esi
mov esi, r10d
mov r10d, eax
jmp 0x18010c04d
cmp r13d, 0x11
jne 0x180108d37
movzx ecx, byte [r15 + 3]
mov eax, ecx
and eax, 0xf
add edi, 2
lea r8, [0x180000000]
or edi, dword [r8 + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
cmp cl, 1
jne 0x1801087d5
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x180108d20
xor eax, eax
cmp esi, 4
mov edx, 0x40000000
cmovae eax, edx
or r11d, eax
mov dword [rbp + 0x88], r11d
jmp 0x1801087d5
mov ecx, 0x80000000
or r11d, ecx
mov dword [rbp + 0x88], r11d
add esi, 4
jmp 0x1801087d5
cmp r13d, 0xa
jne 0x180108d76
movzx ecx, byte [r12 + 3]
mov eax, ecx
and eax, 0xf
lea r8, [0x180000000]
or edi, dword [r8 + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
mov esi, dword [r12 + 4]
mov r8, r15
mov qword [rsp + 0x50], r15
cmp cl, 1
jne 0x1801087d5
mov eax, dword [r12]
jmp 0x180108cf8
mov edi, 0x80
mov dword [rbp + 0x78], edi
cmp r13d, 0x19
jne 0x180108f6b
movzx r13d, byte [r15 + 3]
mov dword [rsp + 0x68], r13d
mov r10d, dword [r15 + 4]
mov dword [rbp + 0x80], r10d
mov r14d, dword [r12 + 0xc]
shl r14, 0x20
mov eax, dword [r12 + 8]
or r14, rax
lea eax, [rdi - 0x7c]
mov r8d, 1
cmp r13d, r8d
jne 0x180108e08
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x180108dec
xor eax, eax
cmp r10d, 4
mov edx, 0x40000000
cmovae eax, edx
or r11d, eax
mov dword [rbp + 0x88], r11d
movzx r9d, r8b
jmp 0x180108ed9
mov ecx, 0x80000000
or r11d, ecx
add r10d, 4
mov dword [rbp + 0x88], r11d
movzx r9d, r8b
jmp 0x180108ed9
cmp r13b, 2
jne 0x180108e18
mov edi, 0x200080
jmp 0x180108e9a
cmp r13b, al
jne 0x180108e22
movsxd r14, r14d
jmp 0x180108e9a
cmp r13b, 8
jne 0x180108e9a
cmp dword [rsp + 0x60], 0x15
jne 0x180108e3f
mov eax, 0xffffffff
cmp r14, rax
ja 0x180108e3f
movzx edx, r8b
jmp 0x180108e41
xor dl, dl
mov rcx, r14
call fcn.180108160
test al, al
jne 0x180108e5b
test dl, dl
jne 0x180108e6e
mov eax, 0x32
jmp 0x18010862f
test dl, dl
je 0x180108e7c
mov edx, r8d
mov rcx, r9
call fcn.18010e850
test al, al
je 0x180108e7c
mov eax, 4
mov r13d, eax
mov dword [rsp + 0x68], eax
jmp 0x180108e81
mov eax, 4
mov ecx, 0x8000080
cmp r13d, 8
cmove edi, ecx
mov r10d, dword [rbp + 0x80]
mov r8d, 1
mov r9d, r13d
cmp r13d, 4
cmova r9d, eax
mov dword [rbp + 0x80], r9d
lea rax, [r14 + 0x80]
mov r11d, dword [rbp + 0x88]
cmp rax, 0xff
ja 0x180108ee0
mov edx, 0x20
mov ecx, r11d
call fcn.180108190
movzx r9d, r9b
test al, al
cmove r9d, r8d
mov dword [rbp + 0x80], r9d
test r10d, r10d
jne 0x180108f42
cmp r13d, 1
je 0x180108ef1
cmp r9b, 1
je 0x180108f42
mov eax, r11d
shr eax, 5
test al, 1
jne 0x180108f42
xor ecx, ecx
cmp r13d, 1
setne cl
add ecx, 4
and edi, 0x8200000
or ecx, edi
lea eax, [rsi*8]
or ecx, eax
mov edi, ecx
mov dword [rbp + 0x78], ecx
mov ecx, 4
mov dword [rbp + 0x80], ecx
lea rdx, [rbp + 0x80]
lea rcx, [rsp + 0x68]
call fcn.180108180
movzx r10d, al
jmp 0x1801097aa
cmp r13d, 1
je 0x180108f5f
cmp r9b, 1
mov eax, 3
cmovne eax, r8d
add edi, eax
mov dword [rbp + 0x78], edi
jmp 0x18010c04d
xor eax, eax
add edi, eax
mov dword [rbp + 0x78], edi
jmp 0x18010c04d
cmp r13d, 0x1a
jne case.default.0x1801085a1
movzx r8d, byte [r15 + 3]
test r8d, r8d
je 0x18010b2f5
mov r14d, dword [r12 + 0xc]
shl r14, 0x20
mov eax, dword [r12 + 8]
or r14, rax
cmp r8d, 4
jbe 0x180108fa6
mov r9b, 4
mov dword [rbp + 0x80], r9d
jmp 0x180108fb6
movzx r9d, r8b
mov dword [rbp + 0x80], r9d
jne 0x180108fb6
movsxd r14, r14d
lea rax, [r14 + 0x80]
cmp rax, 0xff
ja 0x180108fea
mov edx, 0x20
mov ecx, r11d
call fcn.180108190
movzx r9d, r9b
test al, al
mov edx, 1
cmove r9d, edx
mov dword [rbp + 0x80], r9d
jmp 0x180108fef
mov edx, 1
cmp r8d, 1
je 0x180109003
mov eax, 3
cmp r9b, 1
cmovne eax, edx
jmp 0x180109005
xor eax, eax
mov ecx, r8d
and ecx, 0xf
sub eax, 0xffffff80
lea r8, [0x180000000]
or eax, dword [r8 + rcx*4 + 0x29b1f0]
mov dword [rbp + 0x78], eax
jmp 0x1801087cd
cmp r13d, 1
jne case.default.0x1801085a1
movzx eax, byte [r15 + 3]
cmp al, r13b
je case.default.0x1801085a1
mov esi, dword [r15 + 4]
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b1f0]
jmp 0x18010b440
cmp r13d, 9
jne 0x180109085
movzx eax, byte [r12 + 3]
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b1f0]
mov dword [rbp + 0x78], edi
mov esi, dword [r12 + 4]
mov r10d, dword [r15 + 4]
jmp 0x18010c04d
cmp r13d, 0xa
jne 0x1801090af
movzx eax, byte [r12 + 3]
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b1f0]
mov dword [rbp + 0x78], edi
mov esi, dword [r12 + 4]
jmp 0x1801087cd
mov r14d, dword [r12 + 0xc]
shl r14, 0x20
mov eax, dword [r12 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
movzx edx, byte [r15 + 3]
mov ecx, edx
and ecx, 0xf
mov rax, qword [rsp + 0x60]
lea rdi, [0x180000000]
movzx eax, byte [rdi + rax*8 + 0x29ead7]
mov esi, dword [rdi + rcx*4 + 0x29b1f0]
or esi, dword [rdi + rax*4 + 0x2a43e0]
mov edi, esi
mov dword [rbp + 0x78], esi
shr esi, 0x12
and esi, 7
cmp r13d, 0x19
jne 0x18010910e
mov r10d, dword [r15 + 4]
jmp 0x18010c04d
cmp r13d, 0x1a
jne case.default.0x1801085a1
test dl, dl
je 0x18010b2f5
jmp 0x1801087cd
cmp r13d, 1
jne 0x180109134
mov r10d, dword [r15 + 4]
jmp 0x18010c04d
mov r8, r15
mov qword [rsp + 0x50], r15
cmp r13d, 2
je 0x1801087d5
mov edi, 0xe8
jmp 0x180109a94
test r13d, 0x1c0
je 0x180109179
mov eax, dword [r8]
and eax, 0xf07
cmp eax, 1
jne case.default.0x1801085a1
cmp dword [r8 + 4], 0
jne case.default.0x1801085a1
and r13d, 0x3f
cmp r13d, 9
jne 0x180109223
movzx ecx, byte [r15 + 3]
cmp cl, byte [r12 + 3]
jne 0x18010b3bd
mov eax, ecx
and eax, 0xf
lea r8, [0x180000000]
or edi, dword [r8 + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
mov r10d, dword [r15 + 4]
mov esi, dword [r12 + 4]
cmp cl, 1
jne 0x18010c04d
mov eax, dword [r15]
and eax, 0xff000fff
mov edx, 0x80000000
mov ecx, 0x40000000
cmp eax, 0x1000021
je 0x1801091e3
xor eax, eax
cmp r10d, 4
cmovae eax, ecx
or r11d, eax
jmp 0x1801091ea
or r11d, edx
add r10d, 4
mov eax, dword [r12]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x180109211
xor eax, eax
cmp esi, 4
cmovae eax, ecx
or r11d, eax
mov dword [rbp + 0x88], r11d
jmp 0x18010c04d
or r11d, edx
mov dword [rbp + 0x88], r11d
add esi, 4
jmp 0x18010c04d
cmp r13d, 0xa
jne case.default.0x1801085a1
jmp 0x180108d3d
cmp r13d, 0x4a
jne case.0x1801085a1.14
mov rdx, qword [rbp + 0x98]
mov eax, dword [rdx]
and al, 7
cmp al, 1
jne case.default.0x1801085a1
mov eax, dword [rdx + 0x10]
and al, 7
cmp al, 1
jmp 0x1801087c7
mov esi, dword [r15 + 4]
xor eax, eax
cmp byte [r15 + 3], 8
cmove eax, dword [rsp + 0x58]
or eax, edi
mov edi, eax
mov dword [rbp + 0x78], eax
cmp r13d, 9
jne 0x1801092cf
mov r10d, dword [r12 + 4]
movzx eax, byte [r12 + 3]
cmp al, 1
jne 0x1801092b8
mov eax, dword [r12]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x1801095e4
xor eax, eax
cmp r10d, 4
mov edx, 0x40000000
cmovae eax, edx
or r11d, eax
mov dword [rbp + 0x88], r11d
jmp 0x18010c04d
cmp al, 2
jne 0x1801092c5
mov byte [rbx], 0x66
inc rbx
mov edi, dword [rbp + 0x78]
inc edi
mov dword [rbp + 0x78], edi
jmp 0x18010c04d
cmp r13d, 0x11
jne case.default.0x1801085a1
mov r8, r12
mov qword [rsp + 0x50], r12
movzx eax, byte [r12 + 3]
test al, al
je 0x18010b2f5
cmp al, 2
jne 0x1801092fc
mov byte [rbx], 0x66
inc rbx
mov edi, dword [rbp + 0x78]
xor eax, eax
cmp byte [r12 + 3], 1
setne al
add edi, eax
mov dword [rbp + 0x78], edi
jmp 0x1801087d5
cmp r13d, 0x1b
jne case.default.0x1801085a1
movzx r14d, byte [r12 + 8]
shl r14, 0x10
movzx eax, word [r15 + 8]
or r14, rax
mov r10b, 3
jmp 0x1801097aa
cmp r13d, 0xc9
jne 0x1801093b9
mov dword [rbp + 0x78], WSASetLastError
movzx edx, byte [r15 + 3]
mov eax, edx
and eax, 0xf
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x29b1f0]
or ecx, 0x6b
mov edi, ecx
mov dword [rbp + 0x78], ecx
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
lea rax, [r14 + 0x80]
cmp rax, 0xff
ja 0x180109395
mov eax, r11d
shr eax, 5
test al, 1
je 0x1801093b0
lea edi, [rcx - 2]
mov dword [rbp + 0x78], edi
mov ecx, 2
cmp dl, cl
mov eax, 4
cmove eax, ecx
mov dword [rbp + 0x80], eax
mov esi, dword [r15 + 4]
jmp 0x18010c048
cmp r13d, 0xd1
jne 0x18010944f
mov dword [rbp + 0x78], WSASetLastError
movzx edx, byte [r15 + 3]
mov eax, edx
and eax, 0xf
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x29b1f0]
or ecx, 0x6b
mov dword [rbp + 0x78], ecx
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
cmp dl, 4
jne 0x18010940a
movsxd r14, r14d
lea rax, [r14 + 0x80]
cmp rax, 0xff
ja 0x180109423
mov eax, r11d
shr eax, 5
test al, 1
je 0x18010943e
lea eax, [rcx - 2]
mov dword [rbp + 0x78], eax
mov eax, 4
mov ecx, 2
cmp dl, cl
cmove eax, ecx
mov dword [rbp + 0x80], eax
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
cmp r13d, 9
jne 0x18010949b
movzx ecx, byte [r12 + 3]
cmp cl, 1
je 0x18010957e
movzx eax, byte [r15 + 3]
cmp al, cl
jne 0x18010b3bd
mov esi, dword [r15 + 4]
mov r10d, dword [r12 + 4]
mov edi, eax
and edi, 0xf
lea rax, [0x180000000]
mov edi, dword [rax + rdi*4 + 0x29b1f0]
or edi, 0x1af
mov dword [rbp + 0x78], edi
jmp 0x18010c04d
cmp r13d, 0x11
jne 0x1801094dc
cmp byte [r12 + 3], 1
je 0x180109602
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
movzx eax, byte [r15 + 3]
and eax, 0xf
lea rcx, [0x180000000]
mov eax, dword [rcx + rax*4 + 0x29b1f0]
or eax, 0x1af
mov dword [rbp + 0x78], eax
jmp 0x1801087d5
cmp r13d, 0x19
jne case.0x1801085a1.13
mov dword [rbp + 0x78], WSASetLastError
movzx edx, byte [r15 + 3]
mov eax, edx
and eax, 0xf
lea rcx, [0x180000000]
mov ecx, dword [rcx + rax*4 + 0x29b1f0]
or ecx, 0x6b
mov edi, ecx
mov dword [rbp + 0x78], ecx
mov r14d, dword [r12 + 0xc]
shl r14, 0x20
mov eax, dword [r12 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
cmp dl, 4
jne 0x18010952e
movsxd r14, r14d
lea rax, [r14 + 0x80]
cmp rax, 0xff
ja 0x180109547
mov eax, r11d
shr eax, 5
test al, 1
je 0x180109562
lea edi, [rcx - 2]
mov dword [rbp + 0x78], edi
mov ecx, 2
cmp dl, cl
mov eax, 4
cmove eax, ecx
mov dword [rbp + 0x80], eax
mov r10d, dword [r15 + 4]
mov esi, r10d
jmp 0x18010c04d
cmp r13d, 7
jbe case.0x1801085a1.12
cmp r13d, 9
jne 0x1801095fc
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x2000029
sete cl
cmp dword [r15 + 4], 0
sete al
test al, cl
je case.default.0x1801085a1
mov ecx, dword [r12]
mov eax, ecx
and eax, 0xff000f07
cmp eax, 0x1000001
jne case.default.0x1801085a1
mov r10d, dword [r12 + 4]
and ecx, 0xff000fff
cmp ecx, 0x1000021
je 0x1801095e4
xor eax, eax
cmp r10d, 4
mov edx, 0x40000000
cmovae eax, edx
or r11d, eax
mov dword [rbp + 0x88], r11d
jmp 0x18010c04d
mov ecx, 0x80000000
or r11d, ecx
mov dword [rbp + 0x88], r11d
add r10d, 4
jmp 0x18010c04d
cmp r13d, 0x11
jne 0x18010962f
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x2000029
sete cl
cmp dword [r15 + 4], 0
sete al
test al, cl
je case.default.0x1801085a1
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
cmp r13d, 0x49
jne 0x180109662
movzx eax, byte [r15 + 3]
cmp al, byte [r12 + 3]
jne case.default.0x1801085a1
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
mov r10d, dword [r8 + 4]
jmp 0x18010c04d
cmp r13d, 0x89
jne case.default.0x1801085a1
movzx eax, byte [r15 + 3]
cmp al, byte [r12 + 3]
jne case.default.0x1801085a1
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
mov qword [rsp + 0x50], r8
jmp 0x1801087d5
cmp r13d, 1
jne 0x1801096d4
movzx ecx, byte [r15 + 3]
mov eax, ecx
and eax, 0xf
lea r8, [0x180000000]
or edi, dword [r8 + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
mov r10d, dword [r15 + 4]
cmp cl, r13b
jne 0x18010c04d
mov eax, dword [r15]
jmp 0x18010928b
cmp r13d, 2
jne case.default.0x1801085a1
movzx eax, byte [r15 + 3]
test al, al
je 0x18010b2f5
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
jmp 0x1801087cd
cmp r13d, 0x19
jne 0x18010975e
cmp dword [r15 + 4], 0
jne case.default.0x1801085a1
movzx r14d, byte [r12 + 8]
mov r10b, 1
mov rax, qword [rsp + 0x60]
lea r8, [0x180000000]
movzx ecx, byte [r8 + rax*8 + 0x29ead7]
xor eax, eax
cmp byte [r15 + 3], r10b
setne al
mov edi, dword [r8 + rcx*4 + 0x2a43e0]
add edi, eax
xor eax, eax
mov r13d, 0x200000
cmp byte [r15 + 3], 2
cmove eax, r13d
or edi, eax
mov dword [rbp + 0x78], edi
jmp 0x1801097aa
cmp r13d, 9
jne case.default.0x1801085a1
cmp dword [r15 + 4], 0
jne case.default.0x1801085a1
cmp dword [r12 + 4], 2
jne case.default.0x1801085a1
xor edx, edx
cmp byte [r15 + 3], 1
setne dl
add edx, edi
xor eax, eax
mov r13d, 0x200000
cmp byte [r15 + 3], 2
cmove eax, r13d
or edx, eax
mov edi, edx
mov dword [rbp + 0x78], edx
mov r10d, dword [rbp + 0x80]
shr edi, 0x15
and edi, 7
mov eax, edi
lea rdi, [0x180000000]
movzx eax, byte [rax + rdi + 0x29ab00]
mov byte [rbx], al
mov eax, 0
setne al
add rax, rbx
mov edx, dword [rbp + 0x78]
or edx, r11d
shr edx, 0x18
cmp edx, 0x80
ja 0x180108897
and edx, 0x7f
movzx ecx, dl
or cl, 0x40
mov byte [rax], cl
xor ecx, ecx
test edx, edx
setne cl
add rcx, rax
mov r9d, dword [rbp + 0x78]
mov eax, r9d
shr rax, 8
and eax, 0x1f
lea r8, [rdi + 0x29aac0]
lea r8, [r8 + rax*4]
movzx edx, byte [r8]
movzx eax, byte [r8 + 1]
mov byte [rcx], al
xor eax, eax
test dl, dl
setne al
add rax, rcx
xor ebx, ebx
movzx edx, byte [r8]
cmp dl, 1
movzx ecx, byte [r8 + 2]
seta bl
mov byte [rax], cl
add rbx, rax
mov byte [rbx], r9b
inc rbx
movzx eax, r10b
cmp r10b, 4
jb 0x18010985b
mov dword [rbx], r14d
add rbx, 4
shr r14, 0x20
lea eax, [r10 - 4]
test al, al
je 0x18010e2e6
mov byte [rbx], r14b
inc rbx
shr r14, 8
add al, 0xff
je 0x18010e2e6
mov byte [rbx], r14b
inc rbx
shr r14, 8
add al, 0xff
je 0x18010e2e6
mov rdi, qword [rbp + 0x70]
mov byte [rbx], r14b
inc rbx
cmp al, 1
je 0x18010e2ea
shr r14, 8
mov byte [rbx], r14b
inc rbx
jmp 0x18010e2ea
cmp r13d, 0xa
jne case.default.0x1801085a1
mov edx, dword [r15]
mov r10d, edx
shr r10d, 0x18
mov eax, edx
and al, 7
cmp al, 2
jne case.default.0x1801085a1
mov ecx, dword [r15 + 4]
cmp ecx, 7
jne case.default.0x1801085a1
mov eax, edx
shr eax, 3
test al, 0x1f
mov eax, 0
cmove eax, ecx
or eax, dword [r15 + 0xc]
jne case.default.0x1801085a1
cmp dword [r12 + 4], 2
jne case.default.0x1801085a1
test r10b, r10b
je 0x18010b2f5
mov r8, r15
xor ecx, ecx
cmp r10b, 1
setne cl
add ecx, edi
xor eax, eax
mov r13d, 0x200000
cmp r10b, 2
cmove eax, r13d
or ecx, eax
mov edi, ecx
mov dword [rbp + 0x78], ecx
jmp 0x18010b07d
cmp r13d, 1
jne 0x1801096d4
mov r10d, dword [r15 + 4]
movzx ecx, byte [r15 + 3]
cmp cl, r13b
jne 0x18010994d
mov eax, dword [r15]
jmp 0x18010928b
test byte [r9 + 0x48], 1
je 0x18010998f
mov rax, qword [rsp + 0x60]
lea rdx, [0x180000000]
movzx eax, byte [rdx + rax*8 + 0x29ead7]
and r10d, 7
mov edi, dword [rdx + rax*4 + 0x2a43e0]
add edi, r10d
xor eax, eax
mov r13d, 0x200000
cmp cl, 2
cmove eax, r13d
or edi, eax
mov dword [rbp + 0x78], edi
jmp case.0x1801085a1.1
mov rax, rcx
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
jmp 0x18010c04d
cmp r13d, 3
jne case.default.0x1801085a1
mov r14d, dword [r15 + 0xc]
shl r14, 0x20
mov eax, dword [r15 + 8]
or r14, rax
mov r10b, 1
jmp 0x1801097aa
test r11b, 0xc0
je 0x180109a97
mov eax, dword [r9 + 0x20]
shr eax, 4
test al, 1
je 0x180109a97
mov eax, r11d
shr eax, 6
and al, 1
shl al, 4
or al, 0x2e
mov byte [rbx], al
inc rbx
mov edi, dword [rbp + 0x78]
jmp 0x180109a97
mov r13, r15
mov ecx, dword [r15]
mov edx, ecx
shr edx, 0x18
mov eax, ecx
and al, 7
cmp al, 1
jne 0x180109a6a
and ecx, 0xf07
cmp ecx, 1
sete cl
cmp dword [r15 + 4], 1
sete al
test al, cl
je case.default.0x1801085a1
movzx eax, byte [r9 + 0x48]
test al, 1
je 0x180109a3c
cmp dl, 2
je 0x180109a47
not al
test al, 1
je 0x180109a5c
cmp dl, 4
jne 0x180109a5c
mov eax, 1
mov byte [rbx], 0x67
add rbx, rax
mov r13, r12
mov edi, dword [rbp + 0x78]
xor esi, esi
jmp 0x180109a9c
xor eax, eax
mov byte [rbx], 0x67
add rbx, rax
mov r13, r12
mov edi, dword [rbp + 0x78]
xor esi, esi
jmp 0x180109a9c
cmp r13d, 1
jne 0x180109a7d
mov r10d, dword [r15 + 4]
jmp 0x18010c04d
mov r8, r15
mov qword [rsp + 0x50], r15
cmp r13d, 2
je 0x1801087d5
mov edi, 0xe9
mov dword [rbp + 0x78], edi
xor esi, esi
mov r13, r15
or edi, r11d
shr edi, 0x18
cmp edi, 0x80
ja 0x180108897
and edi, 0x7f
movzx eax, dil
or al, 0x40
mov byte [rbx], al
xor eax, eax
test edi, edi
setne al
add rbx, rax
mov rax, rbx
sub rax, qword [r9 + 0x98]
mov qword [rsp + 0x78], rax
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
mov r10d, dword [rcx + rax*4 + 0x2a43e0]
mov dword [rbp - 0x80], r10d
mov eax, dword [rbp + 0x78]
mov ecx, eax
and ecx, 0x1f00
xor r8d, r8d
cmp ecx, 0x100
sete r8b
xor ecx, ecx
test esi, esi
setne cl
add ecx, 5
add r8d, ecx
mov ecx, dword [r13]
and ecx, 7
cmp ecx, 4
jne 0x180109c31
mov rcx, qword [r9 + 0x30]
mov edx, dword [r13 + 4]
cmp edx, dword [rcx + 0xd8]
jae 0x18010dfd0
mov rcx, qword [rcx + 0xd0]
mov rdi, qword [rcx + rdx*8]
test rdi, rdi
je 0x18010dfd0
mov rcx, qword [r9 + 0x90]
cmp qword [rdi + 0x20], rcx
jne 0x180109bb7
mov edx, dword [rdi + 0x18]
sub edx, dword [rsp + 0x78]
sub edx, r8d
lea ecx, [rdx + 0x7e]
add ecx, r8d
cmp ecx, 0xff
ja 0x180109cb6
test r10d, r10d
je 0x180109cb6
mov ecx, r11d
shr ecx, 5
test cl, 1
jne 0x180109cb6
or r11d, 0x10
mov dword [rbp + 0x88], r11d
mov byte [rbx], r10b
sub dl, 2
add dl, r8b
mov byte [rbx + 1], dl
add rbx, 2
mov r10d, dword [rbp + 0x80]
jmp 0x18010e2e6
test r10d, r10d
je 0x180109bde
test eax, eax
je 0x180109bcb
mov ecx, r11d
shr ecx, 4
test cl, 1
je 0x180109bde
mov byte [rbx], r10b
inc rbx
mov edx, 0xffffffff
mov r13b, 1
jmp 0x18010ded8
test eax, eax
je 0x180109d15
mov ecx, r11d
shr ecx, 4
test cl, 1
jne 0x180109d15
test eax, 0x1f00
mov byte [rbx], reloc.WS2_32.dll_ntohs
mov eax, 0
setne al
add rbx, rax
movzx eax, byte [rbp + 0x78]
mov byte [rbx], al
lea rcx, [rbx + 1]
movzx eax, sil
shl al, 3
sub al, 0x40
mov byte [rcx], al
xor ebx, ebx
test esi, esi
setne bl
add rbx, rcx
mov edx, 0xfffffffc
jmp 0x18010ded5
cmp ecx, 3
jne case.default.0x1801085a1
lea r14, [r9 + 0x30]
mov rcx, qword [r14]
mov qword [rsp + 0x50], rcx
mov edx, dword [r13 + 0xc]
shl rdx, 0x20
mov ecx, dword [r13 + 8]
or rdx, rcx
mov qword [rbp - 0x78], rdx
mov rcx, qword [rsp + 0x50]
mov r13, qword [rcx + 8]
cmp r13, 0xffffffffffffffff
je 0x180109d1f
mov ecx, r8d
sub rdx, rcx
sub rdx, r13
sub rdx, qword [rsp + 0x78]
test byte [r9 + 0x48], 1
jne 0x180109b66
mov ecx, 0x80000000
add rcx, rdx
mov r13d, 0xffffffff
cmp rcx, r13
jbe 0x180109b66
mov r13, qword [rsp + 0x60]
cmp r13d, 0x12f
je 0x180109d24
cmp r13d, 0x3b
jne 0x180109d15
lea r14, [r9 + 0x30]
jmp 0x180109d24
test eax, eax
je 0x180109d15
mov ecx, r11d
shr ecx, 4
test cl, 1
jne 0x180109d15
and r11d, 0xffffffef
mov dword [rbp + 0x88], r11d
test eax, 0x1f00
mov byte [rbx], reloc.WS2_32.dll_ntohs
mov eax, 0
setne al
add rbx, rax
movzx eax, byte [rbp + 0x78]
mov byte [rbx], al
lea rax, [rbx + 1]
movzx ecx, sil
shl cl, 3
sub cl, 0x40
mov byte [rax], cl
xor ebx, ebx
test esi, esi
setne bl
add rbx, rax
mov dword [rbx], edx
add rbx, 4
mov r10d, dword [rbp + 0x80]
jmp 0x18010e2e6
mov eax, 0x30
jmp 0x18010862f
mov r13, qword [rsp + 0x60]
mov r8d, 4
lea rdx, [rsp + 0x70]
mov rcx, qword [rsp + 0x50]
call fcn.180106c40
test eax, eax
jne 0x18010862f
mov rdx, qword [rbp + 0x70]
mov rcx, qword [rdx + 0xa8]
sub rcx, qword [rdx + 0x98]
mov rax, qword [rsp + 0x70]
mov qword [rax + 0x18], rcx
mov rax, qword [rdx + 0x90]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x10], ecx
mov rax, qword [rsp + 0x70]
mov r8, qword [rbp - 0x78]
mov qword [rax + 0x20], r8
mov eax, dword [rbp + 0x78]
test eax, eax
je 0x180109e52
movzx ecx, byte [rdx + 0x48]
not cl
test cl, 1
je 0x180109dd5
mov rcx, r14
cmp r13d, 0x12f
je 0x180109da6
cmp r13d, 0x3b
jne 0x180109dd5
lea rcx, [rdx + 0x30]
test edi, edi
jne 0x180109db3
mov byte [rbx], 0x40
inc rbx
mov r14, rcx
mov rdx, r8
mov rcx, qword [r14]
call fcn.180105c70
test eax, eax
jne 0x18010862f
mov rax, qword [rsp + 0x70]
mov dword [rax + 4], 5
mov eax, dword [rbp + 0x78]
test eax, 0x1f00
mov byte [rbx], reloc.WS2_32.dll_ntohs
mov eax, 0
setne al
add rbx, rax
movzx eax, byte [rbp + 0x78]
mov byte [rbx], al
movzx eax, sil
shl al, 3
sub al, 0x40
mov byte [rbx + 1], al
xor eax, eax
test esi, esi
setne al
lea r8, [rbx + rax]
lea rdx, [rbx + 1]
add rdx, rax
mov rax, qword [rsp + 0x70]
mov dword [rax + 8], 0x4040000
mov dword [rax + 0xc], 0x2000
mov rcx, qword [rsp + 0x70]
mov rdi, qword [rbp + 0x70]
sub dl, byte [rdi + 0xa8]
movzx eax, dl
add al, byte [rcx + 0xb]
mov byte [rcx + 0xa], al
mov byte [rcx + 0xc], dl
mov dword [r8 + 1], 0
lea rbx, [r8 + 5]
mov r10d, dword [rbp + 0x80]
jmp 0x18010e2ea
mov eax, dword [rbp - 0x80]
mov byte [rbx], al
inc rbx
mov rax, qword [rsp + 0x70]
mov dword [rax + 8], 0x1010000
mov dword [rax + 0xc], 0x800
mov rdx, qword [rsp + 0x70]
movzx ecx, bl
mov rdi, qword [rbp + 0x70]
sub cl, byte [rdi + 0xa8]
movzx eax, cl
add al, byte [rdx + 0xb]
mov byte [rdx + 0xa], al
mov byte [rdx + 0xc], cl
mov byte [rbx], 0
inc rbx
mov r10d, dword [rbp + 0x80]
jmp 0x18010e2ea
cmp r13d, 2
jne 0x180109f08
mov r8, r15
mov qword [rsp + 0x50], r15
movzx ecx, byte [r15 + 3]
test ecx, ecx
jne 0x180109ec7
movzx eax, byte [r9 + 0x48]
not al
and eax, 1
lea ecx, [rax*4 + 4]
jmp 0x180109eed
add ecx, 0xfffffffe
lea eax, [rcx - 2]
test eax, 0xfffffffd
je 0x180109eed
movzx eax, byte [r9 + 0x48]
not al
and eax, 1
lea eax, [rax*4 + 4]
cmp ecx, eax
jne 0x18010d9f0
mov eax, ecx
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b1f0]
mov dword [rbp + 0x78], edi
jmp 0x1801087d5
cmp r13d, 0x1b
jne case.default.0x1801085a1
test byte [r9 + 0x48], 1
je case.default.0x1801085a1
mov r14d, dword [r15 + 0xc]
shl r14, 0x20
mov eax, dword [r15 + 8]
or r14, rax
cmp r14, 0xffff
jg 0x180108e51
mov ecx, dword [r12 + 0xc]
shl rcx, 0x20
mov eax, dword [r12 + 8]
or rcx, rax
mov eax, 0xffffffff
cmp rcx, rax
jg 0x180108e51
mov rax, qword [rsp + 0x60]
lea r10, [0x180000000]
movzx edi, byte [r10 + rax*8 + 0x29ead7]
mov edi, dword [r10 + rdi*4 + 0x2a43e0]
mov dword [rbp + 0x78], edi
shl r14, 0x20
or r14, rcx
mov r10b, 6
jmp 0x1801097aa
cmp r13d, 0x11
jne case.default.0x1801085a1
movzx eax, byte [r15 + 3]
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b1f0]
mov dword [rbp + 0x78], edi
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
cmp r13d, 9
jne 0x18010a1d4
mov edx, dword [r15]
mov edi, edx
shr edi, 0x18
mov esi, dword [r15 + 4]
mov r13d, dword [r12 + 4]
mov ecx, dword [r12]
mov r8d, ecx
shr r8d, 0x18
mov eax, edx
and eax, 0xf07
cmp eax, 1
jne 0x18010a161
mov r10d, esi
mov esi, r13d
mov eax, ecx
and eax, 0xf07
cmp eax, 1
jne 0x18010a0de
cmp dil, r8b
jne case.default.0x1801085a1
cmp dil, al
jne 0x18010a0a1
and edx, 0xff000fff
mov eax, 0x80000000
mov r8d, 0x40000000
cmp edx, 0x1000021
je 0x18010a046
xor eax, eax
cmp r10d, 4
cmovae eax, r8d
or r11d, eax
mov eax, 0x80000000
jmp 0x18010a04d
or r11d, eax
add r10d, 4
and ecx, 0xff000fff
cmp ecx, 0x1000021
je 0x18010a069
xor eax, eax
cmp esi, 4
cmovae eax, r8d
or r11d, eax
jmp 0x18010a06f
or r11d, eax
add esi, 4
mov dword [rbp + 0x88], r11d
mov edi, 0x88
mov dword [rbp + 0x78], edi
mov eax, r11d
shr eax, 9
test al, 1
je 0x18010c04d
mov edi, 0x8a
mov dword [rbp + 0x78], edi
mov eax, esi
mov esi, r10d
mov r10d, eax
jmp 0x18010c04d
and edi, 0xf
lea rax, [0x180000000]
mov ecx, dword [rax + rdi*4 + 0x29b1f0]
or ecx, 0x89
mov edi, ecx
mov dword [rbp + 0x78], ecx
mov eax, r11d
shr eax, 9
test al, 1
je 0x18010c04d
lea edi, [rcx + 2]
mov dword [rbp + 0x78], edi
mov eax, esi
mov esi, r10d
mov r10d, eax
jmp 0x18010c04d
and ecx, 0xff000fff
cmp ecx, 0x2000599
jne 0x18010a112
and edi, 0xf
lea rax, [0x180000000]
mov edi, dword [rax + rdi*4 + 0x29b1f0]
or edi, 0x8c
mov dword [rbp + 0x78], edi
mov eax, 0xffffffff
add esi, eax
jmp 0x18010c04d
cmp ecx, 0x6a1
jne 0x18010a148
mov edi, 0x120
mov dword [rbp + 0x78], edi
test sil, 8
je 0x18010c04d
test byte [r9 + 0x48], 1
je 0x18010c04d
mov byte [rbx], 0xf0
inc rbx
and esi, 7
mov edi, dword [rbp + 0x78]
jmp 0x18010c04d
cmp ecx, 0x7a9
jne case.default.0x1801085a1
mov edi, 0x121
mov dword [rbp + 0x78], edi
jmp 0x18010c04d
mov r10d, r13d
and ecx, 0xf07
cmp ecx, 1
jne case.default.0x1801085a1
and edx, 0xff000fff
cmp edx, 0x2000599
jne 0x18010a1a9
and r8d, 0xf
lea rax, [0x180000000]
mov edi, dword [rax + r8*4 + 0x29b1f0]
or edi, 0x8e
mov dword [rbp + 0x78], edi
mov eax, 0xffffffff
add esi, eax
jmp 0x18010c04d
cmp edx, 0x6a1
jne 0x18010a1bb
mov edi, 0x122
jmp 0x18010a11f
cmp edx, 0x7a9
jne case.default.0x1801085a1
mov edi, 0x123
mov dword [rbp + 0x78], edi
jmp 0x18010c04d
cmp r13d, 0x11
jne 0x18010a401
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
mov eax, dword [r15]
mov edi, eax
shr edi, 0x18
and eax, 0xff000fff
lea rcx, [0x180000000]
cmp eax, 0x2000599
jne 0x18010a229
movzx eax, byte [r12 + 3]
and eax, 0xf
mov eax, dword [rcx + rax*4 + 0x29b1f0]
or eax, 0x8e
mov dword [rbp + 0x78], eax
mov eax, 0xffffffff
add esi, eax
jmp 0x1801087d5
mov dword [rbp + 0x78], 0
mov rax, rdi
and eax, 0xf
mov eax, dword [rcx + rax*4 + 0x29b230]
mov dword [rbp + 0x78], eax
test esi, esi
jne 0x18010a33f
mov r13d, dword [r12]
test r13d, 0x1ff8
jne 0x18010a33f
test byte [r9 + 0x48], 1
je 0x18010a270
mov ecx, r11d
shr ecx, 8
not cl
and cl, 1
jmp 0x18010a3a7
mov edx, r13d
and edx, 0xc000
cmp edx, 0x8000
je 0x18010a33f
mov ecx, r11d
shr ecx, 8
test cl, 1
jne 0x18010a33f
mov ecx, r13d
shr ecx, 3
test cl, 0x1f
jne 0x18010a2b2
mov r10d, dword [r12 + 4]
shl r10, 0x20
mov ecx, dword [r12 + 0xc]
or r10, rcx
jmp 0x18010a2b7
movsxd r10, dword [r12 + 0xc]
mov rcx, qword [r9 + 0x30]
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x78], rcx
test edx, edx
jne 0x18010a388
cmp rcx, 0xffffffffffffffff
je 0x18010a388
test r13d, 0x1c0000
jne 0x18010a388
cmp dil, 8
je 0x18010a2f8
mov ecx, r11d
shr ecx, 0x1e
test cl, 1
jne 0x18010a2f8
xor r13d, r13d
jmp 0x18010a2fe
mov r13d, 1
xor ecx, ecx
cmp dil, 2
sete cl
add rcx, 9
mov rdx, qword [r9 + 0x98]
sub rdx, rcx
mov rcx, qword [r9 + 0x90]
sub rdx, qword [rcx + 0x10]
sub rdx, qword [rbp - 0x78]
sub rdx, r13
sub rdx, rbx
add rdx, r10
mov ecx, 0x80000000
add rcx, rdx
mov edx, 0xffffffff
cmp rcx, rdx
ja 0x18010a39c
mov edx, 0x80000000
cmp byte [r15 + 3], 1
jne 0x18010a3f4
mov ecx, dword [r15]
and ecx, 0xff000fff
cmp ecx, 0x1000021
je 0x18010a3e7
xor ecx, ecx
cmp esi, 4
mov edx, 0x40000000
cmovae ecx, edx
or r11d, ecx
mov dword [rbp + 0x88], r11d
add eax, 0x8a
mov dword [rbp + 0x78], eax
jmp 0x1801087d5
mov edx, 0x80000000
lea rcx, [r10 + rdx]
mov r9d, 0xffffffff
cmp rcx, r9
jbe 0x18010a344
mov ecx, 0xffffffff
cmp r10, rcx
seta cl
test cl, cl
je 0x18010a33f
add eax, 0xa0
mov dword [rbp + 0x78], eax
mov rcx, r12
call fcn.18010e870
test al, al
je 0x18010a3d9
mov r14d, dword [r12 + 4]
shl r14, 0x20
mov eax, dword [r12 + 0xc]
or r14, rax
mov ecx, dword [r12]
jmp 0x18010a89d
movsxd r14, dword [r12 + 0xc]
mov ecx, dword [r12]
jmp 0x18010a89d
or r11d, edx
add esi, 4
mov dword [rbp + 0x88], r11d
add eax, 0x8a
mov dword [rbp + 0x78], eax
jmp 0x1801087d5
cmp r13d, 0xa
jne 0x18010a630
mov esi, dword [r12 + 4]
mov qword [rsp + 0x50], r15
mov eax, dword [r12]
mov r8d, eax
shr r8d, 0x18
mov dword [rsp + 0x68], r8d
and eax, 0xff000fff
cmp eax, 0x2000599
jne 0x18010a45b
movzx eax, byte [r15 + 3]
and eax, 0xf
lea rcx, [0x180000000]
mov eax, dword [rcx + rax*4 + 0x29b1f0]
or eax, 0x8c
mov dword [rbp + 0x78], eax
mov eax, 0xffffffff
add esi, eax
jmp 0x1801087d2
mov dword [rbp + 0x78], 0
mov rdi, r8
and edi, 0xf
lea rax, [0x180000000]
mov edi, dword [rax + rdi*4 + 0x29b230]
mov dword [rbp + 0x78], edi
test esi, esi
jne 0x18010a58b
mov eax, dword [r15]
test eax, 0x1ff8
jne 0x18010a58b
test byte [r9 + 0x48], 1
je 0x18010a4aa
mov edx, 0x100
mov ecx, r11d
call fcn.180108190
xor al, 1
jmp 0x18010a5ed
and eax, 0xc000
mov dword [rbp - 0x80], eax
cmp eax, 0x8000
je 0x18010a58b
mov edx, 0x100
mov ecx, r11d
call fcn.180108190
test al, al
jne 0x18010a58b
mov rcx, r15
call fcn.18010e880
mov qword [rbp - 0x78], rax
mov r13, qword [rbp + 0x70]
mov rcx, qword [r13 + 0x30]
mov rcx, qword [rcx + 8]
mov qword [rbp - 0x60], rcx
cmp dword [rbp - 0x80], 0
jne 0x18010a5d2
cmp rcx, 0xffffffffffffffff
je 0x18010a5d2
mov rcx, r15
call fcn.18010e860
test al, al
jne 0x18010a5ce
mov r9d, dword [r15]
and r9d, 0x1c0000
mov r8d, dword [rsp + 0x68]
cmp r8b, 8
je 0x18010a53f
mov edx, 0x40000000
mov ecx, dword [rbp + 0x88]
call fcn.180108190
test al, al
jne 0x18010a53f
xor edx, edx
jmp 0x18010a544
mov edx, 1
xor eax, eax
test r9d, r9d
setne al
add rax, 9
mov rcx, qword [r13 + 0x98]
sub rcx, rax
xor eax, eax
cmp r8b, 2
sete al
sub rcx, rax
mov rax, qword [r13 + 0x90]
sub rcx, qword [rax + 0x10]
sub rcx, qword [rbp - 0x60]
sub rcx, rdx
sub rcx, rbx
mov rdx, qword [rbp - 0x78]
add rcx, rdx
call fcn.180108160
test al, al
je 0x18010a5e2
cmp byte [rsp + 0x68], 1
jne 0x18010a61b
mov eax, dword [r12]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x18010a60d
xor eax, eax
cmp esi, 4
mov edx, 0x40000000
cmovae eax, edx
or dword [rbp + 0x88], eax
add edi, 0x88
mov dword [rbp + 0x78], edi
mov r11d, dword [rbp + 0x88]
jmp 0x1801087d2
mov rax, qword [rbp - 0x78]
mov rcx, rax
call fcn.180108160
test al, al
jne 0x18010a58b
mov rdx, qword [rbp - 0x78]
mov eax, 0xffffffff
cmp rdx, rax
seta al
test al, al
je 0x18010a58b
add edi, 0xa2
mov dword [rbp + 0x78], edi
mov rcx, r15
call fcn.18010e880
mov r14, rax
mov ecx, dword [r15]
jmp 0x18010a89d
mov ecx, 0x80000000
or dword [rbp + 0x88], ecx
add esi, 4
add edi, 0x88
mov dword [rbp + 0x78], edi
mov r11d, dword [rbp + 0x88]
jmp 0x1801087d2
cmp r13d, 0x19
jne 0x18010a736
mov esi, dword [r15 + 4]
movzx r10d, byte [r15 + 3]
mov dword [rbp + 0x80], r10d
cmp r10b, 1
jne 0x18010a696
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x18010a671
xor eax, eax
cmp esi, 4
mov edx, 0x40000000
cmovae eax, edx
or r11d, eax
jmp 0x18010a67c
mov ecx, 0x80000000
or r11d, ecx
add esi, 4
mov dword [rbp + 0x88], r11d
mov edi, 0xb0
mov dword [rbp + 0x78], edi
movzx r14d, byte [r12 + 8]
jmp 0x18010b44a
mov r14d, dword [r12 + 0xc]
shl r14, 0x20
mov eax, dword [r12 + 8]
or r14, rax
cmp r10b, 8
jne 0x18010a6dc
mov edx, 0x20
mov ecx, r11d
call fcn.180108190
test al, al
jne 0x18010a6dc
mov eax, 0xffffffff
cmp r14, rax
ja 0x18010a710
mov edx, 1
mov rcx, r9
call fcn.18010e850
test al, al
je 0x18010a702
mov r10b, 4
mov rdi, r10
and edi, 0xf
lea rax, [0x180000000]
mov edi, dword [rax + rdi*4 + 0x29b270]
or edi, 0xb8
mov r11d, dword [rbp + 0x88]
jmp 0x18010b447
mov r11d, dword [rbp + 0x88]
mov r10d, dword [rbp + 0x80]
mov rcx, r14
call fcn.180108160
test al, al
je 0x18010a6dc
mov r10d, esi
mov edi, 0x80000c7
mov dword [rbp + 0x78], edi
xor esi, esi
mov al, 4
mov dword [rbp + 0x80], eax
jmp 0x18010c04d
cmp r13d, 0x1a
jne case.default.0x1801085a1
movzx edx, byte [r15 + 3]
mov dword [rbp - 0x80], edx
test edx, edx
je 0x18010b2f5
xor eax, eax
cmp edx, 1
setne al
add eax, 0xc6
mov dword [rbp + 0x78], eax
lea rcx, [rbp + 0x78]
call fcn.180108140
xor esi, esi
mov qword [rsp + 0x50], r15
mov rcx, r12
call fcn.18010e920
mov r14, rax
mov ecx, 4
mov dword [rbp + 0x80], ecx
lea rdx, [rbp + 0x80]
lea rcx, [rbp - 0x80]
call fcn.180108180
mov dword [rbp + 0x80], eax
mov r11d, dword [rbp + 0x88]
jmp 0x1801087d2
cmp r13d, 0x11
jne 0x18010a82b
mov ecx, dword [r15 + 4]
movzx eax, byte [r15 + 3]
and eax, 0xf
lea r8, [0x180000000]
mov eax, dword [r8 + rax*4 + 0x29b230]
or eax, 0xa0
mov dword [rbp + 0x78], eax
test dword [r15], 0xf00
jne case.default.0x1801085a1
test ecx, ecx
jne case.default.0x1801085a1
mov ecx, dword [r12]
test ecx, 0x1ff8
jne 0x18010d9f0
mov eax, ecx
and eax, 0xc000
cmp eax, 0x8000
je 0x18010d9f0
mov eax, ecx
shr eax, 3
test al, 0x1f
jne 0x18010a824
mov r14d, dword [r12 + 4]
shl r14, 0x20
mov eax, dword [r12 + 0xc]
or r14, rax
jmp 0x18010a89d
movsxd r14, dword [r12 + 0xc]
jmp 0x18010a89d
cmp r13d, 0xa
jne 0x18010a8e7
mov ecx, dword [r12 + 4]
movzx eax, byte [r12 + 3]
and eax, 0xf
lea r8, [0x180000000]
mov eax, dword [r8 + rax*4 + 0x29b230]
or eax, 0xa2
mov dword [rbp + 0x78], eax
test dword [r12], 0xf00
jne case.default.0x1801085a1
test ecx, ecx
jne case.default.0x1801085a1
mov ecx, dword [r15]
test ecx, 0x1ff8
jne 0x18010d9f0
mov eax, ecx
shr eax, 3
test al, 0x1f
jne 0x18010a899
mov r14d, dword [r15 + 4]
shl r14, 0x20
mov eax, dword [r15 + 0xc]
or r14, rax
jmp 0x18010a89d
movsxd r14, dword [r15 + 0xc]
mov rax, qword [rbp + 0x70]
movzx r10d, byte [rax + 0x48]
not r10b
and r10b, 1
inc r10b
shl r10b, 2
mov eax, ecx
shr rax, 0x12
and eax, 7
lea rcx, [0x180000000]
movzx eax, byte [rax + rcx + 0x29ab08]
mov byte [rbx], al
xor ecx, ecx
test al, al
setne cl
add rbx, rcx
mov edi, dword [rbp + 0x78]
mov r11d, dword [rbp + 0x88]
jmp 0x1801097aa
cmp r13d, 0x19
jne case.default.0x1801085a1
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x8000039
jne case.default.0x1801085a1
mov esi, dword [r15 + 4]
mov dword [rbp + 0x78], 0xb8
mov r10b, 8
mov r14d, dword [r12 + 0xc]
shl r14, 0x20
mov eax, dword [r12 + 8]
or r14, rax
mov edi, 0x80000b8
jmp 0x18010b447
movzx edx, byte [r12 + 3]
movzx ecx, byte [r15 + 3]
and ecx, 0xf
xor eax, eax
cmp dl, 1
setne al
add eax, edi
lea r8, [0x180000000]
or eax, dword [r8 + rcx*4 + 0x29b1f0]
mov edi, eax
mov dword [rbp + 0x78], eax
cmp r13d, 9
jne 0x180108b2b
mov esi, dword [r15 + 4]
mov r10d, dword [r12 + 4]
cmp dl, 1
jne 0x18010c04d
jmp 0x180109287
cmp r13d, 0xa
jne case.default.0x1801085a1
mov eax, dword [r12]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x8000039
cmove ecx, dword [rsp + 0x58]
or ecx, edi
mov dword [rbp + 0x78], ecx
mov esi, dword [r12 + 4]
jmp 0x1801087cd
cmp r13d, 0x12
jne case.default.0x1801085a1
mov edx, dword [r15]
mov ecx, edx
shr ecx, 3
and cl, 0x1f
mov eax, dword [r12]
shr eax, 3
and al, 0x1f
cmp cl, al
jne case.default.0x1801085a1
test edx, 0x1f00
jne case.default.0x1801085a1
mov esi, dword [r15 + 4]
xor eax, eax
test cl, cl
cmove eax, esi
or eax, dword [r15 + 0xc]
jne case.default.0x1801085a1
and edx, 0x1c0000
je 0x180108b39
cmp edx, 0x40000
jne case.default.0x1801085a1
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
cmp r13d, 0xb
jne 0x18010aa74
cmp dword [r12 + 4], 0
jne case.default.0x1801085a1
mov rax, qword [rsp + 0x60]
lea r10, [0x180000000]
movzx ecx, byte [r10 + rax*8 + 0x29ead7]
xor eax, eax
cmp byte [r12 + 3], 1
setne al
mov edi, dword [r10 + rcx*4 + 0x2a43e0]
add edi, eax
xor eax, eax
mov r13d, 0x200000
cmp byte [r12 + 3], 2
cmove eax, r13d
or edi, eax
mov dword [rbp + 0x78], edi
movzx r14d, byte [r15 + 8]
mov r10b, 1
jmp 0x1801097aa
cmp r13d, 9
jne case.default.0x1801085a1
cmp dword [r15 + 4], 2
jne case.default.0x1801085a1
cmp dword [r12 + 4], 0
jne case.default.0x1801085a1
xor edx, edx
cmp byte [r12 + 3], 1
setne dl
add edx, edi
xor eax, eax
mov r13d, 0x200000
cmp byte [r12 + 3], 2
jmp 0x180109798
cmp r13d, 0x11
jne case.default.0x1801085a1
cmp dword [r15 + 4], 2
jne case.default.0x1801085a1
mov edx, dword [r12]
mov r10d, edx
shr r10d, 0x18
mov eax, edx
and al, 7
cmp al, 2
jne case.default.0x1801085a1
mov ecx, dword [r12 + 4]
cmp ecx, 6
jne case.default.0x1801085a1
mov eax, edx
shr eax, 3
test al, 0x1f
mov eax, 0
cmove eax, ecx
or eax, dword [r12 + 0xc]
jne case.default.0x1801085a1
test r10b, r10b
je 0x18010b2f5
mov r8, r12
jmp 0x180109906
cmp r13d, 1
jne 0x18010ab5d
mov eax, dword [r15]
mov edx, eax
shr edx, 0x18
and eax, 0xff000fff
cmp eax, 0x2000599
jne 0x18010ac14
mov eax, dword [r15 + 4]
cmp eax, 7
jae 0x18010ac0a
mov edi, eax
lea rax, [0x180000000]
mov edi, dword [rax + rdi*4 + 0x29ab10]
mov dword [rbp + 0x78], edi
jmp case.0x1801085a1.1
cmp r13d, 3
jne 0x18010ac5c
mov r14d, dword [r15 + 0xc]
shl r14, 0x20
mov eax, dword [r15 + 8]
or r14, rax
mov r9b, 4
mov dword [rbp + 0x80], r9d
lea rax, [r14 + 0x80]
cmp rax, 0xff
ja 0x18010abab
mov eax, r11d
shr eax, 5
test al, 1
movzx r9d, r9b
mov ecx, 1
cmove r9d, ecx
mov dword [rbp + 0x80], r9d
mov edi, 0x68
mov eax, 0x6a
cmp r9b, 1
cmove edi, eax
mov dword [rbp + 0x78], edi
jmp case.0x1801085a1.1
cmp r13d, 1
jne 0x18010ac5c
mov ecx, dword [r15]
mov edx, ecx
shr edx, 0x18
and ecx, 0xff000fff
cmp ecx, 0x2000599
jne 0x18010ac14
mov eax, dword [r15 + 4]
cmp eax, 2
je 0x18010ac0a
cmp eax, 7
jae 0x18010ac0a
mov edi, eax
lea rax, [0x180000000]
mov edi, dword [rax + rdi*4 + 0x29ab30]
mov dword [rbp + 0x78], edi
jmp case.0x1801085a1.1
mov eax, 0x31
jmp 0x18010862f
cmp dl, 2
jb case.default.0x1801085a1
mov rax, qword [rsp + 0x60]
lea r10, [0x180000000]
movzx eax, byte [r10 + rax*8 + 0x29ead7]
xor edi, edi
mov r13d, 0x200000
cmp dl, 2
cmove edi, r13d
or edi, dword [r10 + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], edi
mov esi, dword [r15 + 4]
mov r10d, dword [rbp + 0x80]
jmp 0x18010b44a
cmp r13d, 2
jne case.default.0x1801085a1
movzx edx, byte [r15 + 3]
test dl, dl
je 0x18010b2f5
cmp dl, r13b
je 0x18010ac91
movzx ecx, byte [r9 + 0x48]
not cl
and ecx, 1
lea ecx, [rcx*4 + 4]
cmp edx, ecx
jne case.default.0x1801085a1
xor eax, eax
mov r13d, 0x200000
cmp dl, 2
cmove eax, r13d
or edi, eax
mov dword [rbp + 0x78], edi
jmp 0x1801087cd
test r13d, r13d
jne 0x18010acb9
inc edi
mov dword [rbp + 0x78], edi
jmp case.0x1801085a1.1
cmp r13d, 3
jne case.default.0x1801085a1
mov r14d, dword [r15 + 0xc]
shl r14, 0x20
mov eax, dword [r15 + 8]
or r14, rax
jne 0x18010ace8
mov eax, r11d
shr eax, 5
test al, 1
jne 0x18010ace8
inc edi
mov dword [rbp + 0x78], edi
jmp case.0x1801085a1.1
mov r10b, 2
jmp 0x1801097aa
mov edx, dword [r15]
movzx ecx, byte [r15 + 3]
mov eax, edx
and al, 7
cmp al, 1
jne 0x18010adb5
mov eax, ecx
and eax, 0xf
lea r8, [0x180000000]
or edi, dword [r8 + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
mov r10d, dword [r15 + 4]
cmp cl, 1
jne 0x18010ad58
and edx, 0xff000fff
cmp edx, 0x1000021
je 0x18010ad45
xor eax, eax
cmp r10d, 4
mov edx, 0x40000000
cmovae eax, edx
or r11d, eax
jmp 0x18010ad51
mov ecx, 0x80000000
or r11d, ecx
add r10d, 4
mov dword [rbp + 0x88], r11d
cmp r13d, 9
jne 0x18010ad75
cmp dword [r12 + 4], 1
jne case.default.0x1801085a1
add edi, 2
mov dword [rbp + 0x78], edi
jmp 0x18010c04d
cmp r13d, 0x19
jne case.default.0x1801085a1
movzx r14d, byte [r12 + 8]
xor al, al
mov dword [rbp + 0x80], eax
cmp r14, 1
jne 0x18010ada2
mov eax, r11d
shr eax, 5
test r14b, al
je 0x18010c04d
add edi, 0xfffffff0
mov dword [rbp + 0x78], edi
mov al, 1
mov dword [rbp + 0x80], eax
jmp 0x18010c04d
test cl, cl
je 0x18010b2f5
and ecx, 0xf
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0x29b230]
mov dword [rbp + 0x78], edi
cmp r13d, 0xa
jne 0x18010adee
cmp dword [r12 + 4], 1
jne case.default.0x1801085a1
add edi, 2
mov dword [rbp + 0x78], edi
jmp 0x1801087cd
cmp r13d, 0x1a
jne case.default.0x1801085a1
mov r8, r15
mov qword [rsp + 0x50], r15
movzx r14d, byte [r12 + 8]
xor al, al
mov dword [rbp + 0x80], eax
cmp r14, 1
jne 0x18010ae23
mov eax, r11d
shr eax, 5
test r14b, al
je 0x1801087d5
add edi, 0xfffffff0
mov dword [rbp + 0x78], edi
mov al, 1
mov dword [rbp + 0x80], eax
jmp 0x1801087d5
cmp r13d, 1
jne case.0x1801085a1.14
mov r10d, dword [r15 + 4]
mov eax, dword [r15]
jmp 0x18010928b
cmp r13d, 0xc9
jne 0x18010ae93
movzx eax, byte [r15 + 3]
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b1f0]
mov dword [rbp + 0x78], edi
mov esi, dword [r12 + 4]
mov r10d, dword [r15 + 4]
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
jmp 0x18010c04d
cmp r13d, 0xca
jne 0x18010aed7
movzx eax, byte [r12 + 3]
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b1f0]
mov dword [rbp + 0x78], edi
mov esi, dword [r12 + 4]
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
jmp 0x1801087cd
inc edi
mov dword [rbp + 0x78], edi
cmp r13d, 0x49
jne 0x18010af14
cmp dword [r8 + 4], 1
jne case.default.0x1801085a1
movzx eax, byte [r15 + 3]
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b1f0]
mov dword [rbp + 0x78], edi
mov esi, dword [r12 + 4]
mov r10d, dword [r15 + 4]
jmp 0x18010c04d
cmp r13d, 0x4a
jne case.default.0x1801085a1
cmp dword [r8 + 4], 1
jne case.default.0x1801085a1
jmp 0x18010908b
cmp r13d, 0x11
jne case.default.0x1801085a1
mov r8, r12
cmp dword [r12 + 0xc], 0
jne case.default.0x1801085a1
mov eax, dword [r15]
mov r10d, eax
shr r10d, 0x18
and eax, 0xf07
cmp eax, 1
sete cl
cmp dword [r15 + 4], 0
sete al
test al, cl
je case.default.0x1801085a1
mov edx, dword [r12]
mov ecx, edx
shr ecx, 0x18
mov eax, ecx
bswap eax
test eax, eax
je 0x18010af86
cmp cl, r10b
jne 0x18010b3bd
and r10d, 0xf
lea rax, [0x180000000]
or edi, dword [rax + r10*4 + 0x29b230]
jmp 0x18010b07a
cmp r13d, 0xa
jne case.default.0x1801085a1
mov r8, r15
cmp dword [r15 + 0xc], 0
jne case.default.0x1801085a1
mov eax, dword [r12]
mov r10d, eax
shr r10d, 0x18
and eax, 0xf07
cmp eax, 1
sete cl
cmp dword [r12 + 4], 0
sete al
test al, cl
je case.default.0x1801085a1
mov edx, dword [r15]
mov ecx, edx
shr ecx, 0x18
mov eax, ecx
bswap eax
test eax, eax
je 0x18010af86
cmp cl, r10b
jne 0x18010b3bd
and r10d, 0xf
lea rax, [0x180000000]
or edi, dword [rax + r10*4 + 0x29b230]
jmp 0x18010b07a
cmp r13d, 0x12
jne case.default.0x1801085a1
mov ecx, dword [r15]
mov r10d, ecx
shr r10d, 3
mov edx, dword [r12]
mov eax, edx
shr eax, 3
xor eax, r10d
test eax, 0x3ff
jne case.default.0x1801085a1
mov r8, r12
test r10b, 0x1f
mov eax, 0
cmove eax, dword [r15 + 4]
or eax, dword [r15 + 0xc]
jne case.default.0x1801085a1
mov eax, edx
shr eax, 0x18
test eax, eax
je 0x18010b2f5
shr ecx, 0x18
cmp ecx, eax
jne 0x18010b3bd
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
mov ecx, edx
mov eax, ecx
shr rax, 3
and eax, 0x3ff
lea rdx, [0x180000000]
movzx r10d, byte [rax + rdx + 0x29ab50]
shr ecx, 3
test cl, 0x1f
mov eax, 0
cmove eax, dword [r8 + 4]
or eax, dword [r8 + 0xc]
jne case.default.0x1801085a1
test r10b, 2
jne case.default.0x1801085a1
shr edi, 0x15
and edi, 7
mov eax, edi
lea rdi, [0x180000000]
movzx eax, byte [rax + rdi + 0x29ab00]
mov byte [rbx], al
mov eax, 0
setne al
add rax, rbx
mov edx, dword [rbp + 0x78]
or edx, r11d
shr edx, 0x18
cmp edx, 0x80
ja 0x180108897
and edx, 0x7f
movzx ecx, dl
or cl, 0x40
mov byte [rax], cl
xor ecx, ecx
test edx, edx
setne cl
add rcx, rax
mov edx, dword [r8]
shr rdx, 0x12
and edx, 7
movzx edx, byte [rdx + rdi + 0x29ab08]
mov byte [rcx], dl
xor eax, eax
test dl, dl
setne al
add rax, rcx
mov ecx, dword [r9 + 0x28]
mov byte [rax], 0x67
test r10d, ecx
mov ecx, 0
setne cl
add rcx, rax
mov r9d, dword [rbp + 0x78]
mov eax, r9d
shr rax, 8
and eax, 0x1f
lea r8, [rdi + 0x29aac0]
lea r8, [r8 + rax*4]
movzx edx, byte [r8]
movzx eax, byte [r8 + 1]
mov byte [rcx], al
xor eax, eax
test dl, dl
setne al
add rax, rcx
movzx edx, byte [r8]
movzx ecx, byte [r8 + 2]
mov byte [rax], cl
xor ebx, ebx
cmp dl, 1
seta bl
add rbx, rax
mov byte [rbx], r9b
inc rbx
mov r10d, dword [rbp + 0x80]
jmp 0x18010e2e6
cmp r13d, 9
jne 0x18010b1c3
movzx ecx, byte [r15 + 3]
cmp cl, byte [r12 + 3]
jne 0x18010b3bd
mov eax, ecx
and eax, 0xf
lea rdx, [0x180000000]
or edi, dword [rdx + rax*4 + 0x29b230]
jmp 0x1801091a7
cmp r13d, 0xa
jne 0x18010b1e7
movzx ecx, byte [r12 + 3]
mov eax, ecx
and eax, 0xf
lea rdx, [0x180000000]
or edi, dword [rdx + rax*4 + 0x29b230]
jmp 0x180108d57
mov rax, qword [rsp + 0x60]
lea r14, [0x180000000]
movzx eax, byte [r14 + rax*8 + 0x29ead7]
mov esi, dword [r14 + rax*4 + 0x2a43e0]
mov ecx, esi
mov dword [rbp + 0x78], esi
shr esi, 0x12
and esi, 7
cmp r13d, 0x19
jne 0x18010b2e2
movzx edx, byte [r15 + 3]
mov eax, edx
and eax, 0xf
or ecx, dword [r14 + rax*4 + 0x29b230]
mov edi, ecx
mov dword [rbp + 0x78], ecx
mov r10d, dword [r15 + 4]
cmp dl, 1
jne 0x18010b288
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x18010b26b
xor eax, eax
cmp r10d, 4
mov ecx, 0x40000000
cmovae eax, ecx
or r11d, eax
mov dword [rbp + 0x88], r11d
movzx r14d, byte [r12 + 8]
movzx eax, dl
jmp 0x18010b2a6
mov ecx, 0x80000000
or r11d, ecx
add r10d, 4
mov dword [rbp + 0x88], r11d
movzx r14d, byte [r12 + 8]
mov al, 1
jmp 0x18010b2a6
mov r14d, dword [r12 + 0xc]
shl r14, 0x20
mov eax, dword [r12 + 8]
or r14, rax
mov eax, edx
cmp edx, 4
mov ecx, 4
cmova eax, ecx
mov dword [rbp + 0x80], eax
test r10d, r10d
jne 0x18010c04d
mov eax, r11d
shr eax, 5
test al, 1
jne 0x18010c04d
xor eax, eax
cmp dl, 1
setne al
add eax, 0xa8
and edi, 0x8200000
or eax, edi
mov edi, eax
mov dword [rbp + 0x78], eax
jmp case.0x1801085a1.1
cmp r13d, 0x1a
jne case.default.0x1801085a1
movzx edx, byte [r15 + 3]
test dl, dl
jne 0x18010b2ff
mov eax, 0x34
jmp 0x18010862f
mov rax, rdx
and eax, 0xf
or ecx, dword [r14 + rax*4 + 0x29b230]
mov dword [rbp + 0x78], ecx
mov r14d, dword [r12 + 0xc]
shl r14, 0x20
mov eax, dword [r12 + 8]
or r14, rax
mov eax, edx
cmp edx, 4
mov ecx, 4
cmova eax, ecx
mov dword [rbp + 0x80], eax
jmp 0x1801087cd
cmp r13d, 0x11
jne case.0x1801085a1.61
movzx ecx, byte [r15 + 3]
mov eax, ecx
and eax, 0xf
lea rdx, [0x180000000]
or edi, dword [rdx + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
cmp cl, 1
jne 0x1801087d5
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x1000021
je 0x180108d20
xor eax, eax
cmp esi, 4
mov ecx, 0x40000000
cmovae eax, ecx
or r11d, eax
mov dword [rbp + 0x88], r11d
jmp 0x1801087d5
cmp r13d, 9
jne 0x18010b4b3
mov r10d, dword [r15 + 4]
mov esi, dword [r12 + 4]
movzx ecx, byte [r15 + 3]
cmp cl, byte [r12 + 3]
je 0x18010b3c7
mov eax, 0x35
jmp 0x18010862f
cmp cl, 1
je 0x1801091bc
cmp dword [rsp + 0x60], 0x668
jne 0x18010998f
test esi, esi
je 0x18010b3eb
test r10d, r10d
jne 0x18010998f
movzx eax, byte [r9 + 0x48]
not al
test al, 1
je 0x18010b40f
cmp esi, r10d
jne 0x18010b40f
cmp cl, 4
jb 0x18010b40f
cmp cl, 8
jne 0x18010998f
and edi, dword [rsp + 0x58]
jmp 0x18010b43a
mov eax, r11d
shr eax, 5
test al, 1
jne 0x18010998f
add esi, r10d
mov rax, rcx
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b230]
and edi, 0x8200000
or edi, 0x90
mov r10d, dword [rbp + 0x80]
mov dword [rbp + 0x78], edi
shr edi, 0x15
and edi, 7
mov eax, edi
lea rdi, [0x180000000]
movzx eax, byte [rax + rdi + 0x29ab00]
mov byte [rbx], al
mov eax, 0
setne al
add rax, rbx
mov edx, dword [rbp + 0x78]
or edx, r11d
shr edx, 0x15
or edx, esi
shr edx, 3
cmp edx, 0x80
ja 0x180108897
and edx, 0x7f
movzx ecx, dl
or cl, 0x40
mov byte [rax], cl
xor ecx, ecx
test edx, edx
setne cl
add rcx, rax
and esi, 7
mov edx, dword [rbp + 0x78]
add edx, esi
mov r9d, edx
mov dword [rbp + 0x78], edx
mov eax, r9d
jmp 0x1801097ff
cmp r13d, 0xa
jne case.default.0x1801085a1
movzx ecx, byte [r12 + 3]
mov eax, ecx
and eax, 0xf
lea rdx, [0x180000000]
or edi, dword [rdx + rax*4 + 0x29b230]
mov dword [rbp + 0x78], edi
mov esi, dword [r12 + 4]
mov r8, r15
mov qword [rsp + 0x50], r15
cmp cl, 1
jne 0x1801087d5
mov eax, dword [r12]
jmp 0x18010b372
xor r10d, r10d
jmp 0x18010c04d
cmp r13d, 9
jne 0x18010b548
mov esi, dword [r15 + 4]
mov r10d, dword [r12 + 4]
mov eax, r11d
shr eax, 8
test al, 1
je 0x18010c04d
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx edi, byte [rcx + rax*8 + 0x29ead7]
mov edi, dword [rcx + rdi*4 + 0x2a43e0]
mov dword [rbp + 0x78], edi
mov eax, esi
mov esi, r10d
mov r10d, eax
jmp 0x18010c04d
cmp r13d, 0x11
jne 0x18010b55f
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
cmp r13d, 0xa
jne case.default.0x1801085a1
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
mov eax, dword [rcx + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], eax
mov esi, dword [r12 + 4]
jmp 0x1801087cd
cmp r13d, 9
jne 0x18010b5c2
mov ecx, dword [r15 + 4]
mov eax, dword [r12 + 4]
mov qword [rsp + 0x50], rax
test ecx, ecx
je 0x18010b5e1
test eax, eax
jne case.default.0x1801085a1
movzx edi, dil
add edi, 0x37000
add edi, ecx
jmp 0x18010b7f0
cmp r13d, 2
je 0x18010b604
jmp case.default.0x1801085a1
test r13d, r13d
je 0x18010b5e1
cmp r13d, 1
jne 0x18010b5fa
mov eax, dword [r15 + 4]
mov qword [rsp + 0x50], rax
shr edi, 0xa
movzx eax, dil
mov rdi, qword [rsp + 0x50]
add edi, 0x36000
add edi, eax
jmp 0x18010b7f0
cmp r13d, 2
jne case.default.0x1801085a1
mov eax, 0xdc
mov ecx, 0xd8
cmp byte [r15 + 3], 4
cmove eax, ecx
mov dword [rbp + 0x78], eax
jmp 0x1801087cd
cmp r13d, 2
jne 0x18010b6b1
mov qword [rsp + 0x50], r15
movzx eax, byte [r15 + 3]
cmp al, 4
jne 0x18010b64d
mov rax, qword [rsp + 0x78]
mov eax, dword [rax]
shr eax, 0xc
test al, 1
jne 0x1801087d2
jmp case.default.0x1801085a1
cmp al, 8
jne 0x18010b66e
mov rax, qword [rsp + 0x78]
mov eax, dword [rax]
shr eax, 0xd
test al, 1
je case.default.0x1801085a1
add edi, 4
mov dword [rbp + 0x78], edi
jmp 0x1801087d2
cmp al, 0xa
jne case.default.0x1801085a1
mov rax, qword [rsp + 0x78]
mov eax, dword [rax]
shr eax, 0xb
test al, 1
je case.default.0x1801085a1
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
mov esi, dword [rcx + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], esi
shr esi, 0x12
and esi, 7
jmp 0x1801087d2
cmp r13d, 1
jne case.default.0x1801085a1
mov rdi, qword [rsp + 0x60]
cmp edi, 0xce
jne 0x18010b6d7
mov edi, dword [r15 + 4]
add edi, 0x364c0
jmp 0x18010b7f0
cmp edi, 0xec
jne 0x18010b6ee
mov edi, dword [r15 + 4]
add edi, 0x374d0
jmp 0x18010b7f0
cmp edi, 0xef
jne case.default.0x1801085a1
mov edi, dword [r15 + 4]
add edi, 0x374d8
jmp 0x18010b7f0
cmp r13d, 2
jne case.default.0x1801085a1
and edi, 0xffff1fff
mov dword [rbp + 0x78], edi
mov qword [rsp + 0x50], r15
movzx ecx, byte [r15 + 3]
cmp cl, r13b
jne 0x18010b748
mov rax, qword [rsp + 0x78]
mov eax, dword [rax]
shr eax, 0xb
test al, 1
je case.default.0x1801085a1
add edi, 4
mov dword [rbp + 0x78], edi
jmp 0x1801087d2
mov rdx, qword [rsp + 0x78]
cmp cl, 4
jne 0x18010b75f
mov eax, dword [rdx]
shr eax, 0xc
test al, 1
jne 0x1801087d2
cmp cl, 8
jne case.default.0x1801085a1
mov eax, dword [rdx]
shr eax, 0xd
test al, 1
je case.default.0x1801085a1
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
mov esi, dword [rcx + rax*4 + 0x2a43e0]
and esi, 0xffff1fff
mov dword [rbp + 0x78], esi
shr esi, 0x12
and esi, 7
jmp 0x1801087d2
test r13d, r13d
jne case.0x1801085a1.70
inc edi
jmp 0x18010b7f0
cmp r13d, 1
jne case.default.0x1801085a1
add edi, dword [r15 + 4]
jmp 0x18010b7f0
cmp r13d, 1
jne 0x18010b834
cmp dword [r15 + 4], 0
jne case.default.0x1801085a1
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx edi, byte [rcx + rax*8 + 0x29ead7]
lea rax, [0x180000000]
mov edi, dword [rax + rdi*4 + 0x2a43e0]
mov dword [rbp + 0x78], edi
shr edi, 0x15
and edi, 7
lea rcx, [0x180000000]
movzx eax, byte [rdi + rcx + 0x29ab00]
mov byte [rbx], al
mov eax, 0
setne al
add rbx, rax
mov eax, dword [rbp + 0x78]
shr eax, 0xa
mov byte [rbx], al
movzx eax, byte [rbp + 0x78]
mov byte [rbx + 1], al
add rbx, 2
mov r10d, dword [rbp + 0x80]
jmp 0x18010e2e6
cmp r13d, 2
jne case.default.0x1801085a1
and edi, 0xffff1fff
mov dword [rbp + 0x78], edi
jmp 0x1801087cd
cmp r13d, 0xc9
jne 0x18010b896
mov eax, dword [r12]
and eax, 0xff000fff
xor ecx, ecx
mov r13d, 0x200000
cmp eax, 0x10000161
cmove ecx, r13d
or ecx, edi
mov edi, ecx
mov dword [rbp + 0x78], ecx
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
mov esi, dword [r15 + 4]
jmp 0x18010c048
cmp r13d, 0xca
jne case.default.0x1801085a1
mov rax, qword [rsp + 0x60]
lea r9, [0x180000000]
movzx edx, byte [r9 + rax*8 + 0x29ead7]
mov eax, dword [r12]
and eax, 0xff000fff
xor ecx, ecx
mov r13d, 0x200000
cmp eax, 0x10000161
cmove ecx, r13d
or ecx, dword [r9 + rdx*4 + 0x2a43e0]
mov dword [rbp + 0x78], ecx
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
mov esi, dword [r12 + 4]
jmp 0x1801087cd
cmp r13d, 0xc9
jne 0x18010b94d
mov eax, dword [r12]
and eax, 0xff000fff
xor ecx, ecx
mov r13d, 0x200000
cmp eax, 0x10000161
cmove ecx, r13d
or ecx, edi
mov edi, ecx
mov dword [rbp + 0x78], ecx
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
mov esi, dword [r12 + 4]
mov r10d, dword [r15 + 4]
jmp 0x18010c04d
cmp r13d, 0xca
jne case.default.0x1801085a1
mov eax, dword [r12]
and eax, 0xff000fff
xor ecx, ecx
mov r13d, 0x200000
cmp eax, 0x10000161
cmove ecx, r13d
or ecx, edi
mov dword [rbp + 0x78], ecx
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
mov esi, dword [r12 + 4]
jmp 0x1801087cd
cmp r13d, 9
jne 0x18010b9ea
mov esi, dword [r15 + 4]
mov r10d, dword [r12 + 4]
mov eax, r11d
shr eax, 8
test al, 1
je 0x18010c04d
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
test al, al
je 0x18010c04d
mov edi, dword [rcx + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], edi
mov eax, esi
mov esi, r10d
mov r10d, eax
jmp 0x18010c04d
cmp r13d, 0x11
jne 0x18010ba01
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
mov eax, dword [rcx + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], eax
cmp r13d, 0xa
jne case.default.0x1801085a1
mov esi, dword [r12 + 4]
jmp 0x1801087cd
cmp r13d, 0x11
jne 0x18010ba6b
movzx eax, byte [r15 + 3]
cmp al, 1
je case.default.0x1801085a1
and eax, 0xf
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29b1f0]
mov dword [rbp + 0x78], edi
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
mov rax, qword [rsp + 0x60]
lea r8, [0x180000000]
movzx eax, byte [r8 + rax*8 + 0x29ead7]
mov ecx, dword [r8 + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], ecx
cmp r13d, 0xa
jne case.default.0x1801085a1
movzx eax, byte [r12 + 3]
cmp al, 1
je case.default.0x1801085a1
and eax, 0xf
or ecx, dword [r8 + rax*4 + 0x29b1f0]
mov dword [rbp + 0x78], ecx
mov esi, dword [r12 + 4]
jmp 0x1801087cd
cmp r13d, 9
jne 0x18010bb66
mov esi, dword [r15 + 4]
mov r10d, dword [r12 + 4]
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x8000391
jne 0x18010bb1c
mov eax, dword [r12]
and eax, 0xff000fff
cmp eax, 0x8000391
jne 0x18010bbe8
mov edi, 0x16f
mov dword [rbp + 0x78], edi
mov eax, r11d
shr eax, 8
test al, 1
je 0x18010c04d
mov edi, 0x17f
mov dword [rbp + 0x78], edi
mov eax, esi
mov esi, r10d
mov r10d, eax
jmp 0x18010c04d
cmp eax, 0x10000161
jne 0x18010bbe8
mov eax, dword [r12]
and eax, 0xff000fff
cmp eax, 0x10000161
jne 0x18010bbe8
mov edi, 0x40017e
mov dword [rbp + 0x78], edi
mov eax, r11d
shr eax, 8
test al, 1
je 0x18010c04d
mov edi, 0x2001d6
mov dword [rbp + 0x78], edi
mov eax, esi
mov esi, r10d
mov r10d, eax
jmp 0x18010c04d
cmp r13d, 0x11
jne 0x18010bba6
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x8000391
jne 0x18010bb93
mov dword [rbp + 0x78], 0x16f
jmp 0x1801087d5
cmp eax, 0x10000161
jne 0x18010bbe8
mov dword [rbp + 0x78], 0x40017e
jmp 0x1801087d5
cmp r13d, 0xa
jne 0x18010bbe8
mov esi, dword [r12 + 4]
mov r8, r15
mov qword [rsp + 0x50], r15
mov eax, dword [r12]
and eax, 0xff000fff
cmp eax, 0x8000391
jne 0x18010bbd5
mov dword [rbp + 0x78], 0x17f
jmp 0x1801087d5
cmp eax, 0x10000161
jne 0x18010bbe8
mov dword [rbp + 0x78], 0x2001d6
jmp 0x1801087d5
or edi, dword [rsp + 0x58]
mov esi, dword [r15 + 4]
mov r10d, esi
mov r9d, dword [r15]
mov eax, r9d
and eax, 0xff000fff
xor r8d, r8d
mov edx, 0x200000
cmp eax, 0x10000161
cmove r8d, edx
or r8d, edi
mov edi, r8d
mov dword [rbp + 0x78], r8d
cmp r13d, 9
jne 0x18010bc96
mov eax, dword [r12]
and eax, 0xf07
cmp eax, 1
je 0x18010c048
mov esi, dword [r12 + 4]
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx ecx, byte [rcx + rax*8 + 0x29ead7]
mov eax, dword [r12]
and eax, 0xff000fff
xor edi, edi
cmp eax, 0x10000161
cmove edi, edx
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0x2a43e0]
and r8d, dword [rsp + 0x58]
or edi, r8d
mov dword [rbp + 0x78], edi
cmp r13d, 9
jne 0x180108929
and r9d, 0xf07
cmp r9d, 1
jne case.default.0x1801085a1
jmp 0x18010c04d
cmp r13d, 0x11
jne 0x18010bc31
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
mov eax, dword [r8]
test eax, eax
je 0x18010bccd
and eax, 0xff000fff
cmp eax, 0x10000161
sete cl
cmp dword [r8 + 4], 0
sete al
test al, cl
je case.default.0x1801085a1
and r13d, 0x3f
jmp case.0x1801085a1.73
mov ecx, dword [r8]
test ecx, ecx
je 0x18010bccd
mov eax, ecx
and al, 7
cmp al, 2
jne case.default.0x1801085a1
mov edx, dword [r8 + 4]
cmp edx, 7
jne case.default.0x1801085a1
shr ecx, 3
test cl, 0x1f
mov eax, 0
cmove eax, edx
or eax, dword [r8 + 0xc]
jne case.default.0x1801085a1
and r13d, 0x3f
jmp case.0x1801085a1.73
xor eax, eax
cmp byte [r12 + 3], 8
cmove eax, dword [rsp + 0x58]
or edi, eax
mov eax, dword [r15]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x8000039
cmove ecx, dword [rsp + 0x58]
or ecx, edi
mov edi, ecx
mov dword [rbp + 0x78], ecx
cmp r13d, 9
jne 0x180108b2b
mov esi, dword [r15 + 4]
jmp 0x18010c048
cmp r13d, 9
jne 0x18010bd93
mov eax, dword [r15]
and eax, 0xff000fff
xor edx, edx
mov r13d, 0x200000
cmp eax, 0x10000161
cmove edx, r13d
mov eax, dword [r12]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x10000161
cmove ecx, r13d
or edx, ecx
or edx, edi
mov edi, edx
mov dword [rbp + 0x78], edx
mov esi, dword [r15 + 4]
jmp 0x18010c048
cmp r13d, 0x11
jne case.default.0x1801085a1
mov eax, dword [r15]
and eax, 0xff000fff
xor ecx, ecx
mov r13d, 0x200000
cmp eax, 0x10000161
cmove ecx, r13d
or ecx, edi
mov dword [rbp + 0x78], ecx
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
cmp r13d, 9
jne 0x18010bddb
mov esi, dword [r15 + 4]
jmp 0x18010c048
cmp r13d, 0x11
jne 0x18010bdf2
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
mov rax, qword [rsp + 0x60]
lea r10, [0x180000000]
movzx eax, byte [r10 + rax*8 + 0x29ead7]
mov esi, dword [r10 + rax*4 + 0x2a43e0]
mov edi, esi
mov dword [rbp + 0x78], esi
shr esi, 0x12
and esi, 7
cmp r13d, 0x19
jne case.default.0x1801085a1
mov r14d, dword [r12 + 0xc]
shl r14, 0x20
mov eax, dword [r12 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
mov r10d, dword [r15 + 4]
jmp 0x18010c04d
cmp r13d, 9
je 0x18010bd54
cmp r13d, 0x11
je 0x18010bd9d
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
mov ecx, dword [rcx + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], ecx
mov esi, ecx
shr esi, 0x12
and esi, 7
cmp r13d, 0x19
jne case.default.0x1801085a1
mov eax, dword [r15]
and eax, 0xff000fff
xor edi, edi
mov r13d, 0x200000
cmp eax, 0x10000161
cmove edi, r13d
or edi, ecx
mov dword [rbp + 0x78], edi
jmp 0x18010be24
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
cmp r13d, 0xc9
je 0x18010bd8a
cmp r13d, 0xd1
jmp 0x180108b2f
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
cmp r13d, 0xc9
je 0x18010bd54
cmp r13d, 0xd1
jne case.default.0x1801085a1
mov eax, dword [r15]
and eax, 0xff000fff
xor ecx, ecx
mov r13d, 0x200000
cmp eax, 0x10000161
cmove ecx, r13d
or ecx, edi
mov dword [rbp + 0x78], ecx
mov esi, dword [r15 + 4]
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
mov esi, dword [r15 + 4]
mov r10d, dword [r12 + 4]
cmp r13d, 9
je 0x18010c04d
cmp r13d, 0xd9
jne case.default.0x1801085a1
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
mov ecx, dword [rcx + rax*4 + 0x2a43e0]
mov edi, ecx
mov dword [rbp + 0x78], ecx
mov r10d, esi
mov esi, ecx
shr esi, 0x12
and esi, 7
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
movzx eax, byte [r8 + 8]
or r14, rax
shl r14, 8
movzx eax, byte [r12 + 8]
add r14, rax
mov r14d, r14d
mov al, 2
mov dword [rbp + 0x80], eax
jmp 0x18010c04d
mov rdx, qword [rbp + 0x98]
mov eax, dword [rdx]
and eax, 7
shl eax, 9
add eax, r13d
mov esi, dword [r15 + 4]
mov r10d, dword [r12 + 4]
cmp eax, 9
je 0x18010c04d
cmp eax, 0x6c9
jne case.default.0x1801085a1
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx edi, byte [rcx + rax*8 + 0x29ead7]
mov edi, dword [rcx + rdi*4 + 0x2a43e0]
mov dword [rbp + 0x78], edi
mov r14d, dword [rdx + 0xc]
shl r14, 0x20
movzx eax, byte [rdx + 8]
or r14, rax
shl r14, 8
movzx eax, byte [r8 + 8]
add r14, rax
mov r14d, r14d
mov al, 2
mov dword [rbp + 0x80], eax
jmp 0x18010c04d
movzx r14d, dil
mov al, 1
mov dword [rbp + 0x80], eax
mov edi, 0x10f
mov dword [rbp + 0x78], edi
mov esi, dword [r15 + 4]
cmp r13d, 9
jne 0x18010c11f
mov r10d, dword [r12 + 4]
shr edi, 0x15
and edi, 7
mov eax, edi
lea rdi, [0x180000000]
movzx eax, byte [rax + rdi + 0x29ab00]
mov byte [rbx], al
mov eax, 0
setne al
add rax, rbx
mov edx, dword [rbp + 0x78]
or edx, r11d
shr edx, 0x15
mov ecx, r10d
and ecx, 8
or edx, ecx
shr edx, 2
mov ecx, esi
and ecx, 8
or edx, ecx
shr edx, 1
cmp edx, 0x80
ja 0x180108897
and edx, 0x7f
movzx ecx, dl
or cl, 0x40
mov byte [rax], cl
xor ecx, ecx
test edx, edx
setne cl
add rcx, rax
mov r9d, dword [rbp + 0x78]
mov eax, r9d
shr rax, 8
and eax, 0x1f
lea r8, [rdi + 0x29aac0]
lea r8, [r8 + rax*4]
movzx edx, byte [r8]
movzx eax, byte [r8 + 1]
mov byte [rcx], al
xor eax, eax
test dl, dl
setne al
add rax, rcx
movzx edx, byte [r8]
movzx ecx, byte [r8 + 2]
mov byte [rax], cl
xor ecx, ecx
cmp dl, 1
seta cl
mov byte [rcx + rax], r9b
and sil, 7
shl sil, 3
and r10b, 7
sub r10b, 0x40
add sil, r10b
mov byte [rcx + rax + 1], sil
lea rbx, [rax + 2]
add rbx, rcx
mov r10d, dword [rbp + 0x80]
jmp 0x180109842
cmp r13d, 0x11
jne case.default.0x1801085a1
mov r8, r12
mov qword [rsp + 0x50], r12
jmp 0x1801087d5
and r9d, 0x7f
movzx eax, r9b
or al, 0x40
mov byte [rdx], al
xor ecx, ecx
test r9d, r9d
setne cl
add rcx, rdx
and esi, 7
mov r10d, dword [rbp + 0x78]
mov eax, r10d
shr rax, 8
and eax, 0x1f
lea r9, [rbx + 0x29aac0]
lea r9, [r9 + rax*4]
movzx edx, byte [r9]
movzx eax, byte [r9 + 1]
mov byte [rcx], al
xor eax, eax
test dl, dl
setne al
add rax, rcx
movzx edx, byte [r9]
movzx ecx, byte [r9 + 2]
mov byte [rax], cl
xor ebx, ebx
cmp dl, 1
seta bl
add rbx, rax
mov byte [rbx], r10b
inc rbx
mov r9, qword [rsp + 0x50]
mov rcx, qword [rsp + 0x78]
jmp 0x18010d61f
mov ecx, edi
shr ecx, 6
and ecx, 0x1800000
mov eax, edi
and eax, 0x600000
or ecx, eax
shr ecx, 5
mov eax, edi
and eax, 0x1f00
or ecx, eax
shr ecx, 8
mov eax, r11d
shr eax, 0xa
mov r10d, dword [rbp + 0x80]
test al, 1
je 0x18010c1f6
shl edi, 0x18
or edi, 0x78e0c4
shl ecx, 8
xor edi, ecx
mov dword [rbx], edi
add rbx, 4
jmp 0x18010e2e6
mov byte [rbx], 0xc5
mov eax, ecx
shr eax, 8
xor al, cl
xor al, 0xf9
mov byte [rbx + 1], al
movzx eax, byte [rbp + 0x78]
mov byte [rbx + 2], al
add rbx, 3
jmp 0x18010e2e6
cmp r13d, 9
jne 0x18010c2a9
mov esi, dword [r15 + 4]
mov edx, dword [r12 + 4]
mov eax, dword [r12]
and eax, 0xf07
cmp eax, 1
jne 0x18010c259
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx edi, byte [rcx + rax*8 + 0x29ead7]
mov edi, dword [rcx + rdi*4 + 0x2a43e0]
mov dword [rbp + 0x78], edi
jmp 0x18010e0a3
mov eax, dword [r15]
and eax, 0xf07
cmp eax, 1
jne 0x18010c28b
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx edi, byte [rcx + rax*8 + 0x29ead7]
mov edi, dword [rcx + rdi*4 + 0x2a43e0]
inc edi
mov dword [rbp + 0x78], edi
jmp 0x18010e0a3
mov eax, r11d
shr eax, 8
test al, 1
je 0x18010e0a3
inc edi
mov dword [rbp + 0x78], edi
mov eax, esi
mov esi, edx
mov edx, eax
jmp 0x18010e0a3
cmp r13d, 0x11
jne 0x18010c2c0
mov esi, dword [r15 + 4]
mov r9, r12
mov qword [rsp + 0x50], r12
jmp 0x18010cc62
cmp r13d, 0xa
jne case.default.0x1801085a1
inc edi
mov dword [rbp + 0x78], edi
jmp 0x18010cc55
cmp r13d, 1
jne case.default.0x1801085a1
mov edx, dword [r15 + 4]
mov eax, dword [r15]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x8000039
cmove ecx, dword [rsp + 0x58]
or ecx, edi
mov edi, ecx
mov dword [rbp + 0x78], ecx
jmp 0x18010e0a3
cmp r13d, 2
jne case.default.0x1801085a1
jmp 0x18010cc5a
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0x29af90]
mov dword [rbp + 0x78], edi
cmp r13d, 9
jne case.0x1801085a1.159
mov esi, dword [r12 + 4]
mov edx, dword [r15 + 4]
jmp 0x18010e0a3
cmp r13d, 0xa
jne case.default.0x1801085a1
movzx eax, byte [r12 + 3]
shr rax, 4
lea r9, [0x180000000]
mov ecx, dword [r9 + rax*4 + 0x29af90]
mov eax, dword [r15]
shr eax, 8
and eax, 0x1f
mov eax, dword [r9 + rax*4 + 0x29afd0]
cmp eax, ecx
cmovae ecx, eax
or ecx, edi
mov dword [rbp + 0x78], ecx
jmp 0x18010cc55
cmp r13d, 0xc9
jne 0x18010c3c0
mov edi, 0x2001c5
mov dword [rbp + 0x78], edi
mov esi, dword [r15 + 4]
mov edx, dword [r12 + 4]
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov r10b, 1
jmp 0x18010e0aa
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov al, 1
mov dword [rbp + 0x80], eax
cmp r13d, 0xca
jmp 0x18010cc4f
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0x29af90]
mov dword [rbp + 0x78], edi
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov r10b, 1
mov dword [rbp + 0x80], r10d
cmp r13d, 0xc9
jne 0x18010c3d7
mov esi, dword [r12 + 4]
mov edx, dword [r15 + 4]
jmp 0x18010e0aa
mov ecx, dword [r8]
test ecx, ecx
je 0x18010c46e
mov eax, ecx
and al, 7
cmp al, 2
jne case.default.0x1801085a1
mov edx, dword [r8 + 4]
cmp edx, 7
jne case.default.0x1801085a1
shr ecx, 3
test cl, 0x1f
mov eax, 0
cmove eax, edx
or eax, dword [r8 + 0xc]
jne case.default.0x1801085a1
and r13d, 0x3f
jmp case.0x1801085a1.103
mov eax, dword [r15]
and eax, 0xff000fff
xor edx, edx
cmp eax, 0x8000039
cmove edx, dword [rsp + 0x58]
mov eax, dword [r12]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x8000039
cmove ecx, dword [rsp + 0x58]
or edx, ecx
or edx, edi
mov edi, edx
mov dword [rbp + 0x78], edx
jmp case.0x1801085a1.103
movzx eax, byte [r12 + 3]
test al, al
je 0x18010c4cf
shr rax, 4
lea rcx, [0x180000000]
or edi, dword [rcx + rax*4 + 0x29af90]
jmp 0x18010c552
cmp byte [r15 + 3], 0x20
jne case.0x1801085a1.103
bts edi, 0x1e
jmp 0x18010c552
cmp r13d, 9
jne case.0x1801085a1.106
mov eax, dword [r12]
mov ecx, eax
shr ecx, 0x18
and eax, 0xf07
cmp eax, 1
jne case.0x1801085a1.106
movzx edi, byte [r15 + 3]
movzx eax, cl
or rdi, rax
shr rdi, 4
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
mov edi, dword [rcx + rdi*4 + 0x29af90]
or edi, dword [rcx + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], edi
mov esi, dword [r15 + 4]
jmp 0x18010e09e
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0x29af90]
mov dword [rbp + 0x78], edi
cmp r13d, 9
jne case.0x1801085a1.158
mov esi, dword [r15 + 4]
jmp 0x18010e09e
cmp r13d, 0x11
jne case.default.0x1801085a1
mov esi, dword [r15 + 4]
mov r9, r12
mov qword [rsp + 0x50], r12
jmp 0x18010cc62
cmp r13d, 0x11
jne case.default.0x1801085a1
movzx eax, byte [r15 + 3]
shr rax, 4
lea r9, [0x180000000]
mov ecx, dword [r9 + rax*4 + 0x29af90]
mov eax, dword [r12]
shr eax, 8
and eax, 0x1f
mov eax, dword [r9 + rax*4 + 0x29afd0]
cmp eax, ecx
cmovae ecx, eax
or ecx, edi
mov dword [rbp + 0x78], ecx
mov esi, dword [r15 + 4]
mov r9, r12
mov qword [rsp + 0x50], r12
jmp 0x18010cc62
mov rdx, qword [rbp + 0x98]
lea r9, [rdx + 0x20]
mov qword [rsp + 0x50], r9
mov eax, dword [r15]
and eax, 0xf07
cmp eax, 0x101
jne case.default.0x1801085a1
mov eax, dword [r12]
and eax, 0xf07
cmp eax, 0x101
jne case.default.0x1801085a1
mov eax, dword [r8]
and eax, 0xf07
cmp eax, 0x101
jne case.default.0x1801085a1
mov eax, dword [rdx]
and eax, 0xf07
cmp eax, 0x101
jne case.default.0x1801085a1
mov eax, dword [rdx + 0x10]
and eax, 0xf07
cmp eax, 0x101
jne case.default.0x1801085a1
mov eax, dword [r9]
and al, 7
cmp al, 2
jne case.default.0x1801085a1
mov esi, dword [r12 + 4]
test sil, 3
jne 0x18010c67a
lea eax, [rsi + 1]
cmp dword [r8 + 4], eax
jne 0x18010c67a
lea eax, [rsi + 2]
cmp dword [rdx + 4], eax
jne 0x18010c67a
lea eax, [rsi + 3]
cmp dword [rdx + 0x14], eax
jne 0x18010c67a
shl esi, 7
add esi, dword [r15 + 4]
jmp 0x18010cc62
mov eax, 0x3c
mov rdi, qword [rbp + 0x90]
mov r13, rdx
jmp 0x18010863d
mov eax, dword [r15]
and eax, 0xff000fff
xor edx, edx
cmp eax, 0x8000039
mov r10d, dword [rsp + 0x58]
cmove edx, r10d
mov eax, dword [r12]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x8000039
cmove ecx, r10d
or edx, ecx
or edx, edi
mov edi, edx
mov dword [rbp + 0x78], edx
jmp case.0x1801085a1.111
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0x29af90]
mov dword [rbp + 0x78], edi
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov r10b, 1
mov dword [rbp + 0x80], r10d
cmp r13d, 0xc9
jne 0x18010c718
mov esi, dword [r15 + 4]
mov edx, dword [r12 + 4]
jmp 0x18010e0aa
cmp r13d, 0xd1
jmp 0x18010c568
mov rdx, qword [rbp + 0x98]
mov eax, dword [rdx]
test eax, eax
je case.0x1801085a1.115
and eax, 0xf07
cmp eax, 1
sete cl
cmp dword [rdx + 4], 2
sete al
test al, cl
je case.default.0x1801085a1
mov eax, dword [r15]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x8000039
cmove ecx, dword [rsp + 0x58]
xor eax, eax
cmp byte [r8 + 3], 8
cmove eax, dword [rsp + 0x58]
or ecx, eax
or ecx, edi
mov edi, ecx
mov dword [rbp + 0x78], ecx
jmp case.0x1801085a1.114
mov eax, dword [r15]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x289
cmove ecx, dword [rbp - 0x70]
or edi, ecx
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0x29af90]
mov dword [rbp + 0x78], edi
cmp r13d, 0x49
je 0x18010cd71
cmp r13d, 0x89
jne case.default.0x1801085a1
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov r9, r8
mov qword [rsp + 0x50], r8
jmp 0x18010cc62
cmp r13d, 0x49
jne case.default.0x1801085a1
mov ecx, dword [r15 + 4]
test cl, 1
jne 0x18010c84d
lea eax, [rcx + 1]
cmp eax, dword [r12 + 4]
jne 0x18010c84d
movzx eax, byte [r8 + 3]
shr rax, 4
lea rdx, [0x180000000]
or edi, dword [rdx + rax*4 + 0x29af90]
mov dword [rbp + 0x78], edi
mov esi, dword [r8 + 4]
shl esi, 7
add esi, ecx
mov rdx, qword [rbp + 0x98]
mov eax, dword [rdx]
and eax, 7
cmp eax, 1
jne 0x18010c837
mov edx, dword [rdx + 4]
jmp 0x18010e0a3
cmp eax, 2
jne case.default.0x1801085a1
mov r9, rdx
mov qword [rsp + 0x50], rdx
jmp 0x18010cc62
mov eax, 0x1d
jmp 0x18010862f
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0x29af90]
mov dword [rbp + 0x78], edi
mov rax, qword [rbp + 0x98]
mov ecx, dword [rax]
and ecx, 7
shl ecx, 9
add ecx, r13d
mov r14d, dword [rax + 4]
shl r14d, 4
mov r10b, 1
mov dword [rbp + 0x80], r10d
cmp ecx, 0x249
jne 0x18010c8be
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov edx, dword [r8 + 4]
mov r13, rax
jmp 0x18010e0b1
cmp ecx, 0x289
jmp 0x18010c7bf
mov eax, dword [r15]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x289
cmove ecx, dword [rbp - 0x70]
or ecx, edi
mov edi, ecx
mov dword [rbp + 0x78], ecx
jmp case.0x1801085a1.122
mov eax, dword [r15]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x289
cmove ecx, dword [rbp - 0x70]
or edi, ecx
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0x29af90]
mov dword [rbp + 0x78], edi
mov rdx, qword [rbp + 0x98]
mov ecx, dword [rdx]
and ecx, 7
shl ecx, 9
add ecx, r13d
mov r14d, dword [rdx + 0xc]
shl r14, 0x20
mov eax, dword [rdx + 8]
or r14, rax
mov r10b, 1
mov dword [rbp + 0x80], r10d
cmp ecx, 0x649
jne 0x18010c964
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov edx, dword [r8 + 4]
jmp 0x18010e0aa
cmp ecx, 0x689
jmp 0x18010c7bf
mov eax, dword [r15]
and eax, 0xff000fff
xor edx, edx
cmp eax, 0x8000039
cmove edx, dword [rsp + 0x58]
mov eax, dword [r8]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x8000039
cmove ecx, dword [rsp + 0x58]
or edx, ecx
or edx, edi
mov edi, edx
mov dword [rbp + 0x78], edx
cmp r13d, 0x49
je 0x18010e093
cmp r13d, 0x51
jne case.default.0x1801085a1
mov esi, dword [r8 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov r9, r12
mov qword [rsp + 0x50], r12
jmp 0x18010cc62
cmp r13d, 0x11
jne case.0x1801085a1.128
movzx eax, byte [r15 + 3]
shr rax, 4
lea r9, [0x180000000]
mov ecx, dword [r9 + rax*4 + 0x29af90]
mov eax, dword [r12]
shr eax, 8
and eax, 0x1f
mov eax, dword [r9 + rax*4 + 0x29afd0]
cmp eax, ecx
cmovae ecx, eax
mov rax, qword [rsp + 0x60]
movzx eax, byte [r9 + rax*8 + 0x29ead7]
or ecx, dword [r9 + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], ecx
mov esi, dword [r15 + 4]
mov r9, r12
mov qword [rsp + 0x50], r12
jmp 0x18010cc62
cmp r13d, 0x51
jne case.default.0x1801085a1
movzx ecx, byte [r15 + 3]
movzx eax, byte [r8 + 3]
or rcx, rax
shr rcx, 4
lea r9, [0x180000000]
mov edx, dword [r9 + rcx*4 + 0x29af90]
mov eax, dword [r12]
shr eax, 8
and eax, 0x1f
mov eax, dword [r9 + rax*4 + 0x29afd0]
cmp eax, edx
cmovae edx, eax
or edx, edi
mov dword [rbp + 0x78], edx
mov esi, dword [r8 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov r9, r12
mov qword [rsp + 0x50], r12
jmp 0x18010cc62
mov rdx, qword [rbp + 0x98]
mov ecx, dword [rdx]
and ecx, 7
shl ecx, 9
add ecx, r13d
mov r14d, dword [rdx + 0xc]
shl r14, 0x20
mov eax, dword [rdx + 8]
or r14, rax
mov r10b, 1
mov dword [rbp + 0x80], r10d
cmp ecx, 0x649
jne 0x18010cad0
mov esi, dword [r8 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov edx, dword [r12 + 4]
jmp 0x18010e0aa
cmp ecx, 0x651
jmp 0x18010c9ae
cmp r13d, 9
jne 0x18010cb78
mov eax, dword [r15]
mov ecx, eax
shr ecx, 0x18
and eax, 0xf07
cmp eax, 1
jne 0x18010cb2d
mov rax, qword [rsp + 0x60]
lea rdx, [0x180000000]
movzx eax, byte [rdx + rax*8 + 0x29ead7]
xor edi, edi
cmp cl, 8
cmove edi, dword [rsp + 0x58]
or edi, dword [rdx + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], edi
mov esi, dword [r12 + 4]
mov edx, dword [r15 + 4]
jmp 0x18010e0a3
mov eax, dword [r12]
mov ecx, eax
shr ecx, 0x18
and eax, 0xf07
cmp eax, 1
jne 0x18010cb5a
xor eax, eax
cmp cl, 8
cmove eax, dword [rsp + 0x58]
or eax, edi
mov edi, eax
mov dword [rbp + 0x78], eax
mov esi, dword [r15 + 4]
jmp 0x18010e09e
bt edi, 0x1c
jae 0x18010cba8
and edi, 0xffdfe17e
or edi, 0x40017e
mov dword [rbp + 0x78], edi
mov esi, dword [r15 + 4]
jmp 0x18010e09e
cmp r13d, 0x11
jne 0x18010cba8
bt edi, 0x1c
jae 0x18010c56e
and edi, 0xffdfe17e
or edi, 0x40017e
mov dword [rbp + 0x78], edi
mov esi, dword [r15 + 4]
mov r9, r12
mov qword [rsp + 0x50], r12
jmp 0x18010cc62
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
mov ecx, dword [rcx + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], ecx
cmp r13d, 0xa
jne case.default.0x1801085a1
bt ecx, 0x1c
jae 0x18010cc55
and ecx, 0xffbfe1d6
or ecx, 0x2001d6
mov dword [rbp + 0x78], ecx
jmp 0x18010cc55
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rsi, [0x180000000]
or edx, dword [rsi + rcx*4 + 0x29af90]
mov edi, edx
mov dword [rbp + 0x78], edx
jmp 0x18010cc15
lea rsi, [0x180000000]
cmp r13d, 9
jne 0x18010cc24
mov esi, dword [r15 + 4]
jmp 0x18010e09e
cmp r13d, 0x11
je 0x18010c56e
mov rax, qword [rsp + 0x60]
movzx eax, byte [rsi + rax*8 + 0x29ead7]
and edx, 0x60000000
or edx, dword [rsi + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], edx
cmp r13d, 0xa
jne case.default.0x1801085a1
mov esi, dword [r12 + 4]
mov r9, r15
mov qword [rsp + 0x50], r15
mov ecx, dword [r9]
mov eax, ecx
shr rax, 3
and eax, 0x3ff
lea rdi, [0x180000000]
movzx r13d, byte [rax + rdi + 0x29ab50]
mov dword [rbp - 0x80], r13d
shr rcx, 0x12
and ecx, 7
movzx eax, byte [rcx + rdi + 0x29ab08]
mov byte [rbx], al
xor ecx, ecx
test al, al
setne cl
lea r8, [rcx + rbx]
mov r10, qword [rbp + 0x70]
mov eax, dword [r10 + 0x28]
mov byte [r8], 0x67
test r13d, eax
mov ebx, 0
setne bl
add rbx, r8
mov edx, dword [r9]
mov eax, edx
and eax, 0xf8
cmp eax, 8
jbe 0x18010d3a0
mov edi, dword [r9 + 4]
jmp 0x18010d3a2
cmp r13d, 0x49
jne 0x18010cd23
mov esi, dword [r8 + 4]
mov r8d, esi
mov ecx, dword [r15 + 4]
shl esi, 7
add esi, ecx
mov edx, dword [r12 + 4]
mov eax, r11d
shr eax, 8
mov r10d, dword [rbp + 0x80]
mov r13, qword [rbp + 0x98]
test al, 1
je 0x18010e0b1
or edi, dword [rsp + 0x58]
mov dword [rbp + 0x78], edi
mov esi, edx
shl esi, 7
add esi, ecx
mov edx, r8d
jmp 0x18010e0b1
cmp r13d, 0x51
je 0x18010c9b4
cmp r13d, 0x89
jne case.default.0x1801085a1
or edi, dword [rsp + 0x58]
mov dword [rbp + 0x78], edi
jmp 0x18010c7c5
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rax, [0x180000000]
or edx, dword [rax + rcx*4 + 0x29af90]
mov edi, edx
mov dword [rbp + 0x78], edx
cmp r13d, 0x49
jne 0x18010cd86
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov edx, dword [r8 + 4]
jmp 0x18010e0a3
cmp r13d, 0x89
je 0x18010c7c5
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
and edx, 0x60000000
or edx, dword [rcx + rax*4 + 0x2a43e0]
mov edi, edx
mov dword [rbp + 0x78], edx
jmp case.0x1801085a1.111
cmp r13d, 0x49
je 0x18010ccdc
cmp r13d, 0x51
je 0x18010c9b4
cmp r13d, 0x89
jne 0x18010cde7
or edi, dword [rsp + 0x58]
mov dword [rbp + 0x78], edi
jmp 0x18010c7c5
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx edi, byte [rcx + rax*8 + 0x29ead7]
mov edi, dword [rcx + rdi*4 + 0x2a43e0]
jmp 0x18010c6e5
cmp r13d, 0x49
je 0x18010cd71
cmp r13d, 0x89
je 0x18010c7c5
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx edi, byte [rcx + rax*8 + 0x29ead7]
mov edi, dword [rcx + rdi*4 + 0x2a43e0]
jmp 0x18010c331
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rsi, [0x180000000]
or r10d, dword [rsi + rcx*4 + 0x29af90]
mov edi, r10d
mov dword [rbp + 0x78], r10d
jmp 0x18010ce6f
lea rsi, [0x180000000]
cmp r13d, 0x49
je 0x18010cd71
cmp r13d, 0x89
je 0x18010c7c5
mov rax, qword [rsp + 0x60]
movzx eax, byte [rsi + rax*8 + 0x29ead7]
and r10d, 0x60000000
or r10d, dword [rsi + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], r10d
cmp r13d, 0x4a
jne case.default.0x1801085a1
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r8 + 4]
jmp 0x18010cc5a
mov eax, dword [r12]
and al, 7
xor ecx, ecx
cmp al, 2
cmove ecx, dword [rbp - 0x70]
or edi, ecx
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
mov edx, edi
lea rax, [0x180000000]
or edx, dword [rax + rcx*4 + 0x29af90]
mov edi, edx
mov dword [rbp + 0x78], edx
cmp r13d, 0x49
je 0x18010cd71
cmp r13d, 0x89
je 0x18010c7c5
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
mov esi, edx
and esi, 0x60001000
or esi, dword [rcx + rax*4 + 0x2a43e0]
mov edi, esi
mov dword [rbp + 0x78], esi
shr esi, 0x12
and esi, 7
mov r14d, dword [r8 + 0xc]
shl r14, 0x20
mov eax, dword [r8 + 8]
or r14, rax
mov r10b, 1
mov dword [rbp + 0x80], r10d
cmp r13d, 0xc9
jne 0x18010cf72
mov eax, dword [r15 + 4]
shl eax, 7
add esi, eax
mov edx, dword [r12 + 4]
jmp 0x18010e0aa
cmp r13d, 0xd1
jne case.default.0x1801085a1
mov eax, dword [r15 + 4]
shl eax, 7
add esi, eax
mov r9, r12
mov qword [rsp + 0x50], r12
jmp 0x18010cc62
mov eax, dword [r15]
and eax, 0xff000fff
xor edx, edx
cmp eax, 0x8000039
cmove edx, dword [rsp + 0x58]
mov eax, dword [r12]
and eax, 0xff000fff
xor ecx, ecx
cmp eax, 0x8000039
cmove ecx, dword [rsp + 0x58]
or edx, ecx
or edx, edi
mov edi, edx
mov dword [rbp + 0x78], edx
cmp r13d, 9
jne 0x18010cfdb
mov eax, dword [r15 + 4]
shl eax, 7
add esi, eax
jmp 0x18010e09e
cmp r13d, 0x11
jne case.default.0x1801085a1
mov eax, dword [r15 + 4]
shl eax, 7
add esi, eax
mov r9, r12
mov qword [rsp + 0x50], r12
jmp 0x18010cc62
cmp r13d, 0xd1
jne case.0x1801085a1.146
or edx, dword [rbp - 0x70]
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rax, [0x180000000]
or edx, dword [rax + rcx*4 + 0x29af90]
mov edi, edx
mov dword [rbp + 0x78], edx
mov r10b, 1
jmp 0x18010d058
mov eax, dword [r15]
and eax, 0xff000fff
cmp eax, 0x8000039
je 0x18010d04c
cmp byte [r12 + 3], 8
je 0x18010d04c
xor eax, eax
jmp 0x18010d050
mov eax, dword [rsp + 0x58]
or edi, eax
mov dword [rbp + 0x78], edi
mov r10b, 4
mov r14d, dword [r8 + 0xc]
mov eax, dword [r8 + 8]
shl r14, 0x20
mov dword [rbp + 0x80], r10d
or r14, rax
cmp r13d, 0xc9
jne 0x18010cf72
mov eax, dword [r15 + 4]
shl eax, 7
add esi, eax
mov edx, dword [r12 + 4]
jmp 0x18010e0aa
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rax, [0x180000000]
or edx, dword [rax + rcx*4 + 0x29af90]
mov edi, edx
mov dword [rbp + 0x78], edx
mov rcx, qword [rbp + 0x98]
mov eax, dword [rcx]
and eax, 7
shl eax, 9
add eax, r13d
cmp eax, 0x249
jne 0x18010d0ef
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov edx, dword [r8 + 4]
mov r14d, dword [rcx + 4]
shl r14d, 4
mov r10b, 1
mov r13, rcx
jmp 0x18010e0b1
cmp eax, 0x449
jne 0x18010d128
or edx, dword [rsp + 0x58]
mov dword [rbp + 0x78], edx
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov r9, rcx
mov qword [rsp + 0x50], rcx
mov eax, dword [r8 + 4]
shl eax, 4
mov r14d, eax
mov al, 1
mov dword [rbp + 0x80], eax
jmp 0x18010cc62
cmp eax, 0x289
jne case.default.0x1801085a1
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov r9, r8
mov qword [rsp + 0x50], r8
mov eax, dword [rcx + 4]
shl eax, 4
mov r14d, eax
mov al, 1
mov dword [rbp + 0x80], eax
jmp 0x18010cc62
mov rdx, qword [rbp + 0x98]
mov eax, dword [rdx + 0x10]
and eax, 7
cmp al, 3
jne case.default.0x1801085a1
mov edx, dword [rdx]
mov esi, edx
and esi, 7
shl esi, 9
add esi, r13d
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
movzx eax, byte [r8 + 3]
or rcx, rax
shr rcx, 4
shr rdx, 0x1c
or rcx, rdx
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0x29af90]
mov eax, edi
mov dword [rbp + 0x78], edi
mov rdx, qword [rbp + 0x98]
movzx r14d, byte [rdx + 0x18]
and r14d, 0xf
mov r10b, 1
mov dword [rbp + 0x80], r10d
cmp esi, 0x249
jne 0x18010d1fb
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov edx, dword [r8 + 4]
mov r13, qword [rbp + 0x98]
mov eax, dword [r13 + 4]
shl eax, 4
or r14, rax
jmp 0x18010e0b1
cmp esi, 0x449
jne 0x18010d22d
or eax, dword [rsp + 0x58]
mov dword [rbp + 0x78], eax
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov r9, rdx
mov qword [rsp + 0x50], rdx
mov eax, dword [r8 + 4]
shl eax, 4
or r14, rax
jmp 0x18010cc62
cmp esi, 0x289
jne case.default.0x1801085a1
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov r9, r8
mov qword [rsp + 0x50], r8
mov eax, dword [rdx + 4]
shl eax, 4
or r14, rax
jmp 0x18010cc62
cmp r13d, 0x49
je 0x18010cd71
cmp r13d, 0x11
je 0x18010c56e
cmp r13d, 0xa
jne case.default.0x1801085a1
mov rax, qword [rsp + 0x60]
lea rcx, [0x180000000]
movzx eax, byte [rcx + rax*8 + 0x29ead7]
mov eax, dword [rcx + rax*4 + 0x2a43e0]
mov dword [rbp + 0x78], eax
jmp 0x18010cc55
movzx ecx, byte [r15 + 3]
movzx eax, byte [r12 + 3]
or rcx, rax
shr rcx, 4
lea rax, [0x180000000]
or edi, dword [rax + rcx*4 + 0x29af90]
mov dword [rbp + 0x78], edi
mov rdx, qword [rbp + 0x98]
mov eax, dword [rdx]
and eax, 7
shl eax, 9
add eax, r13d
cmp eax, 0x249
jne 0x18010d31d
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov eax, r11d
shr eax, 8
mov r10b, 1
mov r13, rdx
test r10b, al
jne 0x18010d30c
or edi, dword [rsp + 0x58]
mov dword [rbp + 0x78], edi
mov edx, dword [rdx + 4]
mov r14d, dword [r8 + 4]
shl r14d, 4
jmp 0x18010e0b1
mov edx, dword [r8 + 4]
mov r14d, dword [r13 + 4]
shl r14d, 4
jmp 0x18010e0b1
cmp eax, 0x449
jne 0x18010d356
or edi, dword [rsp + 0x58]
mov dword [rbp + 0x78], edi
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov r9, rdx
mov qword [rsp + 0x50], rdx
mov eax, dword [r8 + 4]
shl eax, 4
mov r14d, eax
mov al, 1
mov dword [rbp + 0x80], eax
jmp 0x18010cc62
cmp eax, 0x289
jne case.default.0x1801085a1
mov esi, dword [r12 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov r9, r8
mov qword [rsp + 0x50], r8
mov eax, dword [rdx + 4]
shl eax, 4
mov r14d, eax
mov al, 1
mov dword [rbp + 0x80], eax
jmp 0x18010cc62
cmp r13d, 1
jne case.default.0x1801085a1
mov esi, dword [r15 + 4]
xor edx, edx
jmp 0x18010e0a3
xor edi, edi
mov eax, edx
and eax, 0x1f00
cmp eax, 0x100
jbe 0x18010d3b6
mov ecx, dword [r9 + 8]
jmp 0x18010d3b8
xor ecx, ecx
mov dword [rsp + 0x68], ecx
mov eax, edx
and eax, 0xe00000
neg eax
sbb edx, edx
and edx, 0x10
or edx, dword [r10 + 0x5c]
add edx, edx
mov eax, ecx
and eax, 0x10
or edx, eax
shl edx, 0xb
mov eax, esi
and eax, 0xf98
or edx, eax
add edx, edx
mov eax, ecx
and eax, 8
or edx, eax
add edx, edx
mov eax, edi
and eax, 8
or edx, eax
shl edx, 2
mov ecx, r11d
and ecx, dword [rbp - 0x70]
mov eax, dword [rbp + 0x78]
or ecx, eax
shr ecx, 8
and ecx, 0x60001f
or edx, ecx
and esi, 7
mov r10, qword [rsp + 0x78]
mov r10d, dword [r10]
mov ecx, r10d
not ecx
and ecx, 0xffc00000
shl ecx, 9
or edx, ecx
test r11d, 0x8c0000
je 0x18010d44a
test r11d, 0xc0000
jne 0x18010e230
mov ecx, r11d
and ecx, 0x800000
or edx, ecx
shr r10d, 0x18
test r10b, 1
je 0x18010d468
test edx, 0x80df8110
jne 0x18010d474
test r11d, 0xc00
jne 0x18010d468
or edx, 0x10
test edx, 0x80df8110
je 0x18010d577
mov r10d, edx
and r10d, 0x8000
shl r10d, 4
or r10d, edx
and r10d, 0xffff78ef
shl r10d, 4
and edx, 0x100
or r10d, edx
shl r10d, 4
mov edx, eax
shr edx, 1
and edx, 0x8300000
mov ecx, eax
and ecx, 0x8000000
or edx, ecx
shr edx, 4
or r10d, edx
xor r10d, 0x87cf062
bt r10d, 0x1c
jae 0x18010d536
mov rcx, qword [rsp + 0x78]
mov edx, dword [rcx + 4]
shr edx, 3
and edx, 0xe
mov dword [rbp - 0x60], edx
je 0x18010d52c
mov ecx, r10d
and ecx, 0x60000000
mov dword [rbp - 0x78], ecx
mov ecx, dword [r9]
shr ecx, 0x15
and ecx, 7
shl edx, cl
bsf ecx, edx
cmp ecx, 4
jae 0x18010d4fb
xor ecx, ecx
jmp 0x18010d50a
add ecx, 0xfffffffc
shl ecx, 0x1d
mov edx, 0x40000000
cmp ecx, edx
ja 0x18010d52c
mov edx, dword [rbp - 0x78]
cmp edx, ecx
cmovb edx, ecx
and r10d, 0x9fffffff
or r10d, edx
bsf ecx, dword [rbp - 0x60]
and eax, 0xffff1fff
shl ecx, 0xd
or eax, ecx
jmp 0x18010d561
mov eax, 0x29
jmp 0x18010862f
mov edx, r10d
shr edx, 0x1d
and edx, 3
mov ecx, eax
shr ecx, 0xd
and ecx, 0x18
add edx, ecx
mov ecx, eax
shr ecx, 0x19
and ecx, 4
add ecx, edx
lea rdx, [0x180000000]
add eax, dword [rdx + rcx*4 + 0x29b010]
mov dword [rbp + 0x78], eax
mov dword [rbx], r10d
movzx eax, byte [rbp + 0x78]
mov byte [rbx + 4], al
add rbx, 5
jmp 0x18010d60d
mov r10d, eax
shr r10d, 1
and r10d, 0x300000
mov ecx, eax
and ecx, dword [rsp + 0x58]
or r10d, ecx
shr r10d, 1
mov ecx, edx
mov r13d, 0x200000
and ecx, r13d
or r10d, ecx
shr r10d, 0xb
mov ecx, r11d
and ecx, 0xfffffc00
shl ecx, 0x15
or r10d, ecx
or r10d, edx
and eax, 0xffff1fff
mov dword [rbp + 0x78], eax
mov r13d, dword [rbp - 0x80]
test r10d, 0x8000807e
je 0x18010d5f1
mov ecx, r10d
and ecx, 0xf
shl eax, 0x18
lea rdx, [0x180000000]
or eax, dword [rdx + rcx*4 + 0x29af50]
movzx ecx, r10w
shl ecx, 8
xor eax, ecx
mov dword [rbx], eax
add rbx, 4
jmp 0x18010d60d
mov byte [rbx], 0xc5
mov eax, r10d
shr eax, 8
xor al, r10b
xor al, 0xf9
mov byte [rbx + 1], al
movzx eax, byte [rbp + 0x78]
mov byte [rbx + 2], al
add rbx, 3
mov rcx, qword [rsp + 0x78]
mov eax, dword [rcx]
shr eax, 0x14
test al, 1
jne 0x18010dc7a
test r13b, 0x42
jne 0x18010db74
test r13b, 1
je 0x18010d775
and edi, 7
mov r8d, dword [r9 + 0xc]
lea edx, [rdi + rsi*8]
cmp edi, 4
je 0x18010d6d3
mov eax, dword [rcx]
shr eax, 0x15
test al, 1
jne 0x18010d6d3
cmp edi, 5
je 0x18010d672
test r8d, r8d
jne 0x18010d672
mov byte [rbx], dl
inc rbx
mov r10d, dword [rbp + 0x80]
mov rdi, qword [rbp + 0x70]
jmp 0x18010d998
mov ecx, dword [rbp + 0x78]
shr ecx, 0xd
and ecx, 7
mov r9d, r8d
sar r9d, cl
lea eax, [r9 + 0x80]
cmp eax, 0xff
ja 0x18010d6b6
mov eax, r9d
shl eax, cl
cmp r8d, eax
jne 0x18010d6b6
add dl, 0x40
mov byte [rbx], dl
mov byte [rbx + 1], r9b
add rbx, 2
mov r10d, dword [rbp + 0x80]
mov rdi, qword [rbp + 0x70]
jmp 0x18010d998
add dl, 0x80
mov byte [rbx], dl
mov dword [rbx + 1], r8d
add rbx, 5
mov r10d, dword [rbp + 0x80]
mov rdi, qword [rbp + 0x70]
jmp 0x18010d998
and edx, 0xf8
or edx, 4
cmp edi, 5
je 0x18010d704
test r8d, r8d
jne 0x18010d704
mov byte [rbx], dl
add dil, 0x20
mov byte [rbx + 1], dil
add rbx, 2
mov r10d, dword [rbp + 0x80]
mov rdi, qword [rbp + 0x70]
jmp 0x18010d998
mov ecx, dword [rbp + 0x78]
shr ecx, 0xd
and ecx, 7
mov r9d, r8d
sar r9d, cl
lea eax, [r9 + 0x80]
cmp eax, 0xff
ja 0x18010d750
mov eax, r9d
shl eax, cl
cmp r8d, eax
jne 0x18010d750
add dl, 0x40
mov byte [rbx], dl
add dil, 0x20
mov byte [rbx + 1], dil
mov byte [rbx + 2], r9b
add rbx, 3
mov r10d, dword [rbp + 0x80]
mov rdi, qword [rbp + 0x70]
jmp 0x18010d998
add dl, 0x80
mov byte [rbx], dl
add dil, 0x20
mov byte [rbx + 1], dil
mov dword [rbx + 2], r8d
add rbx, 6
mov r10d, dword [rbp + 0x80]
mov rdi, qword [rbp + 0x70]
jmp 0x18010d998
mov rdi, qword [rbp + 0x70]
test r13b, 0x30
jne 0x18010dacf
mov edx, dword [r9]
mov eax, dword [r9 + 0xc]
mov dword [rbp - 0x78], eax
mov r10d, edx
and r10d, 0xc000
test byte [rdi + 0x48], 1
je 0x18010d7ca
cmp r10d, 0x8000
je 0x18010d9f0
shl sil, 3
add sil, 5
mov byte [rbx], sil
inc rbx
mov dword [rbx], eax
mov r10d, dword [rbp + 0x80]
add rbx, 4
jmp 0x18010d998
sar eax, 0x1f
mov dword [rsp + 0x68], eax
mov r13d, dword [r9 + 4]
lea rcx, [rdi + 0x30]
mov rax, qword [rcx]
mov rax, qword [rax + 8]
mov qword [rsp + 0x78], rax
test r10d, r10d
jne 0x18010d8f7
cmp rax, 0xffffffffffffffff
jne 0x18010d8b8
cmp r13d, dword [rsp + 0x68]
je 0x18010da13
test r13d, r13d
je 0x18010da13
mov r8d, 4
lea rdx, [rsp + 0x70]
mov rcx, qword [rcx]
call fcn.180106c40
test eax, eax
jne 0x18010862f
shl sil, 3
add sil, 5
mov byte [rbx], sil
inc rbx
mov rax, qword [rdi + 0x90]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x10], ecx
mov rcx, qword [rdi + 0xa8]
sub rcx, qword [rdi + 0x98]
mov rax, qword [rsp + 0x70]
mov qword [rax + 0x18], rcx
mov rax, qword [rsp + 0x70]
mov dword [rax + 8], 0x4040000
mov dword [rax + 0xc], 0x2000
mov rdx, qword [rsp + 0x70]
movzx ecx, bl
sub cl, byte [rdi + 0xa8]
movzx eax, cl
add al, byte [rdx + 0xb]
mov r10d, dword [rbp + 0x80]
add al, r10b
mov byte [rdx + 0xa], al
mov byte [rdx + 0xc], cl
mov rcx, qword [rsp + 0x50]
mov eax, dword [rcx]
shr eax, 3
test al, 0x1f
jne 0x18010d9fa
mov edx, dword [rcx + 4]
shl rdx, 0x20
mov eax, dword [rcx + 0xc]
or rdx, rax
jmp 0x18010d9fe
and edx, 0x1c0000
mov rcx, qword [rsp + 0x60]
cmp ecx, 0x17e
jne 0x18010d8db
cmp r13d, dword [rsp + 0x68]
je 0x18010d8d7
test r13d, r13d
jne 0x18010d8db
mov al, 1
jmp 0x18010d8dd
xor al, al
cmp edx, 0x140000
jae 0x18010da18
test al, al
jne 0x18010da18
lea rcx, [rdi + 0x30]
jmp 0x18010d913
and edx, 0xc000
cmp edx, 0x8000
jne 0x18010da13
cmp rax, 0xffffffffffffffff
je 0x18010d80c
mov rax, qword [rdi + 0x90]
cmp dword [rax], 0
jne 0x18010d80c
mov rax, qword [rax + 0x10]
sub rax, qword [rdi + 0x98]
mov r10d, dword [rbp + 0x80]
movzx ecx, r10b
add rax, qword [rsp + 0x78]
add rcx, 5
add rax, rcx
add rax, rbx
mov qword [rsp + 0x78], rax
mov edx, dword [r9]
mov eax, edx
shr eax, 3
test al, 0x1f
jne 0x18010d96a
mov ecx, dword [r9 + 4]
shl rcx, 0x20
mov eax, dword [r9 + 0xc]
or rcx, rax
jmp 0x18010d96e
movsxd rcx, dword [r9 + 0xc]
sub rcx, qword [rsp + 0x78]
mov eax, 0x80000000
add rax, rcx
mov r9d, 0xffffffff
cmp rax, r9
ja 0x18010d9e2
shl sil, 3
add sil, 5
mov byte [rbx], sil
mov dword [rbx + 1], ecx
add rbx, 5
cmp r10b, 4
movzx eax, r10b
jb 0x18010d9b1
mov dword [rbx], r14d
add rbx, 4
shr r14, 0x20
lea eax, [r10 - 4]
test al, al
je 0x18010e2ea
mov byte [rbx], r14b
inc rbx
shr r14, 8
add al, 0xff
je 0x18010e2ea
mov byte [rbx], r14b
inc rbx
shr r14, 8
add al, 0xff
je 0x18010e2ea
jmp 0x18010988b
and edx, 0xc000
cmp edx, 0x8000
jne 0x18010da13
mov eax, 0x2b
jmp 0x18010862f
movsxd rdx, dword [rcx + 0xc]
mov rax, qword [rsp + 0x70]
mov qword [rax + 0x20], rdx
mov dword [rbx], 0
add rbx, 4
jmp 0x18010d998
mov rcx, qword [rsp + 0x60]
cmp r13d, dword [rsp + 0x68]
je 0x18010daa7
test r13d, r13d
je 0x18010da32
mov eax, 0x2e
jmp 0x18010862f
movzx eax, byte [r8]
cmp al, 0x67
je 0x18010daa7
cmp ecx, 0x17e
jne 0x18010da85
test al, 0x40
je 0x18010daa7
and eax, 0xf7
mov byte [r8], al
cmp eax, 0x40
jne 0x18010daa7
mov edx, 0x40000000
mov ecx, r11d
call fcn.180108190
test al, al
jne 0x18010daa7
inc r8
cmp r8, rbx
je 0x18010da80
nop dword [rax]
movzx eax, byte [r8]
mov byte [r8 - 1], al
inc r8
cmp r8, rbx
jne 0x18010da70
dec rbx
jmp 0x18010daa7
mov rdx, rbx
cmp rbx, r8
je 0x18010daa1
nop dword [rax]
lea rcx, [rdx - 1]
movzx eax, byte [rcx]
mov byte [rdx], al
mov rdx, rcx
cmp rcx, r8
jne 0x18010da90
mov byte [rdx], 0x67
inc rbx
shl sil, 3
add sil, 4
mov byte [rbx], sil
mov byte [rbx + 1], 0x25
add rbx, 2
mov eax, dword [rbp - 0x78]
mov dword [rbx], eax
mov r10d, dword [rbp + 0x80]
add rbx, 4
jmp 0x18010d998
shl sil, 3
add sil, 5
mov byte [rbx], sil
lea rax, [rbx + 1]
mov rbx, rax
test byte [rdi + 0x48], 1
jne 0x18010dd9e
mov edx, dword [r9 + 0xc]
test r13b, 0x10
je 0x18010db62
mov rax, qword [rdi + 0x30]
mov ecx, dword [r9 + 4]
cmp ecx, dword [rax + 0xd8]
jae 0x18010dfd0
mov rax, qword [rax + 0xd0]
mov rdi, qword [rax + rcx*8]
test rdi, rdi
je 0x18010dfd0
mov r10d, dword [rbp + 0x80]
movzx eax, r10b
mov ecx, 0xfffffffc
sub ecx, eax
add edx, ecx
mov rax, qword [rbp + 0x70]
mov rax, qword [rax + 0x90]
cmp qword [rdi + 0x20], rax
jne 0x18010ded5
mov eax, dword [rdi + 0x18]
mov rdi, qword [rbp + 0x70]
add eax, dword [rdi + 0x98]
sub eax, ebx
add eax, edx
mov dword [rbx], eax
add rbx, 4
jmp 0x18010d998
mov dword [rax], edx
mov r10d, dword [rbp + 0x80]
add rbx, 4
jmp 0x18010d998
test r13b, 0x40
jne 0x18010db8f
mov ecx, dword [rsp + 0x68]
cmp ecx, 4
jne 0x18010dc88
lea eax, [rcx + 0x28]
jmp 0x18010862f
movsx r8d, word [r9 + 0xc]
mov edx, r8d
mov eax, r13d
and eax, 3
je 0x18010dc50
cmp eax, 3
jne 0x18010dbd3
test dword [r9], 0x30000
jne 0x18010d9f0
and edi, 7
mov eax, dword [rsp + 0x68]
and eax, 7
lea ecx, [rax + rdi*8]
lea rax, [0x180000000]
movzx eax, byte [rcx + rax + 0x29b0a0]
jmp 0x18010dbf0
test r13b, 2
mov eax, dword [rsp + 0x68]
cmove eax, edi
and eax, 7
lea rcx, [0x180000000]
movzx eax, byte [rax + rcx + 0x29b090]
movzx eax, al
cmp eax, 0xff
je 0x18010d9f0
lea ecx, [rax + rsi*8]
test edx, edx
jne 0x18010dc1f
cmp ecx, 6
je 0x18010dc34
mov byte [rbx], cl
inc rbx
mov r10d, dword [rbp + 0x80]
mov rdi, qword [rbp + 0x70]
jmp 0x18010d998
lea eax, [r8 + 0x80]
cmp eax, 0xff
jbe 0x18010dc34
add cl, 0x80
mov byte [rbx], cl
jmp 0x18010dc61
add cl, 0x40
mov byte [rbx], cl
mov byte [rbx + 1], dl
add rbx, 2
mov r10d, dword [rbp + 0x80]
mov rdi, qword [rbp + 0x70]
jmp 0x18010d998
test r13b, 0x30
jne 0x18010d9f0
or sil, 6
mov byte [rbx], sil
mov word [rbx + 1], r8w
add rbx, 3
mov r10d, dword [rbp + 0x80]
mov rdi, qword [rbp + 0x70]
jmp 0x18010d998
test r13b, 2
je case.default.0x1801085a1
mov ecx, dword [rsp + 0x68]
and ecx, 7
test r13b, 1
je 0x18010dd2d
and edi, 7
mov r8d, dword [r9 + 0xc]
lea esi, [rsi*8 + 4]
movzx eax, word [r9 + 2]
and eax, 3
lea eax, [rcx + rax*8]
lea r9d, [rdi + rax*8]
test r8d, r8d
jne 0x18010dcd7
cmp edi, 5
je 0x18010dcd7
mov byte [rbx], sil
mov byte [rbx + 1], r9b
add rbx, 2
mov r10d, dword [rbp + 0x80]
mov rdi, qword [rbp + 0x70]
jmp 0x18010d998
mov ecx, dword [rbp + 0x78]
shr ecx, 0xd
and ecx, 7
mov edx, r8d
sar edx, cl
lea eax, [rdx + 0x80]
cmp eax, 0xff
ja 0x18010dd1d
mov eax, edx
shl eax, cl
cmp r8d, eax
jne 0x18010dd1d
add sil, 0x40
mov byte [rbx], sil
mov byte [rbx + 1], r9b
mov byte [rbx + 2], dl
add rbx, 3
mov r10d, dword [rbp + 0x80]
mov rdi, qword [rbp + 0x70]
jmp 0x18010d998
add sil, 0x80
mov byte [rbx], sil
mov byte [rbx + 1], r9b
jmp 0x18010d75d
test r13b, 0x30
jne 0x18010dd6d
shl sil, 3
add sil, 4
mov byte [rbx], sil
movzx eax, byte [r9 + 2]
and al, 3
shl al, 3
add al, cl
shl al, 3
add al, 5
mov byte [rbx + 1], al
mov eax, dword [r9 + 0xc]
mov dword [rbx + 2], eax
add rbx, 6
mov r10d, dword [rbp + 0x80]
mov rdi, qword [rbp + 0x70]
jmp 0x18010d998
mov rax, qword [rbp + 0x70]
test byte [rax + 0x48], 1
je 0x18010d9f0
shl sil, 3
add sil, 4
mov byte [rbx], sil
movzx eax, byte [r9 + 2]
and al, 3
shl al, 3
add al, cl
shl al, 3
add al, 5
mov byte [rbx + 1], al
add rbx, 2
mov r9, qword [rbp + 0x70]
mov rdx, qword [r9 + 0x30]
lea rcx, [rdx + 0xe0]
mov eax, dword [rcx + 0xc]
sub eax, dword [rcx + 8]
cmp eax, 1
jae 0x18010ddd7
add rdx, 0x40
mov r9d, 1
lea r8d, [r9 + 7]
call fcn.1801101c0
test eax, eax
jne 0x18010df3e
mov r9, qword [rbp + 0x70]
mov rax, qword [rsp + 0x50]
movsxd rsi, dword [rax + 0xc]
mov rcx, qword [r9 + 0x30]
test r13b, 0x10
je 0x18010dfda
mov edx, dword [rax + 4]
cmp edx, dword [rcx + 0xd8]
jae 0x18010dfd0
mov rax, qword [rcx + 0xd0]
mov rdi, qword [rax + rdx*8]
test rdi, rdi
je 0x18010dfd0
mov r8d, 3
lea rdx, [rsp + 0x70]
call fcn.180106c40
test eax, eax
jne 0x18010862f
mov r9, qword [rbp + 0x70]
mov rax, qword [r9 + 0x90]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x10], ecx
mov rcx, qword [r9 + 0xa8]
sub rcx, qword [r9 + 0x98]
mov rax, qword [rsp + 0x70]
mov qword [rax + 0x18], rcx
mov rax, qword [rsp + 0x70]
mov dword [rax + 8], 0x4040001
mov dword [rax + 0xc], 0x2000
mov rdx, qword [rsp + 0x70]
movzx ecx, bl
sub cl, byte [r9 + 0xa8]
movzx eax, cl
add al, byte [rdx + 0xb]
mov r10d, dword [rbp + 0x80]
add al, r10b
mov byte [rdx + 0xa], al
mov byte [rdx + 0xc], cl
mov rax, qword [rsp + 0x70]
mov qword [rax + 0x20], rsi
cmp qword [rdi + 0x20], 0
je 0x18010deca
mov rcx, qword [rsp + 0x70]
mov rax, qword [rdi + 0x18]
add qword [rcx + 0x20], rax
mov rax, qword [rdi + 0x20]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x14], ecx
mov rdi, r9
mov dword [rbx], 0
add rbx, 4
jmp 0x18010d998
movzx eax, r10b
mov edx, 0xfffffffc
sub edx, eax
mov r13b, 4
mov r9, rbx
mov r10, qword [rbp + 0x70]
sub r9, qword [r10 + 0x98]
movzx esi, r13b
mov word [rbp - 0x68], 0
mov byte [rbp - 0x66], r13b
mov byte [rbp - 0x65], r13b
mov byte [rbp - 0x64], 0
movzx eax, r13b
shl al, 3
mov byte [rbp - 0x63], al
mov word [rbp - 0x62], 0
mov rax, qword [r10 + 0x90]
mov r8d, dword [rax]
movsxd rax, edx
lea rcx, [rbp - 0x68]
mov qword [rsp + 0x28], rcx
mov qword [rsp + 0x20], rax
mov rdx, rdi
mov rdi, r10
mov rcx, qword [r10 + 0x30]
call fcn.1801067f0
mov rcx, rax
test rax, rax
jne 0x18010df48
mov eax, 1
jmp 0x18010862f
mov rax, qword [rsp + 0x70]
test rax, rax
je 0x18010df57
mov eax, dword [rax]
mov dword [rcx + 0xc], eax
mov r8, rsi
xor edx, edx
mov rcx, rbx
call fcn.18020c900
add rbx, rsi
mov r10d, dword [rbp + 0x80]
movzx eax, r10b
cmp r10b, 4
jb 0x18010df87
mov dword [rbx], r14d
add rbx, 4
shr r14, 0x20
lea eax, [r10 - 4]
test al, al
je 0x18010e2ed
mov byte [rbx], r14b
inc rbx
shr r14, 8
add al, 0xff
je 0x18010e2ed
mov byte [rbx], r14b
inc rbx
shr r14, 8
add al, 0xff
je 0x18010e2ed
mov byte [rbx], r14b
inc rbx
cmp al, 1
je 0x18010e2ed
shr r14, 8
mov byte [rbx], r14b
inc rbx
jmp 0x18010e2ed
mov eax, ntohs
jmp 0x18010862f
mov r8d, 3
lea rdx, [rsp + 0x70]
call fcn.180106c40
test eax, eax
jne 0x18010862f
mov rdi, qword [rbp + 0x70]
mov rax, qword [rdi + 0x90]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x10], ecx
mov rax, qword [rdi + 0x90]
mov ecx, dword [rax]
mov rax, qword [rsp + 0x70]
mov dword [rax + 0x14], ecx
mov rax, qword [rsp + 0x70]
mov dword [rax + 8], 0x4040001
mov dword [rax + 0xc], 0x2000
mov rdx, qword [rsp + 0x70]
movzx ecx, bl
sub cl, byte [rdi + 0xa8]
movzx eax, cl
add al, byte [rdx + 0xb]
mov r10d, dword [rbp + 0x80]
add al, r10b
mov byte [rdx + 0xa], al
mov byte [rdx + 0xc], cl
mov rdx, qword [rdi + 0xa8]
sub rdx, qword [rdi + 0x98]
mov rax, qword [rsp + 0x70]
mov qword [rax + 0x18], rdx
mov r8, qword [rsp + 0x70]
movzx ecx, byte [r8 + 0xa]
add rcx, rdx
add rcx, rsi
mov qword [r8 + 0x20], rcx
mov dword [rbx], 0
add rbx, 4
jmp 0x18010d998
cmp r13d, 0x49
jne case.default.0x1801085a1
mov esi, dword [r8 + 4]
shl esi, 7
add esi, dword [r15 + 4]
mov edx, dword [r12 + 4]
mov r10d, dword [rbp + 0x80]
mov r13, qword [rbp + 0x98]
mov r8d, dword [r9 + 0x5c]
shl r8d, 0xc
mov eax, esi
and eax, 0xf98
or r8d, eax
shl r8d, 2
mov eax, edx
and eax, 0x18
or r8d, eax
shl r8d, 2
mov eax, r11d
and eax, dword [rbp - 0x70]
or eax, edi
shr eax, 8
and eax, 0x60001f
or r8d, eax
and esi, 7
test r11d, 0x8c0000
je 0x18010e165
mov eax, r11d
and eax, 0x800000
or r8d, eax
test r11d, 0xc0000
je 0x18010e165
mov eax, r8d
and eax, 0x600000
cmp eax, 0x400000
mov rax, qword [rsp + 0x78]
je 0x18010e124
test byte [rax + 4], 0x70
jne 0x18010e237
mov ecx, dword [rax + 4]
mov eax, r11d
shr eax, 0x12
test al, 1
je 0x18010e14d
shr ecx, 2
test cl, 1
je 0x18010e237
mov eax, r8d
xor eax, r11d
and eax, 0x600000
xor r8d, eax
jmp 0x18010e160
shr ecx, 3
test cl, 1
je 0x18010e237
and r8d, 0xff9fffff
bts r8d, 0x14
mov rax, qword [rsp + 0x78]
test byte [rax + 3], 1
je 0x18010e186
test r8d, 0xd78150
jne 0x18010e193
test r11d, 0xc00
jne 0x18010e186
or r8d, 0x10
test r8d, 0xd78150
je 0x18010e248
mov ecx, r8d
and ecx, 0x8000
shl ecx, 4
or ecx, r8d
and ecx, 0xffff78ef
shl ecx, 4
and r8d, 0x100
or ecx, r8d
shl ecx, 4
mov eax, edi
shr eax, 1
and eax, 0x8300000
and edi, dword [rsp + 0x58]
or eax, edi
shr eax, 4
or ecx, eax
xor ecx, 0x87cf062
mov dword [rbx], ecx
movzx eax, byte [rbp + 0x78]
mov byte [rbx + 4], al
and dl, 7
shl sil, 3
sub dl, 0x40
add dl, sil
mov byte [rbx + 5], dl
add rbx, 6
test r10b, r10b
je 0x18010e2e6
mov byte [rbx], r14b
lea rax, [rbx + 1]
mov rbx, rax
mov rdi, qword [rbp + 0x70]
cmp r10b, 1
je 0x18010e2ea
shr r14, 8
mov byte [rax], r14b
shr r14, 8
mov byte [rax + 1], r14b
shr r14, 8
mov byte [rax + 2], r14b
lea rbx, [rax + 3]
jmp 0x18010e2ea
mov r13, qword [rbp + 0x98]
mov eax, 0x2a
mov rdi, qword [rbp + 0x90]
jmp 0x18010863d
mov ecx, edi
shr ecx, 1
and ecx, 0x300000
mov eax, edi
and eax, dword [rsp + 0x58]
or ecx, eax
shr ecx, 1
mov eax, r8d
mov r13d, 0x200000
and eax, r13d
or ecx, eax
shr ecx, 0xb
mov eax, r11d
and eax, 0xfffffc00
shl eax, 0x15
or ecx, eax
or ecx, r8d
and dl, 7
mov eax, ecx
shl sil, 3
sub sil, 0x40
add sil, dl
test ecx, 0x8000803e
je 0x18010e2c1
and eax, 0xf
shl edi, 0x18
lea r8, [0x180000000]
or edi, dword [r8 + rax*4 + 0x29af50]
movzx eax, cx
shl eax, 8
xor edi, eax
mov dword [rbx], edi
mov byte [rbx + 4], sil
add rbx, 5
jmp 0x18010e1ef
mov byte [rbx], 0xc5
shr eax, 8
xor al, cl
xor al, 0xf9
mov byte [rbx + 1], al
movzx eax, byte [rbp + 0x78]
mov byte [rbx + 2], al
mov byte [rbx + 3], sil
add rbx, 4
test r10b, r10b
jne 0x18010e1f8
mov rdi, qword [rbp + 0x70]
xor r13b, r13b
mov edx, dword [rbp + 0x88]
test dl, 1
je 0x18010e347
cmp qword [rdi + 0x38], 0
je 0x18010e347
movzx eax, r10b
movzx ecx, r13b
mov qword [rsp + 0x48], rbx
mov dword [rsp + 0x40], eax
mov dword [rsp + 0x38], ecx
mov rax, qword [rbp + 0x98]
mov qword [rsp + 0x30], rax
mov rdi, qword [rbp + 0x90]
mov qword [rsp + 0x28], rdi
mov qword [rsp + 0x20], r12
mov r9, r15
mov r8d, edx
mov edx, dword [rsp + 0x60]
mov rdi, qword [rbp + 0x70]
mov rcx, rdi
call fcn.180113d80
mov qword [rdi + 0x58], 0
mov dword [rdi + 0x54], 0
mov qword [rdi + 0x60], 0
mov rdx, qword [rdi + 0x90]
mov rcx, rbx
sub rcx, qword [rdi + 0x98]
mov qword [rdi + 0xa8], rbx
cmp qword [rdx + 0x50], rcx
cmovae rcx, qword [rdx + 0x50]
mov qword [rdx + 0x50], rcx
xor eax, eax
jmp 0x180108668